Пример #1
0
        public override void InitOutfit()
        {
            WipeLayers();

            Scimitar sword = new Scimitar();

            sword.Quality = WeaponQuality.Exceptional;
            sword.Movable = false;
            AddItem(sword);

            Item hair = new KrisnaHair();

            hair.Hue     = 1263;
            hair.Layer   = Layer.Hair;
            hair.Movable = false;
            AddItem(hair);

            BoneArms arms = new BoneArms();

            arms.Name     = "magical bindings";
            arms.Hue      = 1706;
            arms.LootType = LootType.Newbied;
            AddItem(arms);

            GoldNecklace necklace = new GoldNecklace();

            necklace.Name     = "magical collar";
            necklace.Hue      = 1706;
            necklace.LootType = LootType.Newbied;
            AddItem(necklace);
        }
Пример #2
0
        public override void OnDeath(Container c)
        {
            base.OnDeath(c);

            Mobile killer = this.LastKiller;

            if (killer != null)
            {
                if (killer is BaseCreature)
                {
                    killer = ((BaseCreature)killer).GetMaster();
                }

                if (killer is PlayerMobile)
                {
                    if (GetPlayerInfo.LuckyKiller(killer.Luck) && Utility.RandomMinMax(1, 4) == 1)
                    {
                        BaseWeapon sword = new Scimitar();
                        sword.AccuracyLevel          = WeaponAccuracyLevel.Supremely;
                        sword.MinDamage              = sword.MinDamage + 7;
                        sword.MaxDamage              = sword.MaxDamage + 12;
                        sword.DurabilityLevel        = WeaponDurabilityLevel.Indestructible;
                        sword.AosElementDamages.Fire = 50;
                        sword.Name   = "scimitar of " + this.Title;
                        sword.Slayer = SlayerName.Repond;
                        if (Utility.RandomMinMax(0, 100) > 50)
                        {
                            sword.WeaponAttributes.HitFireball = 25;
                        }
                        sword.Hue = 0x54B;
                        c.DropItem(sword);
                    }
                }
            }
        }
Пример #3
0
 public override void GenerateLoot()
 {
     if (Core.UOAI || Core.UOAR)
     {
         // Neira's sword can't drop unless it's movable
         if (Weapon is Scimitar)
         {                       // add some attributes now to make it a tad more interesting
             Scimitar weapon = Loot.ImbueWeaponOrArmor(Weapon as Scimitar, 6, 0, false) as Scimitar;
             weapon.Movable = true;
         }
     }
     else
     {
         if (Core.UOSP || Core.UOMO)
         {                       // TBD
             if (Spawning)
             {
                 PackGold(0);
             }
             else
             {
             }
         }
         else
         {                       // Standard RunUO
             AddLoot(LootPack.UltraRich, 3);
             AddLoot(LootPack.Meager);
         }
     }
 }
Пример #4
0
        public override void OnDeath(Container c)
        {
            base.OnDeath(c);

            Mobile killer = this.LastKiller;

            if (killer != null)
            {
                if (killer is BaseCreature)
                {
                    killer = ((BaseCreature)killer).GetMaster();
                }

                if (killer is PlayerMobile)
                {
                    if (GetPlayerInfo.LuckyKiller(killer.Luck) && Utility.RandomMinMax(1, 4) == 1)
                    {
                        BaseWeapon weapon = new Scimitar();
                        weapon.MinDamage            = weapon.MinDamage + 6;
                        weapon.MaxDamage            = weapon.MaxDamage + 10;
                        weapon.Attributes.BonusHits = 50;
                        weapon.Name = "gargoyle scimitar";
                        weapon.Hue  = 0xB80;
                        c.DropItem(weapon);
                    }
                }
            }
        }
Пример #5
0
        public Mercenary(string name) : base(name, AIType.AI_Melee, 0.01)
        {
            SpeechHue = Utility.RandomDyedHue();
            Hue       = Utility.RandomSkinHue();
            Item hair = new Item(Utility.RandomList(0x203B, 0x2049, 0x2048, 0x204A));

            hair.Hue     = Utility.RandomNondyedHue();
            hair.Layer   = Layer.Hair;
            hair.Movable = false;
            PassiveSpeed = 0.4;
            ActiveSpeed  = 0.2;
            AddItem(hair);

            if (Female = Utility.RandomBool())
            {
                Body = 0x191;
            }
            else
            {
                Body = 0x190;
                if (Utility.RandomBool())
                {
                    Item beard = new Item(Utility.RandomList(0x203E, 0x203F, 0x2040, 0x2041, 0x204B, 0x204C, 0x204D));
                    beard.Hue     = hair.Hue;
                    beard.Layer   = Layer.FacialHair;
                    beard.Movable = false;
                    AddItem(beard);
                }
            }

            if (!(this is IEvoGuardian))
            {
                Item weapon;
                switch (Utility.Random(6))
                {
                case 0: weapon = new Kryss(); break;

                case 1: weapon = new Scimitar(); break;

                case 2: weapon = new WarAxe(); break;

                case 3: weapon = new Cutlass(); break;

                case 4: weapon = new HammerPick(); break;

                default: weapon = new WarFork(); break;
                }
                AddItem(weapon);
                AddItem(new Robe());
            }

            if (null == Backpack)
            {
                Container pack = new Backpack();
                pack.Movable = false;
                AddItem(pack);
            }
        }
