Example #1
0
        public static void EquipMhordul(Armament a, Mobile m)
        {
            if (a == Armament.LightCavalry)
                a = (Armament)1;
            else if (a == Armament.HeavyCavalry)
                a = (Armament)3;

            Sandals sandals = new Sandals();
            sandals.Resource = CraftResource.BeastLeather;
            sandals.Hue = 1194;
            m.EquipItem(sandals);

            MhordulBoneArms mba = new MhordulBoneArms();
            mba.Hue = 2101;
            m.EquipItem(mba);

            switch (a)
            {
                case Armament.Light:
                    {
                        MhordulBoneHelm mbh = new MhordulBoneHelm();
                        mbh.Hue = 2101;
                        m.EquipItem(mbh);

                        StuddedLegs sl = new StuddedLegs();
                        sl.Resource = CraftResource.BeastLeather;
                        m.EquipItem(sl);

                        if (m.Female)
                        {
                            m.EquipItem(new SmallRaggedSkirt(1194));
                            m.EquipItem(new RaggedBra(1194));
                        }
                        else
                        {
                            MhordulMedicineManBoneChest bc = new MhordulMedicineManBoneChest();
                            bc.Hue = 2101;
                            m.EquipItem(bc);
                        }

                        MhordulBoneSword mbs = new MhordulBoneSword();
                        m.EquipItem(mbs);

                        MhordulBoneShield shield = new MhordulBoneShield();
                        m.EquipItem(shield);

                        break;
                    }
                case Armament.Medium:
                    {
                        MhordulBoneHelm mbh = new MhordulBoneHelm();
                        mbh.Hue = 2101;
                        m.EquipItem(mbh);

                        MhordulBoneLegs mbl = new MhordulBoneLegs();
                        mbl.Hue = 2101;
                        m.EquipItem(mbl);

                        MhordulBoneGloves mbg = new MhordulBoneGloves();
                        mbg.Hue = 2101;
                        m.EquipItem(mbg);

                        StuddedChest chest = new StuddedChest();
                        chest.Hue = 2101;
                        m.EquipItem(chest);

                        if (m.Female)
                        {
                            m.EquipItem(new RaggedSkirt(1194));
                        }
                        else
                            m.EquipItem(new WaistCloth(1194));

                        if (Utility.RandomBool())
                            m.EquipItem(new MhordulBoneSpear());
                        else
                            m.EquipItem(new MhordulBoneScythe());

                        break;
                    }
                case Armament.Heavy:
                    {
                        MhordulHornedSkullHelm mhsh = new MhordulHornedSkullHelm();
                        mhsh.Hue = 2101;
                        m.EquipItem(mhsh);

                        MhordulBoneChest mbc = new MhordulBoneChest();
                        mbc.Hue = 2101;
                        m.EquipItem(mbc);

                        MhordulBoneLegs mbl = new MhordulBoneLegs();
                        mbl.Hue = 2101;
                        m.EquipItem(mbl);

                        MhordulBoneGloves mbg = new MhordulBoneGloves();
                        mbg.Hue = 2101;
                        m.EquipItem(mbg);

                        MhordulBoneShield mbs = new MhordulBoneShield();
                        mbs.Hue = 2101;
                        m.EquipItem(mbs);

                        if(m.Female)
                            m.EquipItem(new SmallRaggedSkirt(1194));

                        if (Utility.RandomBool())
                        {
                            MhordulWarFork mwf = new MhordulWarFork();
                            mwf.Resource = CraftResource.Iron;
                            m.EquipItem(mwf);
                        }

                        else
                            m.EquipItem(new MhordulBoneAxe());

                        break;
                    }
                case Armament.Ranged:
                    {
                        MhordulBoneHelm mbh = new MhordulBoneHelm();
                        mbh.Hue = 2101;
                        m.EquipItem(mbh);

                        m.EquipItem(new MhordulBoneBow());

                        if (m.Female)
                        {
                            m.EquipItem(new SmallRaggedSkirt(1194));
                            m.EquipItem(new RaggedBra(1194));
                        }

                        else
                            m.EquipItem(new RaggedPants(1194));

                        if (m is BaseCreature)
                        {
                            BaseCreature bc = m as BaseCreature;
                            bc.AI = AIType.AI_Archer;
                            bc.PackItem(new Arrow(Utility.RandomMinMax(10, 20)));
                        }

                        break;
                    }
            }
        }
        protected override void OnTarget(Mobile from, object targeted)
        {
            if (!(targeted is BaseAttackPiece))
                return;

            m_Blade = targeted as BaseAttackPiece;

            if (m_Blade is LongBlade && ((PlayerMobile)from).Nation == Nation.Azhuran)// )
            {
                AzhuranBroadsword weapon = new AzhuranBroadsword();
                weapon.NewCrafting = true;
                weapon.QualityDamage = m_Hilt.Damage + m_Blade.Damage;
                weapon.QualitySpeed = m_Hilt.Speed + m_Blade.Speed;
                weapon.QualityAccuracy = m_Hilt.Attack + m_Blade.Attack;
                weapon.QualityDefense = m_Hilt.Defense + m_Blade.Defense;
                weapon.Resource = m_Blade.Resource;
                int quality = (int)(m_Blade.Durability * 0.8 + m_Hilt.Durability * 0.2);
                weapon.MaxHitPoints = quality; weapon.HitPoints = quality;
                weapon.Crafter = from;
                weapon.CraftersOriginalName = from.Name;
                quality = (int)(m_Blade.Quality * 0.8 + m_Hilt.Quality * 0.2);
                if (quality == 500)
                    weapon.Quality = WeaponQuality.Legendary;
                if (quality < 500)
                    weapon.Quality = WeaponQuality.Masterwork;
                if (quality < 450)
                    weapon.Quality = WeaponQuality.Illustrious;
                if (quality < 400)
                    weapon.Quality = WeaponQuality.Extraordinary;
                if (quality < 350)
                    weapon.Quality = WeaponQuality.Remarkable;
                if (quality < 300)
                    weapon.Quality = WeaponQuality.Exceptional;
                if (quality < 250)
                    weapon.Quality = WeaponQuality.Superior;
                if (quality < 200)
                    weapon.Quality = WeaponQuality.Regular;
                if (quality < 150)
                    weapon.Quality = WeaponQuality.Inferior;
                if (quality < 100)
                    weapon.Quality = WeaponQuality.Low;
                if (quality < 50)
                    weapon.Quality = WeaponQuality.Poor;
                weapon.BetaNerf = true;
                weapon.InvalidateProperties();
                from.AddToBackpack(weapon);
                weapon.AddItem(m_Blade);
                weapon.AddItem(m_Hilt);
            }
            if (m_Blade is MediumBlade && ((PlayerMobile)from).Nation == Nation.Vhalurian)
            {
                VhalurianBroadsword weapon = new VhalurianBroadsword();
                weapon.NewCrafting = true;
                weapon.QualityDamage = m_Hilt.Damage + m_Blade.Damage;
                weapon.QualitySpeed = m_Hilt.Speed + m_Blade.Speed;
                weapon.QualityAccuracy = m_Hilt.Attack + m_Blade.Attack;
                weapon.QualityDefense = m_Hilt.Defense + m_Blade.Defense;
                weapon.Resource = m_Blade.Resource;
                int quality = (int)(m_Blade.Durability * 0.75 + m_Hilt.Durability * 0.25);
                weapon.MaxHitPoints = quality; weapon.HitPoints = quality;
                weapon.Crafter = from;
                weapon.CraftersOriginalName = from.Name;
                quality = (int)(m_Blade.Quality * 0.75 + m_Hilt.Quality * 0.25);
                if (quality == 500)
                    weapon.Quality = WeaponQuality.Legendary;
                if (quality < 500)
                    weapon.Quality = WeaponQuality.Masterwork;
                if (quality < 450)
                    weapon.Quality = WeaponQuality.Illustrious;
                if (quality < 400)
                    weapon.Quality = WeaponQuality.Extraordinary;
                if (quality < 350)
                    weapon.Quality = WeaponQuality.Remarkable;
                if (quality < 300)
                    weapon.Quality = WeaponQuality.Exceptional;
                if (quality < 250)
                    weapon.Quality = WeaponQuality.Superior;
                if (quality < 200)
                    weapon.Quality = WeaponQuality.Regular;
                if (quality < 150)
                    weapon.Quality = WeaponQuality.Inferior;
                if (quality < 100)
                    weapon.Quality = WeaponQuality.Low;
                if (quality < 50)
                    weapon.Quality = WeaponQuality.Poor;
                weapon.BetaNerf = true;
                weapon.InvalidateProperties();
                from.AddToBackpack(weapon);
                weapon.AddItem(m_Blade);
                weapon.AddItem(m_Hilt);
            }
            if (m_Blade is LongBlade && ((PlayerMobile)from).Nation == Nation.Vhalurian)
            {
                VhalurianBastardSword weapon = new VhalurianBastardSword();
                weapon.NewCrafting = true;
                weapon.QualityDamage = m_Hilt.Damage + m_Blade.Damage;
                weapon.QualitySpeed = m_Hilt.Speed + m_Blade.Speed;
                weapon.QualityAccuracy = m_Hilt.Attack + m_Blade.Attack;
                weapon.QualityDefense = m_Hilt.Defense + m_Blade.Defense;
                weapon.Resource = m_Blade.Resource;
                int quality = (int)(m_Blade.Durability * 0.75 + m_Hilt.Durability * 0.25);
                weapon.MaxHitPoints = quality; weapon.HitPoints = quality;
                weapon.Crafter = from;
                weapon.CraftersOriginalName = from.Name;
                quality = (int)(m_Blade.Quality * 0.75 + m_Hilt.Quality * 0.25);
                if (quality == 500)
                    weapon.Quality = WeaponQuality.Legendary;
                if (quality < 500)
                    weapon.Quality = WeaponQuality.Masterwork;
                if (quality < 450)
                    weapon.Quality = WeaponQuality.Illustrious;
                if (quality < 400)
                    weapon.Quality = WeaponQuality.Extraordinary;
                if (quality < 350)
                    weapon.Quality = WeaponQuality.Remarkable;
                if (quality < 300)
                    weapon.Quality = WeaponQuality.Exceptional;
                if (quality < 250)
                    weapon.Quality = WeaponQuality.Superior;
                if (quality < 200)
                    weapon.Quality = WeaponQuality.Regular;
                if (quality < 150)
                    weapon.Quality = WeaponQuality.Inferior;
                if (quality < 100)
                    weapon.Quality = WeaponQuality.Low;
                if (quality < 50)
                    weapon.Quality = WeaponQuality.Poor;
                weapon.BetaNerf = true;
                weapon.InvalidateProperties();
                from.AddToBackpack(weapon);
                weapon.AddItem(m_Blade);
                weapon.AddItem(m_Hilt);
            }
            if (m_Blade is LongBlade && ((PlayerMobile)from).Nation == Nation.Tyrean)
            {
                TyreanBastardSword weapon = new TyreanBastardSword();
                weapon.NewCrafting = true;
                weapon.QualityDamage = m_Hilt.Damage + m_Blade.Damage;
                weapon.QualitySpeed = m_Hilt.Speed + m_Blade.Speed;
                weapon.QualityAccuracy = m_Hilt.Attack + m_Blade.Attack;
                weapon.QualityDefense = m_Hilt.Defense + m_Blade.Defense;
                weapon.Resource = m_Blade.Resource;
                int quality = (int)(m_Blade.Durability * 0.75 + m_Hilt.Durability * 0.25);
                weapon.MaxHitPoints = quality; weapon.HitPoints = quality;
                weapon.Crafter = from;
                weapon.CraftersOriginalName = from.Name;
                quality = (int)(m_Blade.Quality * 0.75 + m_Hilt.Quality * 0.25);
                if (quality == 500)
                    weapon.Quality = WeaponQuality.Legendary;
                if (quality < 500)
                    weapon.Quality = WeaponQuality.Masterwork;
                if (quality < 450)
                    weapon.Quality = WeaponQuality.Illustrious;
                if (quality < 400)
                    weapon.Quality = WeaponQuality.Extraordinary;
                if (quality < 350)
                    weapon.Quality = WeaponQuality.Remarkable;
                if (quality < 300)
                    weapon.Quality = WeaponQuality.Exceptional;
                if (quality < 250)
                    weapon.Quality = WeaponQuality.Superior;
                if (quality < 200)
                    weapon.Quality = WeaponQuality.Regular;
                if (quality < 150)
                    weapon.Quality = WeaponQuality.Inferior;
                if (quality < 100)
                    weapon.Quality = WeaponQuality.Low;
                if (quality < 50)
                    weapon.Quality = WeaponQuality.Poor;
                weapon.BetaNerf = true;
                weapon.InvalidateProperties();
                from.AddToBackpack(weapon);
                weapon.AddItem(m_Blade);
                weapon.AddItem(m_Hilt);
            }
            if (m_Blade is CurvedBlade && ((IKhaerosMobile)from).Feats.GetFeatLevel(FeatList.Bone) >= 3 && from.Backpack.ConsumeTotal(typeof(Bone), 10))
            {
                MhordulBoneSword weapon = new MhordulBoneSword();
                weapon.NewCrafting = true;
                weapon.QualityDamage = m_Hilt.Damage + m_Blade.Damage + 2;
                weapon.QualitySpeed = m_Hilt.Speed + m_Blade.Speed + 4;
                weapon.QualityAccuracy = m_Hilt.Attack + m_Blade.Attack;
                weapon.QualityDefense = m_Hilt.Defense + m_Blade.Defense;
                weapon.Resource = m_Blade.Resource;
                int quality = (int)(m_Blade.Durability * 0.75 + m_Hilt.Durability * 0.25);
                weapon.MaxHitPoints = quality; weapon.HitPoints = quality;
                weapon.Crafter = from;
                weapon.CraftersOriginalName = from.Name;
                quality = (int)(m_Blade.Quality * 0.75 + m_Hilt.Quality * 0.25);
                if (quality == 500)
                    weapon.Quality = WeaponQuality.Legendary;
                if (quality < 500)
                    weapon.Quality = WeaponQuality.Masterwork;
                if (quality < 450)
                    weapon.Quality = WeaponQuality.Illustrious;
                if (quality < 400)
                    weapon.Quality = WeaponQuality.Extraordinary;
                if (quality < 350)
                    weapon.Quality = WeaponQuality.Remarkable;
                if (quality < 300)
                    weapon.Quality = WeaponQuality.Exceptional;
                if (quality < 250)
                    weapon.Quality = WeaponQuality.Superior;
                if (quality < 200)
                    weapon.Quality = WeaponQuality.Regular;
                if (quality < 150)
                    weapon.Quality = WeaponQuality.Inferior;
                if (quality < 100)
                    weapon.Quality = WeaponQuality.Low;
                if (quality < 50)
                    weapon.Quality = WeaponQuality.Poor;
                weapon.BetaNerf = true;
                weapon.InvalidateProperties();
                from.AddToBackpack(weapon);
                weapon.AddItem(m_Blade);
                weapon.AddItem(m_Hilt);
            }
            if (m_Blade is ShortBlade && ((PlayerMobile)from).Nation == Nation.Azhuran)
            {
                AzhuranShortsword weapon = new AzhuranShortsword();
                weapon.NewCrafting = true;
                weapon.QualityDamage = m_Hilt.Damage + m_Blade.Damage;
                weapon.QualitySpeed = m_Hilt.Speed + m_Blade.Speed;
                weapon.QualityAccuracy = m_Hilt.Attack + m_Blade.Attack;
                weapon.QualityDefense = m_Hilt.Defense + m_Blade.Defense;
                weapon.Resource = m_Blade.Resource;
                int quality = (int)(m_Blade.Durability * 0.6 + m_Hilt.Durability * 0.4);
                weapon.MaxHitPoints = quality; weapon.HitPoints = quality;
                weapon.Crafter = from;
                weapon.CraftersOriginalName = from.Name;
                quality = (int)(m_Blade.Quality * 0.6 + m_Hilt.Quality * 0.4);
                if (quality == 500)
                    weapon.Quality = WeaponQuality.Legendary;
                if (quality < 500)
                    weapon.Quality = WeaponQuality.Masterwork;
                if (quality < 450)
                    weapon.Quality = WeaponQuality.Illustrious;
                if (quality < 400)
                    weapon.Quality = WeaponQuality.Extraordinary;
                if (quality < 350)
                    weapon.Quality = WeaponQuality.Remarkable;
                if (quality < 300)
                    weapon.Quality = WeaponQuality.Exceptional;
                if (quality < 250)
                    weapon.Quality = WeaponQuality.Superior;
                if (quality < 200)
                    weapon.Quality = WeaponQuality.Regular;
                if (quality < 150)
                    weapon.Quality = WeaponQuality.Inferior;
                if (quality < 100)
                    weapon.Quality = WeaponQuality.Low;
                if (quality < 50)
                    weapon.Quality = WeaponQuality.Poor;
                weapon.BetaNerf = true;
                weapon.InvalidateProperties();
                from.AddToBackpack(weapon);
                weapon.AddItem(m_Blade);
                weapon.AddItem(m_Hilt);
            }
        }