示例#1
0
        public TownInvasion(InvasionTowns town, TownMonsterType monster, TownChampionType champion, DateTime time)
        {
            _Spawned = new List <Mobile>();

            _InvasionTown     = town;
            _TownMonsterType  = monster;
            _TownChampionType = champion;
            _StartTime        = time;
        }
示例#2
0
        public void OnStart()
        {
            if (!IsRunning)
            {
                InvasionTowns invading = InvasionTown;

                switch (invading)
                {
                case InvasionTowns.Britain:
                {
                    Top         = new Point3D(1384, 1453, 10);
                    Bottom      = new Point3D(1397, 1742, 0);
                    MinSpawnZ   = 0;       //Not sure about this one - don't want them in the tunnels
                    MaxSpawnZ   = 10;
                    SpawnMap    = Map.Felucca;
                    TownInvaded = "Britain";
                    break;
                }

                case InvasionTowns.BuccaneersDen:
                {
                    Top         = new Point3D(2608, 2060, 0);
                    Bottom      = new Point3D(2824, 2296, 0);
                    MinSpawnZ   = 50;       //Not sure about this one - don't want them in the tunnels
                    MaxSpawnZ   = 61;
                    SpawnMap    = Map.Felucca;
                    TownInvaded = "Buccaneer's Den";
                    break;
                }

                case InvasionTowns.Cove:
                {
                    Top         = new Point3D(2213, 1148, 0);
                    Bottom      = new Point3D(2284, 1233, 0);
                    MinSpawnZ   = 50;       //shouldn't this be 0?
                    MaxSpawnZ   = 61;
                    SpawnMap    = Map.Felucca;
                    TownInvaded = "Cove";
                    break;
                }

                case InvasionTowns.Delucia:
                {
                    Top         = new Point3D(5171, 3980, 41);
                    Bottom      = new Point3D(5300, 4040, 39);
                    MinSpawnZ   = 29;
                    MaxSpawnZ   = 32;
                    SpawnMap    = Map.Felucca;
                    TownInvaded = "Delucia";
                    break;
                }

                case InvasionTowns.Jhelom:
                {
                    Top         = new Point3D(1304, 3682, 0);
                    Bottom      = new Point3D(1465, 3877, 0);
                    MinSpawnZ   = 50;
                    MaxSpawnZ   = 61;
                    SpawnMap    = Map.Felucca;
                    TownInvaded = "Jhelom";
                    break;
                }

                case InvasionTowns.Minoc:
                {
                    Top         = new Point3D(2443, 420, 15);
                    Bottom      = new Point3D(2520, 539, 0);
                    MinSpawnZ   = 10;
                    MaxSpawnZ   = 16;
                    SpawnMap    = Map.Felucca;
                    TownInvaded = "Minoc";
                    break;
                }

                case InvasionTowns.Moonglow:
                {
                    Top         = new Point3D(4394, 1058, 30);
                    Bottom      = new Point3D(4481, 1173, 0);
                    MinSpawnZ   = 50;
                    MaxSpawnZ   = 61;
                    SpawnMap    = Map.Felucca;
                    TownInvaded = "Moonglow";
                    break;
                }

                case InvasionTowns.Nujel:
                {
                    Top         = new Point3D(3665, 1189, 0);
                    Bottom      = new Point3D(3774, 1357, 0);
                    MinSpawnZ   = 50;
                    MaxSpawnZ   = 61;
                    SpawnMap    = Map.Felucca;
                    TownInvaded = "Nujel'm";
                    break;
                }

                case InvasionTowns.Ocllo:
                {
                    Top         = new Point3D(3617, 2482, 0);
                    Bottom      = new Point3D(3712, 2630, 20);
                    MinSpawnZ   = 5;
                    MaxSpawnZ   = 21;
                    SpawnMap    = Map.Felucca;
                    TownInvaded = "Ocllo";
                    break;
                }

                case InvasionTowns.Papua:
                {
                    Top         = new Point3D(5644, 3112, -15);
                    Bottom      = new Point3D(5826, 3315, 0);
                    MinSpawnZ   = 50;
                    MaxSpawnZ   = 61;
                    SpawnMap    = Map.Felucca;
                    TownInvaded = "Papua";
                    break;
                }

                case InvasionTowns.SkaraBrae:
                {
                    Top         = new Point3D(577, 2131, -90);
                    Bottom      = new Point3D(634, 2234, -90);
                    MinSpawnZ   = 25;
                    MaxSpawnZ   = 65;
                    SpawnMap    = Map.Felucca;
                    TownInvaded = "Skara Brae";
                    break;
                }

                case InvasionTowns.Yew:
                {
                    Top         = new Point3D(452, 928, 0);
                    Bottom      = new Point3D(669, 1104, 0);
                    MinSpawnZ   = 50;
                    MaxSpawnZ   = 61;
                    SpawnMap    = Map.Felucca;
                    TownInvaded = "Yew";
                    break;
                }

                case InvasionTowns.Vesper:
                {
                    Top         = new Point3D(2835, 656, 0);
                    Bottom      = new Point3D(2940, 988, 0);
                    MinSpawnZ   = 50;
                    MaxSpawnZ   = 61;
                    SpawnMap    = Map.Felucca;
                    TownInvaded = "Vesper";
                    break;
                }
                }

                foreach (Region r in Region.Regions)
                {
                    if (r.IsPartOf <GuardedRegion>() && r.Name == TownInvaded)
                    {
                        WasDisabledRegion = ((GuardedRegion)r).Disabled;

                        ((GuardedRegion)r).Disabled = true;
                    }
                }

                Spawn();
            }
        }