Пример #6
0
        public Neira()
            : base(AIType.AI_Mage, 0.175, 0.350)
        {
            Name       = "Neira";
            Title      = "the necromancer";
            Body       = 401;
            Hue        = 0x83EC;
            BardImmune = true;

            SetStr(305, 425);
            SetDex(72, 150);
            SetInt(505, 750);

            SetHits(4800);
            SetStam(102, 300);

            SetDamage(25, 35);

            SetSkill(SkillName.EvalInt, 120.0);
            SetSkill(SkillName.Magery, 120.0);
            SetSkill(SkillName.Meditation, 120.0);
            SetSkill(SkillName.MagicResist, 150.0);
            SetSkill(SkillName.Swords, 97.6, 100.0);
            SetSkill(SkillName.Tactics, 97.6, 100.0);
            SetSkill(SkillName.Wrestling, 97.6, 100.0);

            Fame  = 22500;
            Karma = -22500;

            VirtualArmor = 30;
            Female       = true;

            Item shroud = new HoodedShroudOfShadows();

            shroud.Movable = false;

            AddItem(shroud);

            Scimitar weapon = new Scimitar();

            // 3% chance for Neira's sword to drop.
            if (Utility.RandomDouble() <= 0.97)
            {
                weapon.LootType = LootType.Newbied;
            }
            else
            {
                weapon.LootType = LootType.Regular;
            }

            weapon.Name    = "Corpse Cleaver";
            weapon.Hue     = 38;
            weapon.Movable = false;

            AddItem(weapon);

            new SkeletalMount().Rider = this;
        }
Пример #7
0
        public Servant()
            : base(AIType.AI_Melee, FightMode.Aggressor, 7, 7, 9, 9)
        {
            Body        = 400 + Utility.Random(2);
            Hue         = Utility.RandomSkinHue();
            this.RawStr = 200;
            this.RawDex = 200;
            this.RawInt = 200;

            Skills[SkillName.DetectHidden].Base = 100;
            Skills[SkillName.Swords].Base       = 120;
            Skills[SkillName.Wrestling].Base    = 120;
            Skills[SkillName.Anatomy].Base      = 120;
            Skills[SkillName.Tactics].Base      = 120;
            Skills[SkillName.Magery].Base       = 120;
            Skills[SkillName.Meditation].Base   = 120;
            Skills[SkillName.Imbuing].Base      = 120;
            Skills[SkillName.Healing].Base      = 120;
            Skills[SkillName.MagicResist].Base  = 120;

            Team = Utility.Random(3);
            int iHue = 20 + Team * 40;
            int jHue = 25 + Team * 40;

            Utility.AssignRandomHair(this, iHue);


            Container pack = new Backpack();

            pack.Movable = false;
            AddItem(pack);


            LeatherGloves glv = new LeatherGloves();

            glv.Hue = iHue;
            //glv.LootType = LootType.Newbied;
            AddItem(glv);

            Item shroud = new HoodedShroudOfShadows();

            //shroud.LootType = LootType.Newbied;
            AddItem(shroud);

            Scimitar weapon = new Scimitar();

            weapon.Skill = SkillName.Wrestling;
            weapon.Hue   = 38;
            //weapon.LootType = LootType.Newbied;
            AddItem(weapon);

            AddItem(new VirtualMountItem(this));


            // special functions
            {
            }
        }
Пример #8
0
        public override void InitOutfit()
        {
            WipeLayers();

            switch (Utility.Random(2))
            {
            case 0: AddItem(new SkullCap(Utility.RandomRedHue())); break;

            case 1: AddItem(new TricorneHat(Utility.RandomRedHue())); break;
            }


            if (Utility.RandomBool())
            {
                Item shirt = new Shirt(Utility.RandomRedHue());
                AddItem(shirt);
            }

            Item sash  = new BodySash(0x85);
            Item hair  = new Item(Utility.RandomList(0x203B, 0x203C, 0x203D, 0x2044, 0x2045, 0x2047, 0x2049, 0x204A));
            Item pants = new LongPants(Utility.RandomRedHue());
            Item boots = new Boots(Utility.RandomRedHue());

            hair.Hue     = Utility.RandomHairHue();
            hair.Layer   = Layer.Hair;
            hair.Movable = false;

            Item sword;

            if (Utility.RandomBool())
            {
                sword = new Scimitar();
            }
            else
            {
                sword = new Cutlass();
            }

            sword.LootType = LootType.Newbied;
            sword.Movable  = false;                                     // casts with it equiped

            AddItem(hair);
            AddItem(sash);
            AddItem(pants);
            AddItem(boots);
            AddItem(sword);

            if (!this.Female)
            {
                Item beard = new Item(Utility.RandomList(0x203E, 0x203F, 0x2040, 0x2041, 0x204B, 0x204C, 0x204D));
                beard.Hue     = hair.Hue;
                beard.Layer   = Layer.FacialHair;
                beard.Movable = false;
                AddItem(beard);
            }
        }
Пример #9
0
        public Neira() : base(AIType.AI_NecroMage)
        {
            Name  = "Neira";
            Title = "the necromancer";
            Body  = 401;
            Hue   = 0x83EC;

            SetStr(305, 425);
            SetDex(72, 150);
            SetInt(505, 750);

            SetHits(4800);
            SetStam(102, 300);

            SetDamage(25, 35);

            SetDamageType(ResistanceType.Physical, 100);

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

            SetSkill(SkillName.EvalInt, 120.0);
            SetSkill(SkillName.Magery, 120.0);
            SetSkill(SkillName.Meditation, 120.0);
            SetSkill(SkillName.Necromancy, 120.0);
            SetSkill(SkillName.SpiritSpeak, 120.0);
            SetSkill(SkillName.MagicResist, 150.0);
            SetSkill(SkillName.Tactics, 97.6, 100.0);
            SetSkill(SkillName.Wrestling, 97.6, 100.0);

            Fame  = 22500;
            Karma = -22500;

            VirtualArmor = 30;
            Female       = true;

            Item shroud = new HoodedShroudOfShadows();

            shroud.Movable = false;

            AddItem(shroud);

            Scimitar weapon = new Scimitar();

            weapon.Skill   = SkillName.Wrestling;
            weapon.Hue     = 38;
            weapon.Movable = false;

            AddItem(weapon);

            //new SkeletalMount().Rider = this;
            AddItem(new VirtualMountItem(this));
        }
