Пример #1
0
        public override void OnAfterSpawn()
        {
            base.OnAfterSpawn();

            Region reg = Region.Find(this.Location, this.Map);

            string World = Server.Misc.Worlds.GetMyWorld(this.Map, this.Location, this.X, this.Y);

            int clothColor = 0;
            int shieldType = 0;
            int helmType   = 0;
            int cloakColor = 0;

            Item weapon = new VikingSword(); weapon.Delete();

            if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Whisper")
            {
                clothColor = 0x96D;             shieldType = 0x1B72;    helmType = 0x140E;              cloakColor = 0x972;             weapon = new Longsword();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Town of Glacial Hills")
            {
                clothColor = 0xB70;             shieldType = 0x1B74;    helmType = 0x1412;              cloakColor = 0xB7A;             weapon = new Kryss();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Springvale")
            {
                clothColor = 0x595;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x593;             weapon = new Pike();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the City of Elidor")
            {
                clothColor = 0x665;             shieldType = 0x1B7B;    helmType = 0x1412;              cloakColor = 0x664;             weapon = new Katana();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Islegem")
            {
                clothColor = 0x7D1;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x7D6;             weapon = new Spear();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "Greensky Village")
            {
                clothColor = 0x7D7;             shieldType = 0;                 helmType = 0x1412;              cloakColor = 0x7DA;             weapon = new Bardiche();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Port of Dusk")
            {
                clothColor = 0x601;             shieldType = 0x1B76;    helmType = 0x140E;              cloakColor = 0x600;             weapon = new Cutlass();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Port of Starguide")
            {
                clothColor = 0x751;             shieldType = 0;                 helmType = 0x1412;              cloakColor = 0x758;             weapon = new BladedStaff();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Portshine")
            {
                clothColor = 0x847;             shieldType = 0x1B7A;    helmType = 0x140E;              cloakColor = 0x851;             weapon = new Mace();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Ranger Outpost")
            {
                clothColor = 0x598;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x83F;             weapon = new Spear();
            }
            else if (World == "the Land of Lodoria")               // ( Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the City of Lodoria" || Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the Castle of Knowledge" || Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the Lodoria City Park" || Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the Village of Lodoria" || Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the Lodoria Cemetery" )
            {
                clothColor = 0x6E4;             shieldType = 0x1BC4;    helmType = 0x1412;              cloakColor = 0x6E7;             weapon = new Scimitar();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Lunar City of Dawn")
            {
                clothColor = 0x9C4;             shieldType = 0;                 helmType = 11121;               cloakColor = 0x9C4;             weapon = new QuarterStaff();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "The Town of Devil Guard" || Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "The Farmland of Devil Guard")
            {
                clothColor = 0x430;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0;                 weapon = new LargeBattleAxe();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Town of Moon")
            {
                clothColor = 0x8AF;             shieldType = 0x1B72;    helmType = 0x1412;              cloakColor = 0x972;             weapon = new Longsword();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Grey")
            {
                clothColor = 0;                 shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x763;             weapon = new Halberd();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the City of Montor")
            {
                clothColor = 0x96F;             shieldType = 0x1B74;    helmType = 0x1412;              cloakColor = 0x529;             weapon = new Broadsword();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Fawn")
            {
                clothColor = 0x59D;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x59C;             weapon = new DoubleAxe();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Yew")
            {
                clothColor = 0x83C;             shieldType = 0;                 helmType = 0x1412;              cloakColor = 0x850;             weapon = new Spear();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "Iceclad Fisherman's Village" || Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Town of Mountain Crest" || Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "Glacial Coast Village")
            {
                clothColor = 0x482;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x47E;             weapon = new Bardiche();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Undercity of Umbra")
            {
                clothColor = 0x964;             shieldType = 0x1BC3;    helmType = 0x140E;              cloakColor = 0x966;             weapon = new BoneHarvester();
            }
            else if (World == "the Island of Umber Veil")
            {
                clothColor = 0xA5D;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x96D;             weapon = new Halberd();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the City of Kuldara")
            {
                clothColor = 0x965;             shieldType = 0x1BC3;    helmType = 0x140E;              cloakColor = 0x845;             weapon = new Maul();
            }
            else if (World == "the Isles of Dread")
            {
                clothColor = 0x978;             shieldType = 0x1B7A;    helmType = 0;                   cloakColor = 0x973;             weapon = new VikingSword();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Barako")
            {
                clothColor = 0x515;             shieldType = 0x1B72;    helmType = 0x2645;              cloakColor = 0x58D;             weapon = new WarMace();
            }
            else if (World == "the Savaged Empire")               // ( Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the Village of Kurak" )
            {
                clothColor = 0x515;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x59D;             weapon = new Spear();
            }
            else if (World == "the Serpent Island")               // ( Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the City of Furnace" )
            {
                clothColor = 0x515;             shieldType = 0;                 helmType = 0x2FBB;              cloakColor = 0;                 weapon = new Halberd();
            }
            else             // if ( Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the City of Britain" || Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the Britain Castle Grounds" || Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "Lord British Castle" || Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the Britain Dungeons" )
            {
                clothColor = 0x9C4;             shieldType = 0x1BC4;    helmType = 0x140E;              cloakColor = 0x845;             weapon = new VikingSword();
            }

            weapon.Movable = false;
            ((BaseWeapon)weapon).MaxHitPoints = 1000;
            ((BaseWeapon)weapon).HitPoints    = 1000;
            ((BaseWeapon)weapon).MinDamage    = 500;
            ((BaseWeapon)weapon).MaxDamage    = 900;
            AddItem(weapon);

            Item arms = new RingmailArms();

            if (World == "the Serpent Island")
            {
                arms = new PlateArms();
            }                                                                                   // FOR GARGOYLES
            Item tunic = new PlateChest();
            Item legs  = new PlateLegs();
            Item neck  = new PlateGorget();
            Item hand  = new PlateGloves();
            Item foot  = new Boots( );

            if (World == "the Isles of Dread")
            {
                tunic.ItemID = 0x5652;  tunic.Name = "tunic";
                if (this.Female)
                {
                    tunic.ItemID = 0x563E;
                    Utility.AssignRandomHair(this);
                }
                else
                {
                    Utility.AssignRandomHair(this);
                    FacialHairItemID = Utility.RandomList(0, 8254, 8255, 8256, 8257, 8267, 8268, 8269);
                }

                this.HairHue       = 0x455;
                this.FacialHairHue = 0x455;

                arms.ItemID = 22093;    arms.Name = "sleeves";
                legs.ItemID = 7176;             legs.Name = "skirt";
                neck.ItemID = 0x5650;   neck.Name = "amulet";
                hand.ItemID = 0x564E;   hand.Name = "gloves";
                foot.ItemID = 5901;             foot.Name = "sandals";
            }
            else if (World == "the Moon of Luna")
            {
                tunic.ItemID = 7939;    tunic.Name = "robe";
                if (this.Female)
                {
                    Utility.AssignRandomHair(this);
                }
                else
                {
                    Utility.AssignRandomHair(this);
                    FacialHairItemID = Utility.RandomList(0, 8254, 8255, 8256, 8257, 8267, 8268, 8269);
                }

                this.HairHue       = Utility.RandomHairHue();
                this.FacialHairHue = this.HairHue;

                arms.ItemID = 22093;    arms.Name = "sleeves";
                legs.ItemID = 7176;             legs.Name = "skirt";
                neck.ItemID = 0x5650;   neck.Name = "amulet";
                hand.ItemID = 0x564E;   hand.Name = "gloves";
                foot.ItemID = 5901;             foot.Name = "sandals";
            }

            AddItem(tunic);
            AddItem(arms);
            AddItem(legs);
            AddItem(neck);
            AddItem(hand);
            AddItem(foot);

            if (helmType > 0)
            {
                PlateHelm helm = new PlateHelm();
                helm.ItemID = helmType;
                helm.Name   = "helm";
                if (helmType == 11121)
                {
                    helm.Name = "hood";
                }
                AddItem(helm);
            }
            if (shieldType > 0)
            {
                ChaosShield shield = new ChaosShield();
                shield.ItemID = shieldType;
                shield.Name   = "shield";
                AddItem(shield);
            }

            MorphingTime.ColorMyClothes(this, clothColor);

            if (cloakColor > 0)
            {
                Cloak cloak = new Cloak();
                cloak.Hue = cloakColor;
                AddItem(cloak);
            }

            Server.Misc.MorphingTime.CheckMorph(this);

            if (Utility.RandomBool() && !Server.Misc.Worlds.InBuilding(this) && this.Map != Map.SerpentIsland)
            {
                BaseMount mount = new EvilMount();

                if (this.Map == Map.SavagedEmpire)
                {
                    mount.Body = 0x11C; mount.ItemID = 0x3E92; mount.Hue = Utility.RandomList(0xB79, 0xB19, 0xAEF, 0xACE, 0xAB0);
                }
                else if (this.Map == Map.IslesDread)
                {
                    mount.Body = 0xD5; mount.ItemID = 0x3EC5; if (Server.Misc.MyServerSettings.ClientVersion())
                    {
                        mount.Body = 0x22; mount.ItemID = 34; if (Utility.RandomBool())
                        {
                            mount.Body = 0xB1; mount.ItemID = 177;
                        }
                    }
                    else
                    {
                        mount.Hue = Utility.RandomList(0xAB1, 0xAC0, 0x92B);
                    }
                }
                else
                {
                    mount.Body = 0xE2; mount.ItemID = 0x3EA0; if (Server.Misc.MyServerSettings.ClientVersion())
                    {
                        mount.ItemID = 594;
                    }
                    else
                    {
                        mount.Hue = Utility.RandomList(0, 0, 0, 0, 0, 0x780, 0x781, 0x782, 0x783, 0x8FD, 0x8FE, 0x8FF, 0x900, 0x901, 0x902, 0x903, 0x904, 0x905, 0x906, 0x907, 0x908, Utility.RandomNeutralHue(), Utility.RandomNeutralHue(), Utility.RandomNeutralHue(), Utility.RandomNeutralHue(), Utility.RandomNeutralHue(), Utility.RandomNeutralHue());
                    }
                }

                Server.Mobiles.BaseMount.Ride(mount, this);
            }
        }
Пример #2
0
        /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

        public static Item CreateMetalWeapon()
        {
            Item item = null;

            int nType = Utility.RandomMinMax(0, 41);

            switch (nType)
            {
            case 1:         item = new Cutlass();                   item.Name = "cutlass";                  break;

            case 2:         item = new Katana();                    item.Name = "katana";                   break;

            case 3:         item = new Kryss();                             item.Name = "kryss";                    break;

            case 4:         item = new Broadsword();                item.Name = "broadsword";               break;

            case 5:         item = new Longsword();                 item.Name = "longsword";                break;

            case 6:         item = new ThinLongsword();             item.Name = "longsword";                break;

            case 7:         item = new VikingSword();               item.Name = "barbarian sword";  break;

            case 8:         item = new Scimitar();                  item.Name = "scimitar";                 break;

            case 9:         item = new BoneHarvester();             item.Name = "sickle";                   break;

            case 10:        item = new CrescentBlade();             item.Name = "crescent blade";   break;

            case 11:        item = new DoubleBladedStaff(); item.Name = "bladed staff";             break;

            case 12:        item = new Lance();                             item.Name = "lance";                    break;

            case 13:        item = new Pike();                              item.Name = "pike";                             break;

            case 14:        item = new Scythe();                    item.Name = "scythe";                   break;

            case 15:        item = new Dagger();                    item.Name = "dagger";                   break;

            case 16:        item = new HammerPick();                item.Name = "hammer pick";              break;

            case 17:        item = new Mace();                              item.Name = "mace";                             break;

            case 18:        item = new Maul();                              item.Name = "maul";                             break;

            case 19:        item = new WarHammer();                 item.Name = "war hammer";               break;

            case 20:        item = new WarMace();                   item.Name = "war mace";                 break;

            case 21:        item = new ExecutionersAxe();   item.Name = "great axe";                break;

            case 22:        item = new BattleAxe();                 item.Name = "battle axe";               break;

            case 23:        item = new TwoHandedAxe();              item.Name = "two-handed axe";   break;

            case 24:        item = new Axe();                               item.Name = "axe";                              break;

            case 25:        item = new DoubleAxe();                 item.Name = "double axe";               break;

            case 26:        item = new RoyalSword();                item.Name = "royal sword";              break;

            case 27:        item = new LargeBattleAxe();    item.Name = "large battle axe"; break;

            case 28:        item = new WarAxe();                    item.Name = "war axe";                  break;

            case 29:        item = new Bardiche();                  item.Name = "bardiche";                 break;

            case 30:        item = new Halberd();                   item.Name = "halberd";                  break;

            case 31:        item = new Pitchfork();                 item.Name = "trident";                  break;

            case 32:        item = new ShortSpear();                item.Name = "short spear";              break;

            case 33:        item = new Spear();                             item.Name = "spear";                    break;

            case 34:        item = new NoDachi();                   item.Name = "no dachi";                 break;

            case 35:        item = new Wakizashi();                 item.Name = "wakizashi";                break;

            case 36:        item = new Tetsubo();                   item.Name = "tetsubo";                  break;

            case 37:        item = new Lajatang();                  item.Name = "lajatang";                 break;

            case 38:        item = new Daisho();                    item.Name = "daisho";                   break;

            case 39:        item = new Tekagi();                    item.Name = "tekagi";                   break;

            case 40:        item = new Kama();                              item.Name = "kama";                             break;

            case 41:        item = new Sai();                               item.Name = "sai";                              break;
            }

            return(item);
        }
Пример #3
0
        public Urk() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            BaseSoundID      = 0x45A;
            Hue              = 0x430;
            Body             = 0x190;
            Name             = NameList.RandomName("urk");
            HairItemID       = 0;
            FacialHairItemID = 0;

            Item helm = new WornHumanDeco();

            helm.Name   = "urkish face";
            helm.ItemID = 0x141B;
            helm.Hue    = 0x430;
            helm.Layer  = Layer.Helm;
            AddItem(helm);

            if (Utility.RandomMinMax(1, 2) == 1)
            {
                LeatherArms ratarms = new LeatherArms();
                ratarms.Name        = "urkish rat skin arms";
                ratarms.PoisonBonus = 6;
                ratarms.Hue         = 0x972;
                AddItem(ratarms);

                LeatherChest ratchest = new LeatherChest();
                ratchest.Name        = "urkish rat skin tunic";
                ratchest.PoisonBonus = 8;
                ratchest.Hue         = 0x972;
                AddItem(ratchest);

                LeatherGloves ratgloves = new LeatherGloves();
                ratgloves.Name        = "urkish rat skin gloves";
                ratgloves.PoisonBonus = 5;
                ratgloves.Hue         = 0x972;
                AddItem(ratgloves);

                LeatherGorget ratgorget = new LeatherGorget();
                ratgorget.Name        = "urkish rat skin gorget";
                ratgorget.PoisonBonus = 4;
                ratgorget.Hue         = 0x972;
                AddItem(ratgorget);

                LeatherLegs ratlegs = new LeatherLegs();
                ratlegs.Name        = "urkish rat skin leggings";
                ratlegs.PoisonBonus = 7;
                ratlegs.Hue         = 0x972;
                AddItem(ratlegs);
            }
            else
            {
                BoneChest bonechest = new BoneChest();
                bonechest.Name        = "urkish chest piece";
                bonechest.PoisonBonus = 8;
                bonechest.Hue         = 0x972;
                AddItem(bonechest);

                BoneArms bonearms = new BoneArms();
                bonearms.Name        = "urkish bracers";
                bonearms.PoisonBonus = 6;
                bonearms.Hue         = 0x972;
                AddItem(bonearms);

                BoneLegs bonelegs = new BoneLegs();
                bonelegs.Name        = "urkish leggings";
                bonelegs.PoisonBonus = 7;
                bonelegs.Hue         = 0x972;
                AddItem(bonelegs);

                BoneGloves bonegloves = new BoneGloves();
                bonegloves.Name        = "urkish gauntlets";
                bonegloves.PoisonBonus = 5;
                bonegloves.Hue         = 0x972;
                AddItem(bonegloves);
            }

            Item weapon = new BattleAxe();

            switch (Utility.Random(28))
            {
            case 0: weapon = new BattleAxe(); weapon.Name = "battle axe"; break;

            case 1: weapon = new VikingSword(); weapon.Name = "great sword"; break;

            case 2: weapon = new Halberd(); weapon.Name = "halberd"; break;

            case 3: weapon = new DoubleAxe(); weapon.Name = "double axe"; break;

            case 4: weapon = new ExecutionersAxe(); weapon.Name = "great axe"; break;

            case 5: weapon = new WarAxe(); weapon.Name = "war axe"; break;

            case 6: weapon = new TwoHandedAxe(); weapon.Name = "two handed axe"; break;

            case 7: weapon = new Cutlass(); weapon.Name = "cutlass"; break;

            case 8: weapon = new Katana(); weapon.Name = "katana"; break;

            case 9: weapon = new Kryss(); weapon.Name = "kryss"; break;

            case 10: weapon = new Broadsword(); weapon.Name = "broadsword"; break;

            case 11: weapon = new Longsword(); weapon.Name = "longsword"; break;

            case 12: weapon = new ThinLongsword(); weapon.Name = "longsword"; break;

            case 13: weapon = new Scimitar(); weapon.Name = "scimitar"; break;

            case 14: weapon = new BoneHarvester(); weapon.Name = "sickle"; break;

            case 15: weapon = new CrescentBlade(); weapon.Name = "crescent blade"; break;

            case 16: weapon = new DoubleBladedStaff(); weapon.Name = "double bladed staff"; break;

            case 17: weapon = new Pike(); weapon.Name = "pike"; break;

            case 18: weapon = new Scythe(); weapon.Name = "scythe"; break;

            case 19: weapon = new Pitchfork(); weapon.Name = "trident"; break;

            case 20: weapon = new ShortSpear(); weapon.Name = "short spear"; break;

            case 21: weapon = new Spear(); weapon.Name = "spear"; break;

            case 22: weapon = new Club(); weapon.Name = "club"; break;

            case 23: weapon = new HammerPick(); weapon.Name = "hammer pick"; break;

            case 24: weapon = new Mace(); weapon.Name = "mace"; break;

            case 25: weapon = new Maul(); weapon.Name = "maul"; break;

            case 26: weapon = new WarHammer(); weapon.Name = "war hammer"; break;

            case 27: weapon = new WarMace(); weapon.Name = "war mace"; break;
            }

            weapon.Name = "urkish " + weapon.Name;
            weapon.Hue  = 0x7D1;
            ((BaseWeapon)weapon).AosElementDamages.Physical = 60;
            ((BaseWeapon)weapon).AosElementDamages.Poison   = 40;
            AddItem(weapon);

            switch (Utility.RandomMinMax(0, 5))
            {
            case 0: Title = "the urk warrior"; break;

            case 1: Title = "the urk savage"; break;

            case 2: Title = "the urk barbarian"; break;

            case 3: Title = "the urk fighter"; break;

            case 4: Title = "the urk gladiator"; break;

            case 5: Title = "the urk berserker"; break;
            }

            SetStr(196, 250);
            SetDex(76, 95);
            SetInt(36, 60);

            SetHits(118, 150);

            SetDamage(8, 18);

            SetDamageType(ResistanceType.Physical, 60);
            SetDamageType(ResistanceType.Poison, 40);

            SetResistance(ResistanceType.Physical, 35, 45);
            SetResistance(ResistanceType.Fire, 20, 30);
            SetResistance(ResistanceType.Cold, 50, 60);
            SetResistance(ResistanceType.Poison, 60, 80);
            SetResistance(ResistanceType.Energy, 30, 40);

            SetSkill(SkillName.MagicResist, 65.1, 80.0);
            SetSkill(SkillName.Tactics, 85.1, 100.0);
            SetSkill(SkillName.Macing, 85.1, 95.0);
            SetSkill(SkillName.Swords, 85.1, 95.0);
            SetSkill(SkillName.Fencing, 85.1, 95.0);
            SetSkill(SkillName.Wrestling, 85.1, 95.0);

            Fame  = 3000;
            Karma = -3000;

            VirtualArmor = 40;
        }