public override void OnDoubleClick(Mobile from) { BagOfAllReagents allReagents = new BagOfAllReagents(50); if (!from.AddToBackpack(allReagents)) { allReagents.Delete(); } }
public static void GetListOfItems(Mobile from) { //List of Item Locations Message //***Put item into Backpack #region Backpack from.SendMessage("You will find new items in your Backpack."); from.Backpack.AddItem(new KillBook()); //http://www.runuo.com/forums/custom-script-releases/80034-book-kills.html from.Backpack.AddItem(new AnNoxGuideBook()); #endregion //***Drop item on the Ground #region Ground //put item under player on the ground from.SendMessage("You will find new items on the ground near by."); new SewingKit().MoveToWorld(from.Location, from.Map); new Bible().MoveToWorld(from.Location, from.Map); //http://www.runuo.com/forums/custom-script-releases/71826-runuo-2-0-rc1-lokais-xml-bible-system.html new BeltranGuideBook().MoveToWorld(from.Location, from.Map); //http://www.runuo.com/forums/runuo-post-archive/34074-osi-library-books.html new PrimerArmsBook().MoveToWorld(from.Location, from.Map); //http://www.runuo.com/forums/runuo-post-archive/34074-osi-library-books.html //put item near player on the ground new BagOfDresses().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map); new BagOfJewlery().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map); new BagOfShirts().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map); new BagOfPants().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map); new BagOfShoes().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map); new BagOfCloaks().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map); new BagOfHats().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map); #endregion //***Put item into Bank #region Bank from.SendMessage("You will find new items in your Bank."); BankBox bank = from.BankBox; Container cont; // Begin box of money cont = new WoodenBox(); cont.Name = "Money Box"; cont.ItemID = 0xE7D; cont.Hue = 0x489; PlaceItemIn(cont, 64, 51, new BankCheck(5000)); PlaceItemIn(cont, 16, 115, new Factions.Silver(1000)); PlaceItemIn(cont, 34, 115, new Gold(1000)); PlaceItemIn(bank, 18, 169, cont); // Begin bag of archery ammo cont = new Bag(); cont.Name = "Bag Of Archery Ammo"; PlaceItemIn(cont, 48, 76, new Arrow(50)); PlaceItemIn(cont, 72, 76, new Bolt(50)); PlaceItemIn(bank, 118, 124, cont); // Begin bag of raw materials cont = new Bag(); cont.Hue = 0x835; cont.Name = "Raw Materials Bag"; PlaceItemIn(cont, 92, 84, new Leather(50)); PlaceItemIn(cont, 30, 118, new Cloth(50)); PlaceItemIn(cont, 30, 84, new Board(50)); PlaceItemIn(cont, 57, 80, new BlankScroll(50)); PlaceItemIn(bank, 98, 169, cont); // Begin bag of spell casting stuff cont = new Backpack(); cont.Hue = 0x480; cont.Name = "Spell Casting Stuff"; PlaceItemIn(cont, 45, 105, new Spellbook(UInt64.MaxValue)); PlaceItemIn(cont, 65, 105, new NecromancerSpellbook((UInt64)0xFFFF)); PlaceItemIn(cont, 85, 105, new BookOfChivalry((UInt64)0x3FF)); PlaceItemIn(cont, 105, 105, new BookOfBushido()); //Default ctor = full PlaceItemIn(cont, 125, 105, new BookOfNinjitsu()); //Default ctor = full Runebook runebook = new Runebook(10); runebook.CurCharges = runebook.MaxCharges; PlaceItemIn(cont, 145, 105, runebook); Item toHue = new BagOfReagents(50); toHue.Hue = 0x2D; toHue.Name = "Bag of Basic Reagents"; PlaceItemIn(cont, 45, 150, toHue); toHue = new BagOfNecroReagents(50); toHue.Hue = 0x488; toHue.Name = "Bag of Necro Reagents"; PlaceItemIn(cont, 65, 150, toHue); toHue = new BagOfAllReagents(50); toHue.Hue = 0x2D; toHue.Name = "Bag of All Reagents"; PlaceItemIn(cont, 140, 150, toHue); for (int i = 0; i < 9; ++i) { PlaceItemIn(cont, 45 + (i * 10), 75, new RecallRune()); } PlaceItemIn(cont, 141, 74, new FireHorn()); PlaceItemIn(bank, 78, 169, cont); #endregion }
private static void FillBankAOS(Mobile m) { BankBox bank = m.BankBox; // The new AOS bankboxes don't have powerscrolls, they are automatically 'applied': for (int i = 0; i < PowerScroll.Skills.Count; ++i) m.Skills[PowerScroll.Skills[i]].Cap = 120.0; m.StatCap = 250; Container cont; // Begin box of money cont = new WoodenBox(); cont.ItemID = 0xE7D; cont.Hue = 0x489; PlaceItemIn(cont, 16, 51, new BankCheck(500000)); PlaceItemIn(cont, 28, 51, new BankCheck(250000)); PlaceItemIn(cont, 40, 51, new BankCheck(100000)); PlaceItemIn(cont, 52, 51, new BankCheck(100000)); PlaceItemIn(cont, 64, 51, new BankCheck(50000)); PlaceItemIn(cont, 16, 115, new Factions.Silver(9000)); PlaceItemIn(cont, 34, 115, new Gold(60000)); PlaceItemIn(bank, 18, 169, cont); // End box of money // Begin bag of potion kegs cont = new Backpack(); cont.Name = "Various Potion Kegs"; PlaceItemIn(cont, 45, 149, MakePotionKeg(PotionEffect.CureGreater, 0x2D)); PlaceItemIn(cont, 69, 149, MakePotionKeg(PotionEffect.HealGreater, 0x499)); PlaceItemIn(cont, 93, 149, MakePotionKeg(PotionEffect.PoisonDeadly, 0x46)); PlaceItemIn(cont, 117, 149, MakePotionKeg(PotionEffect.RefreshTotal, 0x21)); PlaceItemIn(cont, 141, 149, MakePotionKeg(PotionEffect.ExplosionGreater, 0x74)); PlaceItemIn(cont, 93, 82, new Bottle(1000)); PlaceItemIn(bank, 53, 169, cont); // End bag of potion kegs // Begin bag of tools cont = new Bag(); cont.Name = "Tool Bag"; PlaceItemIn(cont, 30, 35, new TinkerTools(1000)); PlaceItemIn(cont, 60, 35, new HousePlacementTool()); PlaceItemIn(cont, 90, 35, new DovetailSaw(1000)); PlaceItemIn(cont, 30, 68, new Scissors()); PlaceItemIn(cont, 45, 68, new MortarPestle(1000)); PlaceItemIn(cont, 75, 68, new ScribesPen(1000)); PlaceItemIn(cont, 90, 68, new SmithHammer(1000)); PlaceItemIn(cont, 30, 118, new TwoHandedAxe()); PlaceItemIn(cont, 60, 118, new FletcherTools(1000)); PlaceItemIn(cont, 90, 118, new SewingKit(1000)); PlaceItemIn(cont, 36, 51, new RunicHammer(CraftResource.DullCopper, 1000)); PlaceItemIn(cont, 42, 51, new RunicHammer(CraftResource.ShadowIron, 1000)); PlaceItemIn(cont, 48, 51, new RunicHammer(CraftResource.Copper, 1000)); PlaceItemIn(cont, 54, 51, new RunicHammer(CraftResource.Bronze, 1000)); PlaceItemIn(cont, 61, 51, new RunicHammer(CraftResource.Gold, 1000)); PlaceItemIn(cont, 67, 51, new RunicHammer(CraftResource.Agapite, 1000)); PlaceItemIn(cont, 73, 51, new RunicHammer(CraftResource.Verite, 1000)); PlaceItemIn(cont, 79, 51, new RunicHammer(CraftResource.Valorite, 1000)); PlaceItemIn(cont, 36, 55, new RunicSewingKit(CraftResource.SpinedLeather, 1000)); PlaceItemIn(cont, 42, 55, new RunicSewingKit(CraftResource.HornedLeather, 1000)); PlaceItemIn(cont, 48, 55, new RunicSewingKit(CraftResource.BarbedLeather, 1000)); PlaceItemIn(bank, 118, 169, cont); // End bag of tools // Begin bag of archery ammo cont = new Bag(); cont.Name = "Bag Of Archery Ammo"; PlaceItemIn(cont, 48, 76, new Arrow(5000)); PlaceItemIn(cont, 72, 76, new Bolt(5000)); PlaceItemIn(bank, 118, 124, cont); // End bag of archery ammo // Begin bag of treasure maps cont = new Bag(); cont.Name = "Bag Of Treasure Maps"; PlaceItemIn(cont, 30, 35, new TreasureMap(1, Map.Trammel)); PlaceItemIn(cont, 45, 35, new TreasureMap(2, Map.Trammel)); PlaceItemIn(cont, 60, 35, new TreasureMap(3, Map.Trammel)); PlaceItemIn(cont, 75, 35, new TreasureMap(4, Map.Trammel)); PlaceItemIn(cont, 90, 35, new TreasureMap(5, Map.Trammel)); PlaceItemIn(cont, 90, 35, new TreasureMap(6, Map.Trammel)); PlaceItemIn(cont, 30, 50, new TreasureMap(1, Map.Trammel)); PlaceItemIn(cont, 45, 50, new TreasureMap(2, Map.Trammel)); PlaceItemIn(cont, 60, 50, new TreasureMap(3, Map.Trammel)); PlaceItemIn(cont, 75, 50, new TreasureMap(4, Map.Trammel)); PlaceItemIn(cont, 90, 50, new TreasureMap(5, Map.Trammel)); PlaceItemIn(cont, 90, 50, new TreasureMap(6, Map.Trammel)); PlaceItemIn(cont, 55, 100, new Lockpick(30)); PlaceItemIn(cont, 60, 100, new Pickaxe()); PlaceItemIn(bank, 98, 124, cont); // End bag of treasure maps // Begin bag of raw materials cont = new Bag(); cont.Hue = 0x835; cont.Name = "Raw Materials Bag"; PlaceItemIn(cont, 92, 60, new BarbedLeather(5000)); PlaceItemIn(cont, 92, 68, new HornedLeather(5000)); PlaceItemIn(cont, 92, 76, new SpinedLeather(5000)); PlaceItemIn(cont, 92, 84, new Leather(5000)); PlaceItemIn(cont, 30, 118, new Cloth(5000)); PlaceItemIn(cont, 30, 84, new Board(5000)); PlaceItemIn(cont, 57, 80, new BlankScroll(500)); PlaceItemIn(cont, 30, 35, new DullCopperIngot(5000)); PlaceItemIn(cont, 37, 35, new ShadowIronIngot(5000)); PlaceItemIn(cont, 44, 35, new CopperIngot(5000)); PlaceItemIn(cont, 51, 35, new BronzeIngot(5000)); PlaceItemIn(cont, 58, 35, new GoldIngot(5000)); PlaceItemIn(cont, 65, 35, new AgapiteIngot(5000)); PlaceItemIn(cont, 72, 35, new VeriteIngot(5000)); PlaceItemIn(cont, 79, 35, new ValoriteIngot(5000)); PlaceItemIn(cont, 86, 35, new IronIngot(5000)); PlaceItemIn(cont, 30, 59, new RedScales(5000)); PlaceItemIn(cont, 36, 59, new YellowScales(5000)); PlaceItemIn(cont, 42, 59, new BlackScales(5000)); PlaceItemIn(cont, 48, 59, new GreenScales(5000)); PlaceItemIn(cont, 54, 59, new WhiteScales(5000)); PlaceItemIn(cont, 60, 59, new BlueScales(5000)); PlaceItemIn(bank, 98, 169, cont); // End bag of raw materials // Begin bag of spell casting stuff cont = new Backpack(); cont.Hue = 0x480; cont.Name = "Spell Casting Stuff"; PlaceItemIn(cont, 45, 105, new Spellbook(UInt64.MaxValue)); PlaceItemIn(cont, 65, 105, new NecromancerSpellbook((UInt64)0xFFFF)); PlaceItemIn(cont, 85, 105, new BookOfChivalry((UInt64)0x3FF)); PlaceItemIn(cont, 105, 105, new BookOfBushido()); //Default ctor = full PlaceItemIn(cont, 125, 105, new BookOfNinjitsu()); //Default ctor = full Runebook runebook = new Runebook(10); runebook.CurCharges = runebook.MaxCharges; PlaceItemIn(cont, 145, 105, runebook); Item toHue = new BagOfAllReagents(150); toHue.Hue = 0x2D; PlaceItemIn(cont, 45, 150, toHue); toHue = new BagOfNecroReagents(150); toHue.Hue = 0x488; PlaceItemIn(cont, 65, 150, toHue); PlaceItemIn(cont, 140, 150, new BagOfAllReagents(500)); for (int i = 0; i < 9; ++i) PlaceItemIn(cont, 45 + (i * 10), 75, new RecallRune()); PlaceItemIn(cont, 141, 74, new FireHorn()); PlaceItemIn(bank, 78, 169, cont); // End bag of spell casting stuff // Begin bag of ethereals cont = new Backpack(); cont.Hue = 0x490; cont.Name = "Bag Of Ethy's!"; PlaceItemIn(cont, 45, 66, new EtherealHorse()); PlaceItemIn(cont, 69, 82, new EtherealOstard()); PlaceItemIn(cont, 93, 99, new EtherealLlama()); PlaceItemIn(cont, 117, 115, new EtherealKirin()); PlaceItemIn(cont, 45, 132, new EtherealUnicorn()); PlaceItemIn(cont, 69, 66, new EtherealRidgeback()); PlaceItemIn(cont, 93, 82, new EtherealSwampDragon()); PlaceItemIn(cont, 117, 99, new EtherealBeetle()); PlaceItemIn(bank, 38, 124, cont); // End bag of ethereals // Begin first bag of artifacts cont = new Backpack(); cont.Hue = 0x48F; cont.Name = "Bag of Artifacts"; PlaceItemIn(cont, 45, 66, new TitansHammer()); PlaceItemIn(cont, 69, 82, new InquisitorsResolution()); PlaceItemIn(cont, 93, 99, new BladeOfTheRighteous()); PlaceItemIn(cont, 117, 115, new ZyronicClaw()); PlaceItemIn(bank, 58, 124, cont); // End first bag of artifacts // Begin second bag of artifacts cont = new Backpack(); cont.Hue = 0x48F; cont.Name = "Bag of Artifacts"; PlaceItemIn(cont, 45, 66, new GauntletsOfNobility()); PlaceItemIn(cont, 69, 82, new MidnightBracers()); PlaceItemIn(cont, 93, 99, new VoiceOfTheFallenKing()); PlaceItemIn(cont, 117, 115, new OrnateCrownOfTheHarrower()); PlaceItemIn(cont, 45, 132, new HelmOfInsight()); PlaceItemIn(cont, 69, 66, new HolyKnightsBreastplate()); PlaceItemIn(cont, 93, 82, new ArmorOfFortune()); PlaceItemIn(cont, 117, 99, new TunicOfFire()); PlaceItemIn(cont, 45, 115, new LeggingsOfBane()); PlaceItemIn(cont, 69, 132, new ArcaneShield()); PlaceItemIn(cont, 93, 66, new Aegis()); PlaceItemIn(cont, 117, 82, new RingOfTheVile()); PlaceItemIn(cont, 45, 99, new BraceletOfHealth()); PlaceItemIn(cont, 69, 115, new RingOfTheElements()); PlaceItemIn(cont, 93, 132, new OrnamentOfTheMagician()); PlaceItemIn(cont, 117, 66, new DivineCountenance()); PlaceItemIn(cont, 45, 82, new JackalsCollar()); PlaceItemIn(cont, 69, 99, new HuntersHeaddress()); PlaceItemIn(cont, 93, 115, new HatOfTheMagi()); PlaceItemIn(cont, 117, 132, new ShadowDancerLeggings()); PlaceItemIn(cont, 45, 66, new SpiritOfTheTotem()); PlaceItemIn(cont, 69, 82, new BladeOfInsanity()); PlaceItemIn(cont, 93, 99, new AxeOfTheHeavens()); PlaceItemIn(cont, 117, 115, new TheBeserkersMaul()); PlaceItemIn(cont, 45, 132, new Frostbringer()); PlaceItemIn(cont, 69, 66, new BreathOfTheDead()); PlaceItemIn(cont, 93, 82, new TheDragonSlayer()); PlaceItemIn(cont, 117, 99, new BoneCrusher()); PlaceItemIn(cont, 45, 115, new StaffOfTheMagi()); PlaceItemIn(cont, 69, 132, new SerpentsFang()); PlaceItemIn(cont, 93, 66, new LegacyOfTheDreadLord()); PlaceItemIn(cont, 117, 82, new TheTaskmaster()); PlaceItemIn(cont, 45, 99, new TheDryadBow()); PlaceItemIn(bank, 78, 124, cont); // End second bag of artifacts // Begin bag of minor artifacts cont = new Backpack(); cont.Hue = 0x48F; cont.Name = "Bag of Minor Artifacts"; PlaceItemIn(cont, 45, 66, new LunaLance()); PlaceItemIn(cont, 69, 82, new VioletCourage()); PlaceItemIn(cont, 93, 99, new CavortingClub()); PlaceItemIn(cont, 117, 115, new CaptainQuacklebushsCutlass()); PlaceItemIn(cont, 45, 132, new NightsKiss()); PlaceItemIn(cont, 69, 66, new ShipModelOfTheHMSCape()); PlaceItemIn(cont, 93, 82, new AdmiralsHeartyRum()); PlaceItemIn(cont, 117, 99, new CandelabraOfSouls()); PlaceItemIn(cont, 45, 115, new IolosLute()); PlaceItemIn(cont, 69, 132, new GwennosHarp()); PlaceItemIn(cont, 93, 66, new ArcticDeathDealer()); PlaceItemIn(cont, 117, 82, new EnchantedTitanLegBone()); PlaceItemIn(cont, 45, 99, new NoxRangersHeavyCrossbow()); PlaceItemIn(cont, 69, 115, new BlazeOfDeath()); PlaceItemIn(cont, 93, 132, new DreadPirateHat()); PlaceItemIn(cont, 117, 66, new BurglarsBandana()); PlaceItemIn(cont, 45, 82, new GoldBricks()); PlaceItemIn(cont, 69, 99, new AlchemistsBauble()); PlaceItemIn(cont, 93, 115, new PhillipsWoodenSteed()); PlaceItemIn(cont, 117, 132, new PolarBearMask()); PlaceItemIn(cont, 45, 66, new BowOfTheJukaKing()); PlaceItemIn(cont, 69, 82, new GlovesOfThePugilist()); PlaceItemIn(cont, 93, 99, new OrcishVisage()); PlaceItemIn(cont, 117, 115, new StaffOfPower()); PlaceItemIn(cont, 45, 132, new ShieldOfInvulnerability()); PlaceItemIn(cont, 69, 66, new HeartOfTheLion()); PlaceItemIn(cont, 93, 82, new ColdBlood()); PlaceItemIn(cont, 117, 99, new GhostShipAnchor()); PlaceItemIn(cont, 45, 115, new SeahorseStatuette()); PlaceItemIn(cont, 69, 132, new WrathOfTheDryad()); PlaceItemIn(cont, 93, 66, new PixieSwatter()); for (int i = 0; i < 10; i++) PlaceItemIn(cont, 117, 128, new MessageInABottle(Utility.RandomBool() ? Map.Trammel : Map.Felucca, 4)); PlaceItemIn(bank, 18, 124, cont); if (Core.SE) { cont = new Bag(); cont.Hue = 0x501; cont.Name = "Tokuno Minor Artifacts"; PlaceItemIn(cont, 42, 70, new Exiler()); PlaceItemIn(cont, 38, 53, new HanzosBow()); PlaceItemIn(cont, 45, 40, new TheDestroyer()); PlaceItemIn(cont, 92, 80, new DragonNunchaku()); PlaceItemIn(cont, 42, 56, new PeasantsBokuto()); PlaceItemIn(cont, 44, 71, new TomeOfEnlightenment()); PlaceItemIn(cont, 35, 35, new ChestOfHeirlooms()); PlaceItemIn(cont, 29, 0, new HonorableSwords()); PlaceItemIn(cont, 49, 85, new AncientUrn()); PlaceItemIn(cont, 51, 58, new FluteOfRenewal()); PlaceItemIn(cont, 70, 51, new PigmentsOfTokuno()); PlaceItemIn(cont, 40, 79, new AncientSamuraiDo()); PlaceItemIn(cont, 51, 61, new LegsOfStability()); PlaceItemIn(cont, 88, 78, new GlovesOfTheSun()); PlaceItemIn(cont, 55, 62, new AncientFarmersKasa()); PlaceItemIn(cont, 55, 83, new ArmsOfTacticalExcellence()); PlaceItemIn(cont, 50, 85, new DaimyosHelm()); PlaceItemIn(cont, 52, 78, new BlackLotusHood()); PlaceItemIn(cont, 52, 79, new DemonForks()); PlaceItemIn(cont, 33, 49, new PilferedDancerFans()); PlaceItemIn(bank, 58, 124, cont); } if (Core.SE) //This bag came only after SE. { cont = new Bag(); cont.Name = "Bag of Bows"; PlaceItemIn(cont, 31, 84, new Bow()); PlaceItemIn(cont, 78, 74, new CompositeBow()); PlaceItemIn(cont, 53, 71, new Crossbow()); PlaceItemIn(cont, 56, 39, new HeavyCrossbow()); PlaceItemIn(cont, 82, 72, new RepeatingCrossbow()); PlaceItemIn(cont, 49, 45, new Yumi()); for (int i = 0; i < cont.Items.Count; i++) { BaseRanged bow = cont.Items[i] as BaseRanged; if (bow != null) { bow.Attributes.WeaponSpeed = 35; bow.Attributes.WeaponDamage = 35; } } PlaceItemIn(bank, 108, 135, cont); } }
private static void AddSkillItems(SkillName skill, Mobile m) { bool elf = (m.Race == Race.Elf); bool human = (m.Race == Race.Human); bool gargoyle = (m.Race == Race.Gargoyle); switch ( skill ) { case SkillName.Alchemy: { PackItem(new Bottle(4)); PackItem(new MortarPestle()); int hue = Utility.RandomPinkHue(); if (elf) { if (m.Female) EquipItem(new FemaleElvenRobe(hue)); else EquipItem(new MaleElvenRobe(hue)); } else { EquipItem(new Robe(Utility.RandomPinkHue())); } break; } case SkillName.Anatomy: { PackItem(new Bandage(3)); int hue = Utility.RandomYellowHue(); if (elf) { if (m.Female) EquipItem(new FemaleElvenRobe(hue)); else EquipItem(new MaleElvenRobe(hue)); } else { EquipItem(new Robe(hue)); } break; } case SkillName.AnimalLore: { int hue = Utility.RandomBlueHue(); if (elf) { EquipItem(new WildStaff()); if (m.Female) EquipItem(new FemaleElvenRobe(hue)); else EquipItem(new MaleElvenRobe(hue)); } else { EquipItem(new ShepherdsCrook()); EquipItem(new Robe(hue)); } break; } case SkillName.Archery: { PackItem(new Arrow(25)); if (elf) EquipItem(new ElvenCompositeLongbow()); else if (human) EquipItem(new Bow()); break; } case SkillName.ArmsLore: { if (elf) { switch ( Utility.Random(3) ) { case 0: EquipItem(new Leafblade()); break; case 1: EquipItem(new RuneBlade()); break; case 2: EquipItem(new DiamondMace()); break; } } else if (human) { switch ( Utility.Random(3) ) { case 0: EquipItem(new Kryss()); break; case 1: EquipItem(new Katana()); break; case 2: EquipItem(new Club()); break; } } else if (gargoyle) { switch( Utility.Random(3) ) { case 0: EquipItem(new BloodBlade()); break; case 1: EquipItem(new GlassSword()); break; case 2: EquipItem(new DiscMace()); break; } } break; } case SkillName.Begging: { if (elf) EquipItem(new WildStaff()); else if (human) EquipItem(new GnarledStaff()); else if (gargoyle) EquipItem(new SerpentStoneStaff()); break; } case SkillName.Blacksmith: { PackItem(new Tongs()); PackItem(new Pickaxe()); PackItem(new Pickaxe()); PackItem(new IronIngot(50)); if (human || elf) { EquipItem(new HalfApron(Utility.RandomYellowHue())); } break; } case SkillName.Bushido: { if (human || elf) { EquipItem(new Hakama()); EquipItem(new Kasa()); } EquipItem(new BookOfBushido()); break; } case SkillName.Fletching: { PackItem(new Board(14)); PackItem(new Feather(5)); PackItem(new Shaft(5)); break; } case SkillName.Camping: { PackItem(new Bedroll()); PackItem(new Kindling(5)); break; } case SkillName.Carpentry: { PackItem(new Board(10)); PackItem(new Saw()); if (human || elf) { EquipItem(new HalfApron(Utility.RandomYellowHue())); } break; } case SkillName.Cartography: { PackItem(new BlankMap()); PackItem(new BlankMap()); PackItem(new BlankMap()); PackItem(new BlankMap()); PackItem(new Sextant()); break; } case SkillName.Cooking: { PackItem(new Kindling(2)); PackItem(new RawLambLeg()); PackItem(new RawChickenLeg()); PackItem(new RawFishSteak()); PackItem(new SackFlour()); PackItem(new Pitcher(BeverageType.Water)); break; } case SkillName.Chivalry: { if (Core.ML) PackItem(new BookOfChivalry((ulong)0x3FF)); break; } case SkillName.DetectHidden: { if (human || elf) EquipItem(new Cloak(0x455)); break; } case SkillName.Discordance: { PackInstrument(); break; } case SkillName.Fencing: { if (elf) EquipItem(new Leafblade()); else if (human) EquipItem(new Kryss()); else if (gargoyle) EquipItem(new BloodBlade()); break; } case SkillName.Fishing: { EquipItem(new FishingPole()); int hue = Utility.RandomYellowHue(); if (elf) { Item i = new Circlet(); i.Hue = hue; EquipItem(i); } else if (human) { EquipItem(new FloppyHat(hue)); } break; } case SkillName.Healing: { PackItem(new Bandage(50)); PackItem(new Scissors()); break; } case SkillName.Herding: { if (elf) EquipItem(new WildStaff()); else EquipItem(new ShepherdsCrook()); break; } case SkillName.Hiding: { if (human || elf) EquipItem(new Cloak(0x455)); break; } case SkillName.Inscribe: { PackItem(new BlankScroll(2)); PackItem(new BlueBook()); break; } case SkillName.ItemID: { if (elf) EquipItem(new WildStaff()); else if (human) EquipItem(new GnarledStaff()); else if (gargoyle) EquipItem(new SerpentStoneStaff()); break; } case SkillName.Lockpicking: { PackItem(new Lockpick(20)); break; } case SkillName.Lumberjacking: { if (human || elf) EquipItem(new Hatchet()); else if (gargoyle) EquipItem(new DualShortAxes()); break; } case SkillName.Macing: { if (elf) EquipItem(new DiamondMace()); else if (human) EquipItem(new Club()); else if (gargoyle) EquipItem(new DiscMace()); break; } case SkillName.Magery: { BagOfAllReagents regs = new BagOfAllReagents(30); if (!Core.AOS) { foreach (Item item in regs.Items) item.LootType = LootType.Newbied; } PackItem(regs); regs.LootType = LootType.Regular; PackScroll(0); PackScroll(1); PackScroll(2); Spellbook book = new Spellbook((ulong)0x382A8C38); book.LootType = LootType.Blessed; EquipItem(book); if (elf) { EquipItem(new Circlet()); if (m.Female) EquipItem(new FemaleElvenRobe(Utility.RandomBlueHue())); else EquipItem(new MaleElvenRobe(Utility.RandomBlueHue())); } else { if (human) EquipItem(new WizardsHat()); EquipItem(new Robe(Utility.RandomBlueHue())); } break; } case SkillName.Mining: { PackItem(new Pickaxe()); break; } case SkillName.Musicianship: { PackInstrument(); break; } case SkillName.Necromancy: { if (Core.ML) { Container regs = new BagOfNecroReagents(50); PackItem(regs); regs.LootType = LootType.Regular; } // RunUO fix Spellbook book = new NecromancerSpellbook((ulong)0x8981); // animate dead, evil omen, pain spike, summon familiar, wraith form book.LootType = LootType.Blessed; PackItem(book); break; } case SkillName.Ninjitsu: { if (human || elf) { EquipItem(new Hakama(0x2C3)); //Only ninjas get the hued one. EquipItem(new Kasa()); } EquipItem(new BookOfNinjitsu()); break; } case SkillName.Parry: { if (human || elf) EquipItem(new WoodenShield()); else if (gargoyle) EquipItem(new GargishWoodenShield()); break; } case SkillName.Peacemaking: { PackInstrument(); break; } case SkillName.Poisoning: { PackItem(new LesserPoisonPotion()); PackItem(new LesserPoisonPotion()); break; } case SkillName.Provocation: { PackInstrument(); break; } case SkillName.Snooping: { PackItem(new Lockpick(20)); break; } case SkillName.SpiritSpeak: { if (human || elf) { EquipItem(new Cloak(0x455)); } break; } case SkillName.Stealing: { PackItem(new Lockpick(20)); break; } case SkillName.Swords: { if (elf) EquipItem(new RuneBlade()); else if (human) EquipItem(new Katana()); else if (gargoyle) EquipItem(new GlassSword()); break; } case SkillName.Tactics: { if (elf) EquipItem(new RuneBlade()); else if (human) EquipItem(new Katana()); else if (gargoyle) EquipItem(new GlassSword()); break; } case SkillName.Tailoring: { PackItem(new BoltOfCloth()); PackItem(new SewingKit()); break; } case SkillName.Tracking: { if (human || elf) { if (m_Mobile != null) { Item shoes = m_Mobile.FindItemOnLayer(Layer.Shoes); if (shoes != null) shoes.Delete(); } int hue = Utility.RandomYellowHue(); if (elf) EquipItem(new ElvenBoots(hue)); else EquipItem(new Boots(hue)); EquipItem(new SkinningKnife()); } else if (gargoyle) PackItem(new SkinningKnife()); break; } case SkillName.Veterinary: { PackItem(new Bandage(5)); PackItem(new Scissors()); break; } case SkillName.Wrestling: { if (elf) EquipItem(new LeafGloves()); else if (human) EquipItem(new LeatherGloves()); else if (gargoyle) { // Why not give them arm armor? EquipItem(new GargishLeatherArms()); } break; } case SkillName.Throwing: { if (gargoyle) EquipItem(new Boomerang()); break; } } }
public override void OnDamagedBySpell( Mobile from ) { if (from.Combatant == null) return; Mobile m = from.Combatant; if (m.Body == 58) m.Say( "I now own your soul!!!" ); if (m.Body != from.Body) { m.BoltEffect( 0 ); m.Body = from.Body; m.Hue = from.Hue; m.Name = from.Name; m.Fame = from.Fame; m.Karma = (0-from.Karma); m.Title = from.Title; m.Str = from.Str; m.Int = from.Int; m.Dex = from.Dex; m.Hits =from.Hits + 2000; m.Dex = from.Dex; m.Mana = from.Mana; m.Stam = from.Stam; m.Female = from.Female; m.VirtualArmor = (from.VirtualArmor +95); Item hair = new Item( Utility.RandomList( 8265 ) ); hair.Hue = 1167; hair.Layer = Layer.Hair; hair.Movable = false; m.AddItem( hair ); Kasa hat = new Kasa(); hat.Hue = 1167; hat.Movable = false; m.AddItem( hat ); DeathRobe robe = new DeathRobe(); robe.Name = "Death Robe"; robe.Hue = 1167; robe.Movable = false; m.AddItem( robe ); Sandals sandals = new Sandals(); sandals.Hue = 1167; sandals.Movable = false; m.AddItem( sandals ); BagOfAllReagents bag = new BagOfAllReagents(); m.AddToBackpack( bag ); m.BoltEffect( 0 ); } switch ( Utility.Random( 5 ) ) { case 0: m.Say( "We are now one with each other!!" ); break; case 1: m.Say( "Your weak spells have no effect on me, muahahaha!!" ); break; case 2: m.Say( "Your end is near young adventurer!!" ); break; case 3: m.Say( "Thou shalt not pass my post!!" ); break; case 4: m.Say( "I now own your soul!!!" ); break; } from.BoltEffect( 0 ); from.Damage( Utility.Random( 1, 50 ) ); m.Hits += ( Utility.Random( 1, 50 ) ); }
public static void GetListOfItems(Mobile from) { //List of Item Locations Message //***Put item into Backpack #region Backpack from.SendMessage("You will find new items in your Backpack."); from.Backpack.AddItem(new KillBook()); //http://www.runuo.com/forums/custom-script-releases/80034-book-kills.html from.Backpack.AddItem(new AnNoxGuideBook()); #endregion //***Drop item on the Ground #region Ground //put item under player on the ground from.SendMessage("You will find new items on the ground near by."); new SewingKit().MoveToWorld(from.Location, from.Map); new Bible().MoveToWorld(from.Location, from.Map); //http://www.runuo.com/forums/custom-script-releases/71826-runuo-2-0-rc1-lokais-xml-bible-system.html new BeltranGuideBook().MoveToWorld(from.Location, from.Map); //http://www.runuo.com/forums/runuo-post-archive/34074-osi-library-books.html new PrimerArmsBook().MoveToWorld(from.Location, from.Map); //http://www.runuo.com/forums/runuo-post-archive/34074-osi-library-books.html //put item near player on the ground new BagOfDresses().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map); new BagOfJewlery().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map); new BagOfShirts().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map); new BagOfPants().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map); new BagOfShoes().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map); new BagOfCloaks().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map); new BagOfHats().MoveToWorld(new Point3D(from.X + Utility.RandomMinMax(-5, 5), from.Y + Utility.RandomMinMax(-5, 5), from.Z), from.Map); #endregion //***Put item into Bank #region Bank from.SendMessage("You will find new items in your Bank."); BankBox bank = from.BankBox; Container cont; // Begin box of money cont = new WoodenBox(); cont.Name = "Money Box"; cont.ItemID = 0xE7D; cont.Hue = 0x489; PlaceItemIn(cont, 64, 51, new BankCheck(5000)); PlaceItemIn(cont, 16, 115, new Factions.Silver(1000)); PlaceItemIn(cont, 34, 115, new Gold(1000)); PlaceItemIn(bank, 18, 169, cont); // Begin bag of archery ammo cont = new Bag(); cont.Name = "Bag Of Archery Ammo"; PlaceItemIn(cont, 48, 76, new Arrow(50)); PlaceItemIn(cont, 72, 76, new Bolt(50)); PlaceItemIn(bank, 118, 124, cont); // Begin bag of raw materials cont = new Bag(); cont.Hue = 0x835; cont.Name = "Raw Materials Bag"; PlaceItemIn(cont, 92, 84, new Leather(50)); PlaceItemIn(cont, 30, 118, new Cloth(50)); PlaceItemIn(cont, 30, 84, new Board(50)); PlaceItemIn(cont, 57, 80, new BlankScroll(50)); PlaceItemIn(bank, 98, 169, cont); // Begin bag of spell casting stuff cont = new Backpack(); cont.Hue = 0x480; cont.Name = "Spell Casting Stuff"; PlaceItemIn(cont, 45, 105, new Spellbook(UInt64.MaxValue)); PlaceItemIn(cont, 65, 105, new NecromancerSpellbook((UInt64)0xFFFF)); PlaceItemIn(cont, 85, 105, new BookOfChivalry((UInt64)0x3FF)); PlaceItemIn(cont, 105, 105, new BookOfBushido()); //Default ctor = full PlaceItemIn(cont, 125, 105, new BookOfNinjitsu()); //Default ctor = full Runebook runebook = new Runebook(10); runebook.CurCharges = runebook.MaxCharges; PlaceItemIn(cont, 145, 105, runebook); Item toHue = new BagOfReagents(50); toHue.Hue = 0x2D; toHue.Name = "Bag of Basic Reagents"; PlaceItemIn(cont, 45, 150, toHue); toHue = new BagOfNecroReagents(50); toHue.Hue = 0x488; toHue.Name = "Bag of Necro Reagents"; PlaceItemIn(cont, 65, 150, toHue); toHue = new BagOfAllReagents(50); toHue.Hue = 0x2D; toHue.Name = "Bag of All Reagents"; PlaceItemIn(cont, 140, 150, toHue); for (int i = 0; i < 9; ++i) PlaceItemIn(cont, 45 + (i * 10), 75, new RecallRune()); PlaceItemIn(cont, 141, 74, new FireHorn()); PlaceItemIn(bank, 78, 169, cont); #endregion }