Пример #10
0
        public Orthal()
        {
            Name      = "Orthal";
            Title     = "the Shipmate";
            Body      = 0x190;
            Hue       = Utility.RandomSkinHue();
            Blessed   = true;
            CantWalk  = true;
            Direction = Direction.South;

            Boots bt = new Boots();

            bt.Hue = 0;
            AddItem(bt);

            LongPants lp = new LongPants();

            lp.Hue = 0;
            AddItem(lp);

            FancyShirt fs = new FancyShirt();

            fs.Hue = 0;
            AddItem(fs);

            TricorneHat th = new TricorneHat();

            th.Hue = 0;
            AddItem(th);

            Scimitar sc = new Scimitar();

            AddItem(sc);

            GoldBeadNecklace gn = new GoldBeadNecklace();

            AddItem(gn);

            GoldBracelet gb = new GoldBracelet();

            AddItem(gb);

            GoldEarrings ge = new GoldEarrings();

            AddItem(ge);

            GoldRing gr = new GoldRing();

            AddItem(gr);

            AddItem(new PonyTail(1149));

            AddItem(new Vandyke(1149));
        }
Пример #11
0
        public override void InitOutfit()
        {
            WipeLayers();

            // black captain's hat
            TricorneHat hat = CaptainsHat();

            hat.LootType = LootType.Newbied;
            AddItem(hat);

            if (Utility.RandomBool())
            {
                Item shirt = new Shirt(Utility.RandomRedHue());
                AddItem(shirt);
            }

            Item sash  = new BodySash(0x85);
            Item hair  = new Item(Utility.RandomList(0x203B, 0x203C, 0x203D, 0x2044, 0x2045, 0x2047, 0x2049, 0x204A));
            Item pants = new LongPants(Utility.RandomRedHue());
            Item boots = new Boots(Utility.RandomRedHue());

            hair.Hue     = Utility.RandomHairHue();
            hair.Layer   = Layer.Hair;
            hair.Movable = false;

            Item sword;

            if (Utility.RandomBool())
            {
                sword = new Scimitar();
            }
            else
            {
                sword = new Cutlass();
            }

            sword.LootType = LootType.Newbied;

            AddItem(hair);
            AddItem(sash);
            AddItem(pants);
            AddItem(boots);
            AddItem(sword);

            if (!this.Female)
            {
                Item beard = new Item(Utility.RandomList(0x203E, 0x203F, 0x2040, 0x2041, 0x204B, 0x204C, 0x204D));
                beard.Hue     = hair.Hue;
                beard.Layer   = Layer.FacialHair;
                beard.Movable = false;
                AddItem(beard);
            }
        }
Пример #12
0
        public Neira()
            : base(AIType.AI_Mage)
        {
            Name         = "Neira";
            SpecialTitle = "The Necromancer";
            TitleHue     = 1174;

            Body = 401;
            Hue  = 0x83EC;

            Alignment = Alignment.Undead;

            SetStr(305, 635);
            SetDex(100, 175);
            SetInt(705, 950);

            SetHits(9900, 12750);
            SetStam(80, 100);

            SetDamage(33, 45);

            SetSkill(SkillName.EvalInt, 120.0);
            SetSkill(SkillName.Magery, 120.0);
            SetSkill(SkillName.Meditation, 120.0);
            SetSkill(SkillName.MagicResist, 150.0);
            SetSkill(SkillName.Tactics, 97.6, 100.0);
            SetSkill(SkillName.Wrestling, 97.6, 100.0);

            Fame  = 22500;
            Karma = -22500;

            VirtualArmor = 30;
            Female       = true;

            Item shroud = new HoodedShroudOfShadows();

            shroud.Movable = false;

            AddItem(shroud);

            var weapon = new Scimitar
            {
                Skill   = SkillName.Wrestling,
                Hue     = 38,
                Movable = false,
                Name    = "Defiled Cutlass"
            };

            AddItem(weapon);

            //new SkeletalMount().Rider = this;
            AddItem(new VirtualMountItem(this));
        }
Пример #13
0
        public MilitiaFighter() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            InitStats(40, 30, 5);
            Title = "the Militia Fighter";

            SpeechHue = Utility.RandomDyedHue();

            Hue = Utility.RandomSkinHue();

            Female = false;
            Body   = 0x190;
            Name   = NameList.RandomName("male");

            Utility.AssignRandomHair(this);
            Utility.AssignRandomFacialHair(this, HairHue);

            AddItem(new ThighBoots(0x1BB));
            AddItem(new LeatherChest());
            AddItem(new LeatherArms());
            AddItem(new LeatherLegs());
            AddItem(new LeatherCap());
            AddItem(new LeatherGloves());
            AddItem(new LeatherGorget());

            Item weapon;

            switch (Utility.Random(6))
            {
            case 0: weapon = new Broadsword(); break;

            case 1: weapon = new Cutlass(); break;

            case 2: weapon = new Katana(); break;

            case 3: weapon = new Longsword(); break;

            case 4: weapon = new Scimitar(); break;

            default: weapon = new VikingSword(); break;
            }
            weapon.Movable = false;
            AddItem(weapon);

            Item shield = new BronzeShield
            {
                Movable = false
            };

            AddItem(shield);

            SetSkill(SkillName.Swords, 20.0);
        }
