Inheritance: BaseAxe
        public override void OnSpeech(SpeechEventArgs e)
        {
            #region Here is the list of Random Words you can use
            string dat_Facet = TalkingNPCsXMLReader.RandomName("dat_Facet");
            string dat_TownRegion = TalkingNPCsXMLReader.RandomName("dat_TownRegion");
            string dat_DungeonRegion = TalkingNPCsXMLReader.RandomName("dat_DungeonRegion");
            string dat_NoHousingRegion = TalkingNPCsXMLReader.RandomName("dat_NoHousingRegion");
            string dat_Other = TalkingNPCsXMLReader.RandomName("dat_Other");
            string dat_Shrine = TalkingNPCsXMLReader.RandomName("dat_Shrine");
            string dat_article1 = TalkingNPCsXMLReader.RandomName("dat_article");
            string dat_article2 = TalkingNPCsXMLReader.RandomName("dat_article");
            string dat_noun1 = TalkingNPCsXMLReader.RandomName("dat_noun");
            string dat_noun2 = TalkingNPCsXMLReader.RandomName("dat_noun");
            string dat_noun3 = TalkingNPCsXMLReader.RandomName("dat_noun");
            string dat_noun4 = TalkingNPCsXMLReader.RandomName("dat_noun");
            string dat_verb1 = TalkingNPCsXMLReader.RandomName("dat_verb");
            string dat_verb2 = TalkingNPCsXMLReader.RandomName("dat_verb");
            string dat_verbing1 = TalkingNPCsXMLReader.RandomName("dat_verbing");
            string dat_verbing2 = TalkingNPCsXMLReader.RandomName("dat_verbing");
            string dat_verb3rd1 = TalkingNPCsXMLReader.RandomName("dat_verb3rd");
            string dat_verb3rd2 = TalkingNPCsXMLReader.RandomName("dat_verb3rd");
            string dat_verbed1 = TalkingNPCsXMLReader.RandomName("dat_verbed");
            string dat_verbed2 = TalkingNPCsXMLReader.RandomName("dat_verbed");
            string dat_preposition1 = TalkingNPCsXMLReader.RandomName("dat_preposition");
            string dat_preposition2 = TalkingNPCsXMLReader.RandomName("dat_preposition");
            string dat_adj1 = TalkingNPCsXMLReader.RandomName("dat_adj");
            string dat_adj2 = TalkingNPCsXMLReader.RandomName("dat_adj");
            string dat_Greeting = TalkingNPCsXMLReader.RandomName("dat_Greeting");
            string dat_Language1 = TalkingNPCsXMLReader.RandomName("dat_Language");
            string dat_Language2 = TalkingNPCsXMLReader.RandomName("dat_Language");
            string dat_Language3 = TalkingNPCsXMLReader.RandomName("dat_Language");
            string dat_Armor = TalkingNPCsXMLReader.RandomName("dat_Armor");
            string dat_Creature1 = TalkingNPCsXMLReader.RandomName("dat_Creature");
            string dat_Creature2 = TalkingNPCsXMLReader.RandomName("dat_Creature");
            string dat_Room1 = TalkingNPCsXMLReader.RandomName("dat_Room");
            string dat_Room2 = TalkingNPCsXMLReader.RandomName("dat_Room");
            string dat_Furniture1 = TalkingNPCsXMLReader.RandomName("dat_Furniture");
            string dat_Furniture2 = TalkingNPCsXMLReader.RandomName("dat_Furniture");
            string dat_Liquid1 = TalkingNPCsXMLReader.RandomName("dat_Liquid");
            string dat_Number1 = TalkingNPCsXMLReader.RandomName("dat_Number");
            string dat_PlayingCards = TalkingNPCsXMLReader.RandomName("dat_PlayingCards");
            string dat_MinocShop = TalkingNPCsXMLReader.RandomName("dat_MinocShop");
            string dat_MinocShopQuestItem = TalkingNPCsXMLReader.RandomName("dat_MinocShopQuestItem");
            #endregion

            string playername = e.Mobile.Name;
            string speech = e.Speech.ToLower();

            #region Player says "Hi"
            for (int i = 0; i < Greetings.Length; i++)
                if (speech == Greetings[i])
                {
                    switch (Utility.Random(4))  //picks one of the following
                    {
                        case 0:
                            { Say(String.Format("{0}, {1} found {2}, would you like to look for something too?", dat_Greeting, dat_Creature1, dat_Armor)); break; }
                        case 1:
                            { Say(String.Format("A quest for {0} {1}?  Just say 'YES'!", dat_adj1, playername)); break; }
                        case 2:
                            { Say(String.Format("{0} I have may quest for you, do you wish to join?", playername)); break; }
                        case 3:
                            { Say(String.Format("{0}, there are so many quest, just ask for one.", playername)); break; }
                    }
                }
            #endregion

            #region Play says "Yes" or some other response
            for (int i = 0; i < Response.Length; i++)
                if (speech == Response[i])
                {
                    if (m_ItemHasBeenReturned == true)
                    {
                        switch (Utility.Random(4))  //picks one of the following
                        {
                            case 0:
                                {
                                    playername = char.ToUpper(playername[0]) + playername.Substring(1);
                                    string TheQuest = String.Format("QUEST: (1 Hour Limit) - {0} is searching for a {1} near the {2} in Minoc.", playername, dat_MinocShopQuestItem, dat_MinocShop);
                                    World.Broadcast(0x35, true, TheQuest);
                                    e.Mobile.SendGump(new QuestTemplate(dat_MinocShopQuestItem, TheQuest));
                                    break;
                                }
                            case 1:
                                {
                                    string TheQuest = String.Format("QUEST: (1 Hour Limit) - Find the {0} near the {1} in Minoc and return it to {2}.", dat_MinocShopQuestItem, dat_MinocShop, playername);
                                    World.Broadcast(0x35, true, TheQuest);
                                    e.Mobile.SendGump(new QuestTemplate(dat_MinocShopQuestItem, TheQuest));
                                    break;
                                }
                            case 2:
                                {
                                    string TheQuest = String.Format("QUEST: (1 Hour Limit) - Help {0} in Minoc find the {1} near the {2}.", playername, dat_MinocShopQuestItem, dat_MinocShop);
                                    World.Broadcast(0x35, true, TheQuest);
                                    e.Mobile.SendGump(new QuestTemplate(dat_MinocShopQuestItem, TheQuest));
                                    break;
                                }
                            case 3:
                                {
                                    string TheQuest = String.Format("QUEST: (1 Hour Limit) - Lost in Minoc, is a {0}.  Said to be near the {1}, seek out {2} for more information.", dat_MinocShopQuestItem, dat_MinocShop, playername);
                                    World.Broadcast(0x35, true, TheQuest);
                                    e.Mobile.SendGump(new QuestTemplate(dat_MinocShopQuestItem, TheQuest));
                                    break;
                                }
                        }

                        //Choose Item Location
                        #region Randomly Pick Location
                        switch (dat_MinocShop)  //picks one of the following
                        {
                            case "Warrior's Battle Gear":
                                x = 2525;
                                y = 578;
                                z = 0;
                                break;

                            case "Healing Hand":
                                x = 2576;
                                y = 603;
                                z = 0;
                                break;

                            case "Bank of Minoc":
                                x = 2505;
                                y = 560;
                                z = 0;
                                break;

                            case "The Forgery":
                                x = 2470;
                                y = 569;
                                z = 5;
                                break;

                            case "The Slaughtered Cow":
                                x = 2472;
                                y = 458;
                                z = 15;
                                break;

                            case "Gears and Gadgets":
                                x = 2472;
                                y = 458;
                                z = 15;
                                break;

                            case "The Oak Throne":
                                x = 2510;
                                y = 482;
                                z = 15;
                                break;

                            case "The Stretched Hide":
                                x = 2523;
                                y = 536;
                                z = 0;
                                break;

                            case "The Barnacle":
                                x = 2470;
                                y = 413;
                                z = 15;
                                break;

                            case "Minoc Town Hall":
                                x = 2428;
                                y = 536;
                                z = 0;
                                break;

                            case "The Mystical Lute":
                                x = 2432;
                                y = 555;
                                z = 0;
                                break;

                            case "The New World Order":
                                x = 2482;
                                y = 440;
                                z = 15;
                                break;

                            case "The Old Miners' Supplies":
                                x = 2459;
                                y = 432;
                                z = 15;
                                break;

                            case "The Golden Pick Axe":
                                x = 2500;
                                y = 440;
                                z = 0;
                                break;

                            case "The Survival Shop":
                                x = 2534;
                                y = 560;
                                z = 0;
                                break;

                            case "The Matewan":
                                x = 2459;
                                y = 492;
                                z = 15;
                                break;

                            case "Stables":
                                x = 2521;
                                y = 379;
                                z = 23;
                                break;

                            case "Counselor's Guild":
                                x = 2436;
                                y = 443;
                                z = 15;
                                break;

                            default:  //if all else fails drop item near by
                                {
                                    x = Location.X + Utility.RandomMinMax(-5, 5);
                                    y = Location.Y + Utility.RandomMinMax(-5, 5);
                                    z = Map.GetAverageZ(x, y);
                                    break;
                                }
                        #endregion

                        }

                        x = x + Utility.RandomMinMax(-5, 5);
                        y = y + Utility.RandomMinMax(-5, 5);

                        if (Map.CanFit(x, y, Location.Z, 1))
                        {
                            Item item = new OrnateAxe();
                            item.Name = dat_MinocShopQuestItem;
                            item.MoveToWorld(new Point3D(x, y, Location.Z), Map);
                            m_ItemHasBeenReturned = false;
                            QuestGiverItemTimer t = new QuestGiverItemTimer();
                            t.Start();
                        }
                        else if (Map.CanFit(x, y, z, 1))
                        {
                            Item item = new OrnateAxe();
                            item.Name = dat_MinocShopQuestItem;
                            item.MoveToWorld(new Point3D(x, y, z), Map);
                            m_ItemHasBeenReturned = false;
                            QuestGiverItemTimer t = new QuestGiverItemTimer();
                            t.Start();
                        }
                    }
                }
            #endregion
        }