示例#3
0
        public override void OnResponse(NetState sender, RelayInfo info)
        {
            Mobile from = sender.Mobile;

            if (info.ButtonID == 1)
            {
                string   time = info.GetTextEntry(5).Text;
                DateTime timeToStart;

                DateTime.TryParse(time, out timeToStart);

                if (timeToStart.Equals(DateTime.MinValue))
                {
                    from.SendMessage("You entered an invalid date. Please follow the pattern.");
                    return;
                }

                if (timeToStart < DateTime.UtcNow)
                {
                    from.SendMessage("You must pick a time in the future!");
                    from.SendMessage("Time is {0}, you picked {1}", DateTime.UtcNow, timeToStart);
                    return;
                }

                if (info.IsSwitched(0))
                {
                    SelectedTown    = (InvasionTowns)Utility.Random(0, Enum.GetNames(typeof(InvasionTowns)).Length);
                    SelectedMonster = (TownMonsterType)Utility.Random(0, Enum.GetNames(typeof(TownMonsterType)).Length);
                    SelectedChamp   = (TownChampionType)Utility.Random(0, Enum.GetNames(typeof(TownChampionType)).Length);
                }
                else
                {
                    if (info.IsSwitched(13))
                    {
                        SelectedTown = (InvasionTowns)Utility.Random(0, Enum.GetNames(typeof(InvasionTowns)).Length);
                    }
                    else
                    {
                        for (int i = 100; i < 200; i++)
                        {
                            if (info.IsSwitched(i))
                            {
                                SelectedTown = (InvasionTowns)i - 100;
                                break;
                            }
                        }
                    }

                    for (int i = 200; i < 300; i++)
                    {
                        if (info.IsSwitched(i))
                        {
                            SelectedMonster = (TownMonsterType)i - 200;
                            break;
                        }
                    }

                    for (int i = 300; i < 400; i++)
                    {
                        if (info.IsSwitched(i))
                        {
                            SelectedChamp = (TownChampionType)i - 300;
                            break;
                        }
                    }
                }

                from.SendMessage("You have scheduled an invasion for {0} at {1}", SelectedTown, timeToStart);

                new TownInvasion(SelectedTown, SelectedMonster, SelectedChamp, timeToStart);
            }
        }
        public void OnStart()
        {
            if (!IsRunning)
            {
                InvasionTowns invading = InvasionTown;

                switch (invading)
                {
                case InvasionTowns.Navarra:
                {
                    Top         = new Point3D(2276, 935, 0);
                    Bottom      = new Point3D(2508, 1061, 0);
                    MinSpawnZ   = 0;   //Not sure about this one - don't want them in the tunnels
                    MaxSpawnZ   = 61;
                    SpawnMap    = Map.Felucca;
                    TownInvaded = "Navarra";
                    break;
                }

                case InvasionTowns.Segovia:
                {
                    Top         = new Point3D(1814, 1569, 5);
                    Bottom      = new Point3D(2060, 1539, 5);
                    MinSpawnZ   = 50;   //shouldn't this be 0?
                    MaxSpawnZ   = 61;
                    SpawnMap    = Map.Felucca;
                    TownInvaded = "Segovia";
                    break;
                }

                case InvasionTowns.Lisboa:
                {
                    Top         = new Point3D(636, 1963, 0);
                    Bottom      = new Point3D(726, 2095, 0);
                    MinSpawnZ   = 0;
                    MaxSpawnZ   = 32;
                    SpawnMap    = Map.Felucca;
                    TownInvaded = "Lisboa";
                    break;
                }

                case InvasionTowns.Valencia:
                {
                    Top         = new Point3D(3260, 2027, 0);
                    Bottom      = new Point3D(3700, 2165, 0);
                    MinSpawnZ   = 0;
                    MaxSpawnZ   = 61;
                    SpawnMap    = Map.Felucca;
                    TownInvaded = "Valencia";
                    break;
                }

                case InvasionTowns.Granada:
                {
                    Top         = new Point3D(2596, 2845, 10);
                    Bottom      = new Point3D(2702, 2999, 12);
                    MinSpawnZ   = 0;
                    MaxSpawnZ   = 50;
                    SpawnMap    = Map.Felucca;
                    TownInvaded = "Granada";
                    break;
                }

                    /* case InvasionTowns.Moonglow:
                     * {
                     *   Top = new Point3D(4394, 1058, 30);
                     *   Bottom = new Point3D(4481, 1173, 0);
                     *   MinSpawnZ = 50;
                     *   MaxSpawnZ = 61;
                     *   SpawnMap = Map.Felucca;
                     *   TownInvaded = "Moonglow";
                     *   break;
                     * }
                     * case InvasionTowns.Nujel:
                     * {
                     *   Top = new Point3D(3665, 1189, 0);
                     *   Bottom = new Point3D(3774, 1357, 0);
                     *   MinSpawnZ = 50;
                     *   MaxSpawnZ = 61;
                     *   SpawnMap = Map.Felucca;
                     *   TownInvaded = "Nujel'm";
                     *   break;
                     * }
                     * case InvasionTowns.Ocllo:
                     * {
                     *   Top = new Point3D(3617, 2482, 0);
                     *   Bottom = new Point3D(3712, 2630, 20);
                     *   MinSpawnZ = 5;
                     *   MaxSpawnZ = 21;
                     *   SpawnMap = Map.Felucca;
                     *   TownInvaded = "Ocllo";
                     *   break;
                     * }
                     * case InvasionTowns.Papua:
                     * {
                     *   Top = new Point3D(5644, 3112, -15);
                     *   Bottom = new Point3D(5826, 3315, 0);
                     *   MinSpawnZ = 50;
                     *   MaxSpawnZ = 61;
                     *   SpawnMap = Map.Felucca;
                     *   TownInvaded = "Papua";
                     *   break;
                     * }
                     * case InvasionTowns.SkaraBrae:
                     * {
                     *   Top = new Point3D(577, 2131, -90);
                     *   Bottom = new Point3D(634, 2234, -90);
                     *   MinSpawnZ = 25;
                     *   MaxSpawnZ = 65;
                     *   SpawnMap = Map.Felucca;
                     *   TownInvaded = "Skara Brae";
                     *   break;
                     * }
                     * case InvasionTowns.Yew:
                     * {
                     *   Top = new Point3D(452, 928, 0);
                     *   Bottom = new Point3D(669, 1104, 0);
                     *   MinSpawnZ = 50;
                     *   MaxSpawnZ = 61;
                     *   SpawnMap = Map.Felucca;
                     *   TownInvaded = "Yew";
                     *   break;
                     * }
                     * case InvasionTowns.Vesper:
                     * {
                     *   Top = new Point3D(2835, 656, 0);
                     *   Bottom = new Point3D(2940, 988, 0);
                     *   MinSpawnZ = 50;
                     *   MaxSpawnZ = 61;
                     *   SpawnMap = Map.Felucca;
                     *   TownInvaded = "Vesper";
                     *   break;
                     * }*/
                }

                foreach (Region r in Region.Regions)
                {
                    if (r is GuardedRegion && r.Name == TownInvaded)
                    {
                        WasDisabledRegion = ((GuardedRegion)r).Disabled;

                        ((GuardedRegion)r).Disabled = true;
                    }
                }

                Spawn();
            }
        }
        public void OnStart()
        {
            if (!IsRunning)
            {
                InvasionTowns invading = InvasionTown;

                switch (invading)
                {
                case InvasionTowns.Monitor:
                {
                    Top         = new Point3D(307, 1416, 0);
                    Bottom      = new Point3D(393, 1484, 0);
                    MinSpawnZ   = 0;
                    MaxSpawnZ   = 0;
                    SpawnMap    = Map.SerpentIsle;
                    TownInvaded = "Monitor";
                    break;
                }

                case InvasionTowns.Fawn:
                {
                    Top         = new Point3D(349, 935, 0);
                    Bottom      = new Point3D(455, 1006, 0);
                    MinSpawnZ   = 0;
                    MaxSpawnZ   = 0;
                    SpawnMap    = Map.SerpentIsle;
                    TownInvaded = "Fawn";
                    break;
                }

                case InvasionTowns.SleepingBull:
                {
                    Top         = new Point3D(538, 1178, 0);
                    Bottom      = new Point3D(577, 1216, 0);
                    MinSpawnZ   = 0;
                    MaxSpawnZ   = 0;
                    SpawnMap    = Map.SerpentIsle;
                    TownInvaded = "Sleeping Bull";
                    break;
                }

                case InvasionTowns.Moonshade:
                {
                    Top         = new Point3D(1122, 960, 0);
                    Bottom      = new Point3D(1191, 1060, 0);
                    MinSpawnZ   = 0;
                    MaxSpawnZ   = 0;
                    SpawnMap    = Map.SerpentIsle;
                    TownInvaded = "Moonshade";
                    break;
                }
                    //case InvasionTowns.BuccaneersDen:
                    //{
                    //    Top = new Point3D(2608, 2060, 0);
                    //    Bottom = new Point3D(2824, 2296, 0);
                    //    MinSpawnZ = 50; //Not sure about this one - don't want them in the tunnels
                    //    MaxSpawnZ = 61;
                    //    SpawnMap = Map.Felucca;
                    //    TownInvaded = "Buccaneer's Den";
                    //    break;
                    //}
                    //case InvasionTowns.Cove:
                    //{
                    //    Top = new Point3D(2213, 1148, 0);
                    //    Bottom = new Point3D(2284, 1233, 0);
                    //    MinSpawnZ = 50; //shouldn't this be 0?
                    //    MaxSpawnZ = 61;
                    //    SpawnMap = Map.Felucca;
                    //    TownInvaded = "Cove";
                    //    break;
                    //}
                    //case InvasionTowns.Delucia:
                    //{
                    //    Top = new Point3D(5171, 3980, 41);
                    //    Bottom = new Point3D(5300, 4040, 39);
                    //    MinSpawnZ = 29;
                    //    MaxSpawnZ = 32;
                    //    SpawnMap = Map.Felucca;
                    //    TownInvaded = "Delucia";
                    //    break;
                    //}
                    //case InvasionTowns.Jhelom:
                    //{
                    //    Top = new Point3D(1304, 3682, 0);
                    //    Bottom = new Point3D(1465, 3877, 0);
                    //    MinSpawnZ = 50;
                    //    MaxSpawnZ = 61;
                    //    SpawnMap = Map.Felucca;
                    //    TownInvaded = "Jhelom";
                    //    break;
                    //}
                    //case InvasionTowns.Minoc:
                    //{
                    //    Top = new Point3D(2443, 420, 15);
                    //    Bottom = new Point3D(2520, 539, 0);
                    //    MinSpawnZ = 10;
                    //    MaxSpawnZ = 16;
                    //    SpawnMap = Map.Felucca;
                    //    TownInvaded = "Minoc";
                    //    break;
                    //}
                    //case InvasionTowns.Moonglow:
                    //{
                    //    Top = new Point3D(4394, 1058, 30);
                    //    Bottom = new Point3D(4481, 1173, 0);
                    //    MinSpawnZ = 50;
                    //    MaxSpawnZ = 61;
                    //    SpawnMap = Map.Felucca;
                    //    TownInvaded = "Moonglow";
                    //    break;
                    //}
                    //case InvasionTowns.Nujel:
                    //{
                    //    Top = new Point3D(3665, 1189, 0);
                    //    Bottom = new Point3D(3774, 1357, 0);
                    //    MinSpawnZ = 50;
                    //    MaxSpawnZ = 61;
                    //    SpawnMap = Map.Felucca;
                    //    TownInvaded = "Nujel'm";
                    //    break;
                    //}
                    //case InvasionTowns.Ocllo:
                    //{
                    //    Top = new Point3D(3617, 2482, 0);
                    //    Bottom = new Point3D(3712, 2630, 20);
                    //    MinSpawnZ = 5;
                    //    MaxSpawnZ = 21;
                    //    SpawnMap = Map.Felucca;
                    //    TownInvaded = "Ocllo";
                    //    break;
                    //}
                    //case InvasionTowns.Papua:
                    //{
                    //    Top = new Point3D(5644, 3112, -15);
                    //    Bottom = new Point3D(5826, 3315, 0);
                    //    MinSpawnZ = 50;
                    //    MaxSpawnZ = 61;
                    //    SpawnMap = Map.Felucca;
                    //    TownInvaded = "Papua";
                    //    break;
                    //}
                    //case InvasionTowns.SkaraBrae:
                    //{
                    //    Top = new Point3D(577, 2131, -90);
                    //    Bottom = new Point3D(634, 2234, -90);
                    //    MinSpawnZ = 25;
                    //    MaxSpawnZ = 65;
                    //    SpawnMap = Map.Felucca;
                    //    TownInvaded = "Skara Brae";
                    //    break;
                    //}
                    //case InvasionTowns.Yew:
                    //{
                    //    Top = new Point3D(452, 928, 0);
                    //    Bottom = new Point3D(669, 1104, 0);
                    //    MinSpawnZ = 50;
                    //    MaxSpawnZ = 61;
                    //    SpawnMap = Map.Felucca;
                    //    TownInvaded = "Yew";
                    //    break;
                    //}
                    //case InvasionTowns.Vesper:
                    //{
                    //    Top = new Point3D(2835, 656, 0);
                    //    Bottom = new Point3D(2940, 988, 0);
                    //    MinSpawnZ = 50;
                    //    MaxSpawnZ = 61;
                    //    SpawnMap = Map.Felucca;
                    //    TownInvaded = "Vesper";
                    //    break;
                    //}
                }

                foreach (Region r in Region.Regions)
                {
                    if (r is GuardedRegion && r.Name == TownInvaded)
                    {
                        WasDisabledRegion = ((GuardedRegion)r).Disabled;

                        ((GuardedRegion)r).Disabled = true;
                    }
                }

                Spawn();
            }
        }