Пример #14
0
        public QuarterMaster() : base(AIType.AI_Melee, FightMode.Aggressor, 10, 1, 0.1, 0.3)
        {
            Name  = NameList.RandomName("male");
            Title = "the Quarter Master";
            Body  = 400;

            SetStr(491, 610);
            SetDex(176, 295);
            SetInt(331, 450);

            SetHits(3042, 4568);
            SetMana(500);

            SetDamage(21, 32);

            SetDamageType(ResistanceType.Physical, 100);

            SetResistance(ResistanceType.Physical, 55, 65);
            SetResistance(ResistanceType.Fire, 30, 50);
            SetResistance(ResistanceType.Cold, 50, 65);
            SetResistance(ResistanceType.Poison, 25, 45);
            SetResistance(ResistanceType.Energy, 40, 65);

            SetSkill(SkillName.MagicResist, 130.6, 145.0);
            SetSkill(SkillName.Tactics, 130.1, 140.0);
            SetSkill(SkillName.Swords, 130.1, 155.0);
            SetSkill(SkillName.Parry, 130.1, 145.0);
            SetSkill(SkillName.EvalInt, 130.1, 145.0);
            SetSkill(SkillName.Anatomy, 130.1, 135.0);
            SetSkill(SkillName.Focus, 130.1, 145.0);

            Fame  = 20000;
            Karma = -20000;

            VirtualArmor = 40;

            AddItem(new TricorneHat(1109));
            AddItem(new ShortPants(1109));
            AddItem(new Shirt(1109));
            AddItem(new ThighBoots());

            Scimitar weapon = new Scimitar();

            weapon.Movable = false;
            AddItem(weapon);

            m_crew = new ArrayList();
            Timer m_timer = new QuarterMasterFamilyTimer(this);

            m_timer.Start();
        }
Пример #15
0
        public FighterPeacemaker() : base(AIType.AI_Melee, 1)
        {
            SetStr(220, 300);
            SetDex(40, 60);
            SetInt(40, 60);

            Item weapon;

            switch (Utility.Random(6))
            {
            case 0:
                weapon = new Broadsword();
                break;

            case 1:
                weapon = new Cutlass();
                break;

            case 2:
                weapon = new Katana();
                break;

            case 3:
                weapon = new Longsword();
                break;

            case 4:
                weapon = new Scimitar();
                break;

            default:
                weapon = new VikingSword();
                break;
            }
            AddItem(weapon);

            AddItem(new MetalShield());

            SetDamageType(ResistanceType.Physical, 100);

            SetSkill(SkillName.Tactics, 70, 95);
            SetSkill(SkillName.Swords, 70, 100);
            SetSkill(SkillName.Fencing, 65, 100);
            SetSkill(SkillName.MagicResist, 80, 110);
            SetSkill(SkillName.Macing, 75, 100);
            SetSkill(SkillName.Wrestling, 65, 100);
            SetSkill(SkillName.Parry, 70, 100);
            SetSkill(SkillName.Healing, 65, 75);
            SetSkill(SkillName.Anatomy, 80, 90);
        }
Пример #16
0
        public Buccaneer() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            SpeechHue = Utility.RandomDyedHue();
            Title     = "the Buccaneer";
            Hue       = Utility.RandomSkinHue();

            Body = 0x190;
            Name = NameList.RandomName("male");

            Scimitar scimitar = new Scimitar();

            scimitar.Movable = false;
            scimitar.Skill   = SkillName.Wrestling;
            AddItem(scimitar);

            AddItem(new FancyShirt());
            AddItem(new LongPants(Utility.RandomGreenHue()));
            AddItem(new Boots(Utility.RandomNeutralHue()));
            AddItem(new Buckler());
            AddItem(new FeatheredHat(Utility.RandomGreenHue()));

            SetStr(750, 950);
            SetDex(130, 155);
            SetInt(90, 125);
            SetHits(2000, 2950);

            SetDamage(12, 28);

            SetDamageType(ResistanceType.Physical, 75);
            SetDamageType(ResistanceType.Poison, 25);

            SetResistance(ResistanceType.Physical, 60, 75);
            SetResistance(ResistanceType.Fire, 50, 65);
            SetResistance(ResistanceType.Cold, 50, 65);
            SetResistance(ResistanceType.Poison, 100);
            SetResistance(ResistanceType.Energy, 40, 50);

            SetSkill(SkillName.Anatomy, 90.0, 100.3);
            SetSkill(SkillName.MagicResist, 65.0, 77.5);
            SetSkill(SkillName.Swords, 95.0, 100.5);
            SetSkill(SkillName.Tactics, 75.0, 99.5);

            Fame  = 7000;
            Karma = -7000;

            PackArmor(2, 5);
            PackWeapon(3, 5);
            PackWeapon(5, 5);
            PackSlayer();
        }
Пример #17
0
        private void CreateClassic()
        {
            m_MoveSound    = 821;
            m_CaptureSound = 1094;
            m_DeathSound   = 1059;

            m_Piece.Female    = false;
            m_Piece.BodyValue = 0x190;

            if (m_BChessboard.OverrideMinorHue)
            {
                m_Piece.Hue = Hue;
            }
            else
            {
                m_Piece.Hue = m_BChessboard.SkinHue;
            }
            m_Piece.AddItem(new ShortHair(m_BChessboard.OverrideMinorHue ? Hue : m_BChessboard.HairHue));

            Item item = null;

            if (m_Color == ChessColor.White)
            {
                item = new OrderShield();
                m_Piece.AddItem(item);
            }
            else
            {
                item = new ChaosShield();
                m_Piece.AddItem(item);
            }


            item     = new ChainChest();
            item.Hue = Hue;
            m_Piece.AddItem(item);

            item     = new ChainLegs();
            item.Hue = MinorHue;
            m_Piece.AddItem(item);

            item     = new Boots();
            item.Hue = Hue;
            m_Piece.AddItem(item);

            item = new Scimitar();
            m_Piece.AddItem(item);
        }