Ejemplo n.º 2
0
        public static string MakeThisTask()
        {
            string task = null;

            switch (Utility.RandomMinMax(1, 10))
            {
            case 1: task = "Repair"; break;

            case 2: task = "Fix"; break;

            case 3: task = "Buff"; break;

            case 4: task = "Modify"; break;

            case 5: task = "Polish"; break;

            case 6: task = "Engrave"; break;

            case 7: task = "Adjust"; break;

            case 8: task = "Improve"; break;

            case 9: task = "Smooth the dents from"; break;

            case 10: task = "Remove the dents from"; break;
            }

            Item item = null;

            switch (Utility.RandomMinMax(1, 79))
            {
            case 1: item = new AssassinSpike(); break;

            case 2: item = new Axe(); break;

            case 3: item = new Bardiche(); break;

            case 4: item = new Bascinet(); break;

            case 5: item = new BattleAxe(); break;

            case 6: item = new BoneHarvester(); break;

            case 7: item = new Broadsword(); break;

            case 8: item = new BronzeShield(); break;

            case 9: item = new Buckler(); break;

            case 10: item = new ButcherKnife(); break;

            case 11: item = new ChainChest(); break;

            case 12: item = new ChainCoif(); break;

            case 13: item = new ChainLegs(); break;

            case 14: item = new ChampionShield(); break;

            case 15: item = new Cleaver(); break;

            case 16: item = new CloseHelm(); break;

            case 17: item = new CloseHelm(); break;

            case 18: item = new CrescentBlade(); break;

            case 19: item = new CrestedShield(); break;

            case 20: item = new Cutlass(); break;

            case 21: item = new Dagger(); break;

            case 22: item = new DarkShield(); break;

            case 23: item = new DiamondMace(); break;

            case 24: item = new DoubleAxe(); break;

            case 25: item = new DoubleBladedStaff(); break;

            case 26: item = new DreadHelm(); break;

            case 27: item = new ElvenMachete(); break;

            case 28: item = new ElvenShield(); break;

            case 29: item = new ElvenSpellblade(); break;

            case 30: item = new ExecutionersAxe(); break;

            case 31: item = new FemalePlateChest(); break;

            case 32: item = new GuardsmanShield(); break;

            case 33: item = new Halberd(); break;

            case 34: item = new HammerPick(); break;

            case 35: item = new HeaterShield(); break;

            case 36: item = new Helmet(); break;

            case 37: item = new Helmet(); break;

            case 38: item = new JeweledShield(); break;

            case 39: item = new Katana(); break;

            case 40: item = new Kryss(); break;

            case 41: item = new Lance(); break;

            case 42: item = new LargeBattleAxe(); break;

            case 43: item = new Leafblade(); break;

            case 44: item = new Longsword(); break;

            case 45: item = new Mace(); break;

            case 46: item = new Maul(); break;

            case 47: item = new MetalKiteShield(); break;

            case 48: item = new MetalShield(); break;

            case 49: item = new NorseHelm(); break;

            case 50: item = new NorseHelm(); break;

            case 51: item = new OrnateAxe(); break;

            case 52: item = new Pickaxe(); break;

            case 53: item = new Pike(); break;

            case 54: item = new Pitchfork(); break;

            case 55: item = new PlateArms(); break;

            case 56: item = new PlateChest(); break;

            case 57: item = new PlateGloves(); break;

            case 58: item = new PlateGorget(); break;

            case 59: item = new PlateHelm(); break;

            case 60: item = new PlateHelm(); break;

            case 61: item = new PlateLegs(); break;

            case 62: item = new RadiantScimitar(); break;

            case 63: item = new RingmailArms(); break;

            case 64: item = new RingmailChest(); break;

            case 65: item = new RingmailGloves(); break;

            case 66: item = new RingmailLegs(); break;

            case 67: item = new RuneBlade(); break;

            case 68: item = new Scimitar(); break;

            case 69: item = new Scythe(); break;

            case 70: item = new ShortSpear(); break;

            case 71: item = new SkinningKnife(); break;

            case 72: item = new Spear(); break;

            case 73: item = new ThinLongsword(); break;

            case 74: item = new TwoHandedAxe(); break;

            case 75: item = new VikingSword(); break;

            case 76: item = new WarAxe(); break;

            case 77: item = new WarCleaver(); break;

            case 78: item = new WarHammer(); break;

            case 79: item = new WarMace(); break;
            }

            if (Utility.RandomMinMax(1, 5) == 1)
            {
                bool evil   = false;
                bool orient = false;

                switch (Utility.RandomMinMax(1, 8))
                {
                case 1: evil = true; break;

                case 2: orient = true; break;
                }

                string sAdjective = "unusual";
                string eAdjective = "might";

                sAdjective = Server.LootPackEntry.MagicItemAdj("start", orient, evil, item.ItemID);
                eAdjective = Server.LootPackEntry.MagicItemAdj("end", orient, evil, item.ItemID);

                string name  = "item";
                string xName = ContainerFunctions.GetOwner("property");

                if (item.Name != null && item.Name != "")
                {
                    name = item.Name.ToLower();
                }
                if (name == "item")
                {
                    name = MorphingItem.AddSpacesToSentence((item.GetType()).Name).ToLower();
                }

                switch (Utility.RandomMinMax(0, 5))
                {
                case 0: name = sAdjective + " " + name + " of " + xName;        break;

                case 1: name = name + " of " + xName;                                           break;

                case 2: name = sAdjective + " " + name;                                         break;

                case 3: name = sAdjective + " " + name + " of " + xName;        break;

                case 4: name = name + " of " + xName;                                           break;

                case 5: name = sAdjective + " " + name;                                         break;
                }

                task = task + " their " + name;
            }
            else
            {
                string[] sMetals = new string[] { "iron ", "dull copper ", "shadow iron ", "copper ", "bronze ", "gold ", "agapite ", "verite ", "valorite ", "nepturite ", "obsidian ", "steel ", "brass ", "mithril ", "xormite ", "dwarven " };
                string   sMetal  = sMetals[Utility.RandomMinMax(0, (sMetals.Length - 1))];

                string name = "item";
                if (item.Name != null && item.Name != "")
                {
                    name = item.Name.ToLower();
                }
                if (name == "item")
                {
                    name = MorphingItem.AddSpacesToSentence((item.GetType()).Name).ToLower();
                }

                task = task + " their " + sMetal + name;
            }

            item.Delete();

            return(task);
        }
        public AlytharrBeachHouseChest() : base(0xE43)
        {
            Name    = "a treasure chest -40-";
            Movable = true;
            Weight  = 1000.0;

            TrapPower = 0;
            Locked    = true;

            RequiredSkill = 40;
            LockLevel     = 40;
            MaxLockLevel  = 45;

            // Gold
            if (Utility.RandomDouble() < 0.50)
            {
                DropItem(new Gold(Utility.Random(300, 450)));
            }

/////////////////////////////////////// Jewelry

            if (Utility.RandomDouble() < 0.04)
            {
                DropItem(new Agate());
            }
            if (Utility.RandomDouble() < 0.04)
            {
                DropItem(new Beryl());
            }
            if (Utility.RandomDouble() < 0.04)
            {
                DropItem(new ChromeDiopside());
            }
            if (Utility.RandomDouble() < 0.04)
            {
                DropItem(new FireOpal());
            }
            if (Utility.RandomDouble() < 0.04)
            {
                DropItem(new MoonstoneCustom());
            }
            if (Utility.RandomDouble() < 0.04)
            {
                DropItem(new Onyx());
            }
            if (Utility.RandomDouble() < 0.04)
            {
                DropItem(new Opal());
            }
            if (Utility.RandomDouble() < 0.04)
            {
                DropItem(new Pearl());
            }
            if (Utility.RandomDouble() < 0.04)
            {
                DropItem(new TurquoiseCustom());
            }

            if (Utility.RandomDouble() < 0.03)
            {
                DropItem(new Bloodstone());
            }
            if (Utility.RandomDouble() < 0.03)
            {
                DropItem(new Citrine());
            }
            if (Utility.RandomDouble() < 0.03)
            {
                DropItem(new Demantoid());
            }
            if (Utility.RandomDouble() < 0.03)
            {
                DropItem(new Jasper());
            }
            if (Utility.RandomDouble() < 0.03)
            {
                DropItem(new Lolite());
            }
            if (Utility.RandomDouble() < 0.03)
            {
                DropItem(new Lupis());
            }
            if (Utility.RandomDouble() < 0.03)
            {
                DropItem(new Peridot());
            }
            if (Utility.RandomDouble() < 0.03)
            {
                DropItem(new Tsavorite());
            }
            if (Utility.RandomDouble() < 0.03)
            {
                DropItem(new Zircon());
            }

            if (Utility.RandomDouble() < 0.02)
            {
                DropItem(new Amber());
            }
            if (Utility.RandomDouble() < 0.02)
            {
                DropItem(new Amethyst());
            }
            if (Utility.RandomDouble() < 0.02)
            {
                DropItem(new Andalusite());
            }
            if (Utility.RandomDouble() < 0.02)
            {
                DropItem(new Chrysoberyl());
            }
            if (Utility.RandomDouble() < 0.02)
            {
                DropItem(new Garnet());
            }
            if (Utility.RandomDouble() < 0.02)
            {
                DropItem(new Jade());
            }
            if (Utility.RandomDouble() < 0.02)
            {
                DropItem(new Mandarin());
            }
            if (Utility.RandomDouble() < 0.02)
            {
                DropItem(new Morganite());
            }
            if (Utility.RandomDouble() < 0.02)
            {
                DropItem(new Paraiba());
            }
            if (Utility.RandomDouble() < 0.02)
            {
                DropItem(new TigerEye());
            }
            if (Utility.RandomDouble() < 0.02)
            {
                DropItem(new Tourmaline());
            }

            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new Alexandrite());
            }
            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new Ametrine());
            }
            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new Kunzite());
            }
            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new Ruby());
            }
            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new Sapphire());
            }
            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new Tanzanite());
            }
            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new Topaz());
            }
            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new Zultanite());
            }

            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new Diamond());
            }
            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new Emerald());
            }
            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new PinkQuartz());
            }
            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new StarSapphire());
            }