Пример #18
0
        public Ozymandias() : base(AIType.AI_Melee)
        {
            Name  = "Ozymandias";
            Title = "the Lord of Castle Barataria";

            Hue              = Race.RandomSkinHue();
            Body             = 0x190;
            FacialHairItemID = 0x2040;

            SetInt(225, 250);
            SetDex(225);

            SetDamage(25, 32);

            SetDamageType(ResistanceType.Physical, 100);

            SetSkill(SkillName.Wrestling, 150.0);
            SetSkill(SkillName.Archery, 150.0);
            SetSkill(SkillName.Anatomy, 100.0);
            SetSkill(SkillName.Tactics, 125.0);
            SetSkill(SkillName.MagicResist, 110.0);

            SetResistance(ResistanceType.Physical, 60, 70);
            SetResistance(ResistanceType.Fire, 20, 30);
            SetResistance(ResistanceType.Cold, 60, 70);
            SetResistance(ResistanceType.Poison, 60, 70);
            SetResistance(ResistanceType.Energy, 60, 70);

            SetWearable(new LeatherDo());
            SetWearable(new LeatherSuneate());
            SetWearable(new Yumi());
            SetWearable(new Waraji());
            SetWearable(new BoneArms());

            Scimitar scimitar = new Scimitar
            {
                Movable = false
            };

            PackItem(scimitar);

            _ = new LesserHiryu
            {
                Rider = this
            };

            SetWeaponAbility(WeaponAbility.Dismount);
        }
Пример #19
0
        public override bool OnBeforeDeath()
        {
            Scimitar weapon = new Scimitar();

            weapon.DamageLevel     = (WeaponDamageLevel)Utility.Random(0, 5);
            weapon.DurabilityLevel = (WeaponDurabilityLevel)Utility.Random(0, 5);
            weapon.AccuracyLevel   = (WeaponAccuracyLevel)Utility.Random(0, 5);

            weapon.MoveToWorld(this.Location, this.Map);

            // TODO: need to handle this Category 2 MID
            // Category 2 MID
            // PackMagicItem( 1, 1, 0.05 );

            this.Delete();
            return(false);
        }
Пример #20
0
        public Ozymandias() : base(AIType.AI_Melee)
        {
            Name  = "ozymandias";
            Title = "the lord of castle barataria";

            Hue              = Race.RandomSkinHue();
            Body             = 0x190;
            FacialHairItemID = 0x2040;

            SetInt(225, 250);
            SetDex(225);

            SetDamage(25, 32);

            SetDamageType(ResistanceType.Physical, 100);

            SetSkill(SkillName.Wrestling, 150.0);
            SetSkill(SkillName.Archery, 150.0);
            SetSkill(SkillName.Anatomy, 100.0);
            SetSkill(SkillName.Tactics, 125.0);
            SetSkill(SkillName.MagicResist, 110.0);

            SetResistance(ResistanceType.Physical, 60, 70);
            SetResistance(ResistanceType.Fire, 20, 30);
            SetResistance(ResistanceType.Cold, 60, 70);
            SetResistance(ResistanceType.Poison, 60, 70);
            SetResistance(ResistanceType.Energy, 60, 70);

            SetWearable(new LeatherDo());
            SetWearable(new LeatherSuneate());
            SetWearable(new Yumi());
            SetWearable(new Waraji());
            SetWearable(new BoneArms());

            var scimitar = new Scimitar();

            scimitar.Movable = false;

            PackItem(scimitar);
            PackItem(new Arrow(25));

            var hiryu = new LesserHiryu();

            hiryu.Rider = this;
        }
Пример #21
0
        public override void OnDeath(Container c)
        {
            base.OnDeath(c);

            Mobile killer = this.LastKiller;

            if (killer != null)
            {
                if (killer is BaseCreature)
                {
                    killer = ((BaseCreature)killer).GetMaster();
                }

                if (killer is PlayerMobile)
                {
                    if (GetPlayerInfo.LuckyKiller(killer.Luck) && Utility.RandomMinMax(1, 4) == 1)
                    {
                        switch (Utility.RandomMinMax(0, 9))
                        {
                        case 0: Item loot1 = new StuddedChest(); MorphingItem.MorphMyItem(loot1, "IGNORED", "Murk's Pirate", "IGNORED", MorphingTemplates.TemplateMurk("armors")); c.DropItem(loot1); break;

                        case 1: Item loot2 = new StuddedArms(); MorphingItem.MorphMyItem(loot2, "IGNORED", "Murk's Pirate", "IGNORED", MorphingTemplates.TemplateMurk("armors")); c.DropItem(loot2); break;

                        case 2: Item loot3 = new StuddedLegs(); MorphingItem.MorphMyItem(loot3, "IGNORED", "Murk's Pirate", "IGNORED", MorphingTemplates.TemplateMurk("armors")); c.DropItem(loot3); break;

                        case 3: Item loot4 = new StuddedGorget(); MorphingItem.MorphMyItem(loot4, "IGNORED", "Murk's Pirate", "IGNORED", MorphingTemplates.TemplateMurk("armors")); c.DropItem(loot4); break;

                        case 4: Item loot5 = new StuddedGloves(); MorphingItem.MorphMyItem(loot5, "IGNORED", "Murk's Pirate", "IGNORED", MorphingTemplates.TemplateMurk("armors")); c.DropItem(loot5); break;

                        case 5: Item loot6 = new MagicHat(); loot6.ItemID = 5915; loot6.Name = "hat"; MorphingItem.MorphMyItem(loot6, "IGNORED", "Murk's Pirate", "IGNORED", MorphingTemplates.TemplateMurk("misc")); c.DropItem(loot6); break;

                        case 6: Item loot7 = new Scimitar(); MorphingItem.MorphMyItem(loot7, "IGNORED", "Murk's Pirate", "IGNORED", MorphingTemplates.TemplateMurk("weapons")); c.DropItem(loot7); break;

                        case 7: Item loot8 = new Buckler(); MorphingItem.MorphMyItem(loot8, "IGNORED", "Murk's Pirate", "IGNORED", MorphingTemplates.TemplateMurk("armors")); c.DropItem(loot8); break;

                        case 8: Item loot9 = new MagicBoots(); loot9.Name = "boots"; loot9.ItemID = 0x170b; MorphingItem.MorphMyItem(loot9, "IGNORED", "Murk's Pirate", "IGNORED", MorphingTemplates.TemplateMurk("misc")); c.DropItem(loot9); break;

                        case 9: Item loot10 = Loot.RandomJewelry(); MorphingItem.MorphMyItem(loot10, "IGNORED", "Murk's Pirate", "IGNORED", MorphingTemplates.TemplateMurk("misc")); c.DropItem(loot10); break;
                        }
                    }
                }
            }
        }
Пример #22
0
        public override bool OnBeforeDeath()
        {
            if (!base.OnBeforeDeath())
            {
                return(false);
            }

            if (Core.UOAI || Core.UOAR)
            {
                Scimitar weapon = new Scimitar();
                weapon.DamageLevel     = (WeaponDamageLevel)Utility.Random(0, 5);
                weapon.DurabilityLevel = (WeaponDurabilityLevel)Utility.Random(0, 5);
                weapon.AccuracyLevel   = (WeaponAccuracyLevel)Utility.Random(0, 5);
                weapon.MoveToWorld(this.Location, this.Map);

                Effects.SendLocationEffect(Location, Map, 0x376A, 10, 1);
            }
            else
            {
                if (Core.UOSP || Core.UOMO)
                {
                    Scimitar weapon = new Scimitar();
                    weapon.DamageLevel     = (WeaponDamageLevel)Utility.Random(0, 5);
                    weapon.DurabilityLevel = (WeaponDurabilityLevel)Utility.Random(0, 5);
                    weapon.AccuracyLevel   = (WeaponAccuracyLevel)Utility.Random(0, 5);
                    weapon.MoveToWorld(this.Location, this.Map);

                    Effects.SendLocationEffect(Location, Map, 0x376A, 10, 1);
                }
                else
                {
                    // run uo code
                    Gold gold = new Gold(Utility.RandomMinMax(240, 375));
                    gold.MoveToWorld(Location, Map);

                    Effects.SendLocationEffect(Location, Map, 0x376A, 10, 1);
                }
            }

            // we don't want a corpse, so refuse the 'death' and just delete the creature
            this.Delete();
            return(false);
        }
Пример #23
0
        private void CreateClassic()
        {
            m_MoveSound    = 821;
            m_CaptureSound = 1094;
            m_DeathSound   = 1059;

            m_Piece.Female    = false;
            m_Piece.BodyValue = 0x190;

            if (m_BChessboard.OverrideMinorHue)
            {
                m_Piece.Hue = Hue;
            }
            else
            {
                m_Piece.Hue = m_BChessboard.SkinHue;
            }

            m_Piece.HairItemID = 0x203B;             //Short Hair
            m_Piece.HairHue    = m_BChessboard.OverrideMinorHue ? Hue : m_BChessboard.HairHue;

            Item item = null;

            item     = new ChainChest();
            item.Hue = Hue;
            m_Piece.AddItem(item);

            item     = new ChainLegs();
            item.Hue = MinorHue;
            m_Piece.AddItem(item);

            item     = new Boots();
            item.Hue = Hue;
            m_Piece.AddItem(item);

            item     = new Buckler();
            item.Hue = MinorHue;
            m_Piece.AddItem(item);

            item     = new Scimitar();
            item.Hue = MinorHue;
            m_Piece.AddItem(item);
        }
Пример #24
0
        public void UsageTest()
        {
            Card x;

            x = new Attack(CardSuit.Club, 0);
            Assert.AreEqual(1, x.numOfTargets());
            x = new Miss(CardSuit.Club, 0);
            Assert.AreEqual(-1, x.numOfTargets()); // this means not usable
            x = new Wine(CardSuit.Club, 0);
            Assert.AreEqual(0, x.numOfTargets());
            x = new Peach(CardSuit.Club, 0);
            Assert.AreEqual(0, x.numOfTargets());
            x = new Negate(CardSuit.Club, 0);
            Assert.AreEqual(-1, x.numOfTargets());
            x = new Barbarians(CardSuit.Club, 0);
            Assert.AreEqual(0, x.numOfTargets());
            x = new HailofArrow(CardSuit.Club, 0);
            Assert.AreEqual(0, x.numOfTargets());
            x = new PeachGarden(CardSuit.Club, 0);
            Assert.AreEqual(0, x.numOfTargets());
            x = new Wealth(CardSuit.Club, 0);
            Assert.AreEqual(0, x.numOfTargets());
            x = new Steal(CardSuit.Club, 0);
            Assert.AreEqual(1, x.numOfTargets());
            x = new Break(CardSuit.Club, 0);
            Assert.AreEqual(1, x.numOfTargets());
            x = new Capture(CardSuit.Club, 0);
            Assert.AreEqual(1, x.numOfTargets());
            x = new Starvation(CardSuit.Club, 0);
            Assert.AreEqual(1, x.numOfTargets());
            x = new Crossbow(CardSuit.Club, 0);
            Assert.AreEqual(0, x.numOfTargets());
            x = new IceSword(CardSuit.Club, 0);
            Assert.AreEqual(0, x.numOfTargets());
            x = new Scimitar(CardSuit.Club, 0);
            Assert.AreEqual(0, x.numOfTargets());
            x = new BlackShield(CardSuit.Club, 0);
            Assert.AreEqual(0, x.numOfTargets());
            x = new EightTrigrams(CardSuit.Club, 0);
            Assert.AreEqual(0, x.numOfTargets());
        }
Пример #25
0
            private static void OnUpdate()
            {
                if (ObjectManager.GetLocalPlayer().IsDead || ObjectManager.GetLocalPlayer().IsRecalling() ||
                    ObjectManager.GetLocalPlayer().IsInFountainRange())
                {
                    return;
                }

                if (!CleanseMenu["SharpShooter.UtilityMenu.CleanseMenu.Enabled"].Enabled ||
                    ObjectManager.GetLocalPlayer().HealthPercent() >
                    CleanseMenu["SharpShooter.UtilityMenu.CleanseMenu.MyHp"].Value)
                {
                    return;
                }

                if (CleanseMenu["SharpShooter.UtilityMenu.CleanseMenu.OnlyCombo"].Enabled &&
                    MyLogic.Orbwalker.Mode != OrbwalkingMode.Combo)
                {
                    return;
                }

                if (CanUse)
                {
                    if (QSS.IsMine && QSS.Ready)
                    {
                        QSS.Cast();
                        CanUse = false;
                    }
                    else if (Scimitar.IsMine && Scimitar.Ready)
                    {
                        Scimitar.Cast();
                        CanUse = false;
                    }
                    else
                    {
                        CanUse = false;
                    }
                }
            }