/////////////////////////////////////// Supplies

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Arrow(Utility.Random(50, 75)));
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Bolt(Utility.Random(50, 75)));
            }

            Item ReagentLoot1 = Loot.RandomReagent();

            ReagentLoot1.Amount = Utility.Random(25, 35);
            DropItem(ReagentLoot1);

            Item ReagentLoot2 = Loot.RandomReagent();

            ReagentLoot2.Amount = Utility.Random(25, 35);
            DropItem(ReagentLoot2);

            Item ReagentLoot3 = Loot.RandomReagent();

            ReagentLoot3.Amount = Utility.Random(25, 35);
            DropItem(ReagentLoot3);

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Bandage(Utility.Random(40, 80)));
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Bedroll());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Bottle(Utility.Random(25, 45)));
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Lockpick(Utility.Random(15, 25)));
            }

            Item PotionLoot1 = Loot.RandomPotion();

            DropItem(PotionLoot1);

            Item PotionLoot2 = Loot.RandomPotion();

            DropItem(PotionLoot2);

            Item PotionLoot3 = Loot.RandomPotion();

            DropItem(PotionLoot3);

/////////////////////////////////////// Tools

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new FishingPole());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Shovel());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Skillet());
            }

/////////////////////////////////////// Rare Items

            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new DyeTub());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseWeapon weapon = Loot.RandomWeapon(true);
                switch (Utility.Random(12))
                {
                case 0: weapon = new OrnateAxe(); break;

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

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

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

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

                case 5: weapon = new RadiantScimitar(); break;

                case 6: weapon = new WildStaff(); break;

                case 7: weapon = new ElvenCompositeLongbow(); break;

                case 8: weapon = new ElvenMachete(); break;

                case 9: weapon = new ElvenSpellblade(); break;

                case 10: weapon = new RuneBlade(); break;

                default: weapon = new WarCleaver(); break;
                }

                BaseRunicTool.ApplyAttributesTo(weapon, 4, 30, 35);

                DropItem(weapon);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseArmor armor = Loot.RandomArmor(true);
                switch (Utility.Random(7))
                {
                case 0: armor = new FemaleLeafChest(); break;

                case 1: armor = new LeafArms(); break;

                case 2: armor = new LeafChest(); break;

                case 3: armor = new LeafGorget(); break;

                case 4: armor = new LeafLegs(); break;

                case 5: armor = new LeafTonlet(); break;

                default: armor = new LeafGloves(); break;
                }

                BaseRunicTool.ApplyAttributesTo(armor, 4, 30, 35);

                DropItem(armor);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseClothing clothing = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing, 4, 22, 25);

                DropItem(clothing);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel bracelet = new GoldBracelet();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(bracelet, 5, 5, 10);
                }

                DropItem(bracelet);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel earrings = new GoldEarrings();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(earrings, 5, 5, 10);
                }

                DropItem(earrings);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel necklace = new GoldNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(necklace, 5, 5, 10);
                }

                DropItem(necklace);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel ring = new GoldRing();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(ring, 5, 5, 10);
                }

                DropItem(ring);
            }
        }