Пример #26
0
            public InternalSellInfo()
            {
                Add(typeof(Dagger), Dagger.GetSBSellValue());
                Add(typeof(Kryss), Kryss.GetSBSellValue());
                Add(typeof(WarFork), WarFork.GetSBSellValue());
                Add(typeof(ShortSpear), ShortSpear.GetSBSellValue());
                Add(typeof(Pitchfork), Pitchfork.GetSBSellValue());
                Add(typeof(Spear), Spear.GetSBSellValue());

                Add(typeof(HammerPick), HammerPick.GetSBSellValue());
                Add(typeof(WarAxe), WarAxe.GetSBSellValue());
                Add(typeof(Mace), Mace.GetSBSellValue());
                Add(typeof(Maul), Maul.GetSBSellValue());
                Add(typeof(WarHammer), WarHammer.GetSBSellValue());
                Add(typeof(WarMace), WarMace.GetSBSellValue());

                Add(typeof(ButcherKnife), ButcherKnife.GetSBSellValue());
                Add(typeof(SkinningKnife), SkinningKnife.GetSBSellValue());
                Add(typeof(Cleaver), Cleaver.GetSBSellValue());
                Add(typeof(Cutlass), Cutlass.GetSBSellValue());
                Add(typeof(Katana), Katana.GetSBSellValue());
                Add(typeof(Scimitar), Scimitar.GetSBSellValue());
                Add(typeof(Broadsword), Broadsword.GetSBSellValue());
                Add(typeof(Longsword), Longsword.GetSBSellValue());
                Add(typeof(VikingSword), VikingSword.GetSBSellValue());
                Add(typeof(Axe), Axe.GetSBSellValue());
                Add(typeof(BattleAxe), BattleAxe.GetSBSellValue());
                Add(typeof(DoubleAxe), DoubleAxe.GetSBSellValue());
                Add(typeof(ExecutionersAxe), ExecutionersAxe.GetSBSellValue());
                Add(typeof(LargeBattleAxe), LargeBattleAxe.GetSBSellValue());
                Add(typeof(TwoHandedAxe), TwoHandedAxe.GetSBSellValue());
                Add(typeof(Bardiche), Bardiche.GetSBSellValue());
                Add(typeof(Halberd), Halberd.GetSBSellValue());

                Add(typeof(Bow), Bow.GetSBSellValue());
                Add(typeof(Crossbow), Crossbow.GetSBSellValue());
                Add(typeof(HeavyCrossbow), HeavyCrossbow.GetSBSellValue());
            }
Пример #27
0
            public InternalBuyInfo()
            {
                Add(new GenericBuyInfo("Dagger", typeof(Dagger), Dagger.GetSBPurchaseValue(), 25, 0xF52, 0));
                Add(new GenericBuyInfo("Kryss", typeof(Kryss), Kryss.GetSBPurchaseValue(), 25, 0x1401, 0));
                Add(new GenericBuyInfo("War Fork", typeof(WarFork), WarFork.GetSBPurchaseValue(), 25, 0x1405, 0));
                Add(new GenericBuyInfo("Short Spear", typeof(ShortSpear), ShortSpear.GetSBPurchaseValue(), 25, 0x1403, 0));
                Add(new GenericBuyInfo("Pitchfork", typeof(Pitchfork), Pitchfork.GetSBPurchaseValue(), 25, 0xE87, 0));
                Add(new GenericBuyInfo("Spear", typeof(Spear), Spear.GetSBPurchaseValue(), 25, 0xF62, 0));

                Add(new GenericBuyInfo("Hammer Pick", typeof(HammerPick), HammerPick.GetSBPurchaseValue(), 25, 0x143D, 0));
                Add(new GenericBuyInfo("War Axe", typeof(WarAxe), WarAxe.GetSBPurchaseValue(), 25, 0x13B0, 0));
                Add(new GenericBuyInfo("Mace", typeof(Mace), Mace.GetSBPurchaseValue(), 25, 0xF5C, 0));
                Add(new GenericBuyInfo("Maul", typeof(Maul), Maul.GetSBPurchaseValue(), 25, 0x143B, 0));
                Add(new GenericBuyInfo("WarHammer", typeof(WarHammer), WarHammer.GetSBPurchaseValue(), 25, 0x1439, 0));
                Add(new GenericBuyInfo("War Mace", typeof(WarMace), WarMace.GetSBPurchaseValue(), 25, 0x1407, 0));

                Add(new GenericBuyInfo("Butcher Knife", typeof(ButcherKnife), ButcherKnife.GetSBPurchaseValue(), 25, 0x13F6, 0));
                Add(new GenericBuyInfo("Skinning Knife", typeof(SkinningKnife), SkinningKnife.GetSBPurchaseValue(), 25, 0xEC4, 0));
                Add(new GenericBuyInfo("Cleaver", typeof(Cleaver), Cleaver.GetSBPurchaseValue(), 25, 0xEC3, 0));
                Add(new GenericBuyInfo("Cutlass", typeof(Cutlass), Cutlass.GetSBPurchaseValue(), 25, 0x1441, 0));
                Add(new GenericBuyInfo("Katana", typeof(Katana), Katana.GetSBPurchaseValue(), 25, 0x13FF, 0));
                Add(new GenericBuyInfo("Scimitar", typeof(Scimitar), Scimitar.GetSBPurchaseValue(), 25, 0x13B6, 0));
                Add(new GenericBuyInfo("Broadsword", typeof(Broadsword), Broadsword.GetSBPurchaseValue(), 25, 0xF5E, 0));
                Add(new GenericBuyInfo("Longsword", typeof(Longsword), Longsword.GetSBPurchaseValue(), 25, 0xF61, 0));
                Add(new GenericBuyInfo("Viking Sword", typeof(VikingSword), VikingSword.GetSBPurchaseValue(), 25, 0x13B9, 0));
                Add(new GenericBuyInfo("Axe", typeof(Axe), Axe.GetSBPurchaseValue(), 25, 0xF49, 0));
                Add(new GenericBuyInfo("Battle Axe", typeof(BattleAxe), BattleAxe.GetSBPurchaseValue(), 25, 0xF47, 0));
                Add(new GenericBuyInfo("Double Axe", typeof(DoubleAxe), DoubleAxe.GetSBPurchaseValue(), 25, 0xF4B, 0));
                Add(new GenericBuyInfo("Executioner's Axe", typeof(ExecutionersAxe), ExecutionersAxe.GetSBPurchaseValue(), 25, 0xF45, 0));
                Add(new GenericBuyInfo("Large Battle Axe", typeof(LargeBattleAxe), LargeBattleAxe.GetSBPurchaseValue(), 25, 0x13FB, 0));
                Add(new GenericBuyInfo("Two-Handed Axe", typeof(TwoHandedAxe), TwoHandedAxe.GetSBPurchaseValue(), 25, 0x1443, 0));
                Add(new GenericBuyInfo("Bardiche", typeof(Bardiche), Bardiche.GetSBPurchaseValue(), 25, 0xF4D, 0));
                Add(new GenericBuyInfo("Halberd", typeof(Halberd), Halberd.GetSBPurchaseValue(), 25, 0x143E, 0));

                Add(new GenericBuyInfo("Bow", typeof(Bow), Bow.GetSBPurchaseValue(), 25, 0x13B2, 0));
                Add(new GenericBuyInfo("Crossbow", typeof(Crossbow), Crossbow.GetSBPurchaseValue(), 25, 0xF50, 0));
                Add(new GenericBuyInfo("Heavy Crossbow", typeof(HeavyCrossbow), HeavyCrossbow.GetSBPurchaseValue(), 25, 0x13FD, 0));
            }