Ejemplo n.º 4
0
      public Krysan()
          : base( AIType.AI_Mage, FightMode.Aggressor, 10, 1, 0.2, 0.4 )
      {
          Name = "Krysan";
	Body = 0x190;

	SpeechHue = 44;

	Hue = 1175;

          	BaseSoundID = 362;

          	SetStr( 2500 );
          	SetDex( 300 );
          	SetInt( 1100 );

          	SetHits( 55000 );

          	SetDamage( 30, 35 );

          	SetDamageType( ResistanceType.Physical, 50 );
          	SetDamageType( ResistanceType.Fire, 50 );

          	SetResistance( ResistanceType.Physical, 0, 0 );
          	SetResistance( ResistanceType.Fire, 120 );
          	SetResistance( ResistanceType.Cold, 10, 12 );
          	SetResistance( ResistanceType.Poison, 10, 12 );
          	SetResistance( ResistanceType.Energy, 10, 12 );

          	SetSkill( SkillName.EvalInt, 125.3 );
		SetSkill( SkillName.Swords, 120.1, 130.0 );
		SetSkill( SkillName.Necromancy, 120.1, 130.0 );
          	SetSkill( SkillName.Magery, 125.0 );
          	SetSkill( SkillName.MagicResist, 125.0 );
          	SetSkill( SkillName.Tactics, 130.0 );
          	SetSkill( SkillName.Wrestling, 130.0 );
          	SetSkill( SkillName.Meditation, 130.0 );
          	SetSkill( SkillName.Anatomy, 125.0 );
          	SetSkill(SkillName.DetectHidden, 120.0 );
		SetSkill( SkillName.SpiritSpeak, 120 );
          
          	Fame = 20000;
          	Karma = -20000;

          	VirtualArmor = 80;

			AddItem( new Cloak( 0x485 ) );
			AddItem( new ThighBoots( 1175 ) );

			OrnateAxe axe = new OrnateAxe();
			axe.Movable = false;
			AddItem( axe );

			DragonHelm helm = new DragonHelm();
			helm.Resource = CraftResource.BlackScales;
			helm.Movable = false;
			AddItem( helm );

			DragonChest chest = new DragonChest();
			chest.Resource = CraftResource.BlackScales;
			chest.Movable = false;
			AddItem( chest );

			DragonArms arms = new DragonArms();
			arms.Resource = CraftResource.BlackScales;
			arms.Movable = false;
			AddItem( arms );

			DragonGloves gloves = new DragonGloves();
			gloves.Resource = CraftResource.BlackScales;
			gloves.Movable = false;
			AddItem( gloves );

			DragonLegs legs = new DragonLegs();
			legs.Resource = CraftResource.BlackScales;
			legs.Movable = false;
			AddItem( legs );

        }