Пример #28
0
        public override bool OnBeforeDeath()
        {
            IMount mount = this.Mount;

            if (mount != null)
            {
                mount.Rider = null;
            }

            if (mount != null && mount is Mobile)
            {
                ((Mobile)mount).Delete();
            }

            // Neira's sword can't drop unless it's movable
            if (Weapon is Scimitar)
            {   // add some attributes now to make it a tad more interesting
                Scimitar weapon = Loot.ImbueWeaponOrArmor(Weapon as Scimitar, 6, 0, false) as Scimitar;
                weapon.Movable = true;
            }

            return(base.OnBeforeDeath());
        }
Пример #29
0
        public MilitiaFighter() : base(AIType.AI_Melee, FightMode.All | FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            InitStats(40, 30, 5);
            Title = "the Militia Fighter";

            SpeechHue = Utility.RandomDyedHue();

            Hue = Utility.RandomSkinHue();

            Female = false;
            Body   = 0x190;
            Name   = NameList.RandomName("male");

            Item hair = new Item(Utility.RandomList(0x203B, 0x203C, 0x203D, 0x2044, 0x2045, 0x2047, 0x2049, 0x204A));

            hair.Hue     = Utility.RandomHairHue();
            hair.Layer   = Layer.Hair;
            hair.Movable = false;
            AddItem(hair);

            Item beard = new Item(Utility.RandomList(0x203E, 0x203F, 0x2040, 0x2041, 0x204B, 0x204C, 0x204D));

            beard.Hue     = hair.Hue;
            beard.Layer   = Layer.FacialHair;
            beard.Movable = false;
            AddItem(beard);

            AddItem(new ThighBoots(0x1BB));
            AddItem(new LeatherChest());
            AddItem(new LeatherArms());
            AddItem(new LeatherLegs());
            AddItem(new LeatherCap());
            AddItem(new LeatherGloves());
            AddItem(new LeatherGorget());

            Item weapon;

            switch (Utility.Random(6))
            {
            case 0: weapon = new Broadsword(); break;

            case 1: weapon = new Cutlass(); break;

            case 2: weapon = new Katana(); break;

            case 3: weapon = new Longsword(); break;

            case 4: weapon = new Scimitar(); break;

            default: weapon = new VikingSword(); break;
            }
            weapon.Movable = false;
            AddItem(weapon);

            Item shield = new BronzeShield();

            shield.Movable = false;
            AddItem(shield);

            SetSkill(SkillName.Swords, 20.0);
        }
Пример #30
0
        public Finlor()
        {
            Name      = "Finlor";
            Title     = "the Sea Captain";
            Body      = 0x190;
            Hue       = Utility.RandomSkinHue();
            Blessed   = true;
            CantWalk  = true;
            Direction = Direction.South;

            ThighBoots tb = new ThighBoots();

            tb.Hue = 0;
            AddItem(tb);

            LongPants lp = new LongPants();

            lp.Hue = 6;
            AddItem(lp);

            FancyShirt fs = new FancyShirt();

            fs.Hue = 0;
            AddItem(fs);

            TricorneHat th = new TricorneHat();

            th.Hue = 52;
            AddItem(th);

            BodySash bs = new BodySash();

            bs.Hue = 6;
            AddItem(bs);

            Cloak cl = new Cloak();

            cl.Hue = 38;
            AddItem(cl);

            Scimitar sc = new Scimitar();

            AddItem(sc);

            GoldBeadNecklace gn = new GoldBeadNecklace();

            AddItem(gn);

            GoldBracelet gb = new GoldBracelet();

            AddItem(gb);

            GoldEarrings ge = new GoldEarrings();

            AddItem(ge);

            GoldRing gr = new GoldRing();

            AddItem(gr);

            AddItem(new PonyTail(1149));

            AddItem(new Vandyke(1149));
        }