public Container ConvertToStandardContainer() { Container metalBox = new MetalBox(); List <Item> subItems = new List <Item>(Items); foreach (Item subItem in subItems) { metalBox.AddItem(subItem); } this.Delete(); return(metalBox); }
public override void GenerateLoot() { if (Utility.Random(100) < 20) { Lantern lantern = new Lantern(); lantern.Hue = Utility.RandomMinMax(2113, 2118); PackItem(lantern); } if (Utility.Random(100) < 10) { Item item; switch (Utility.Random(111)) { case 0: item = new Tapestry6W(); break; case 1: item = new MetalChest(); break; case 2: item = new MetalGoldenChest(); break; case 3: item = new MetalBox(); break; case 4: item = new AniLargeVioletFlask(); break; case 5: item = new AniRedRibbedFlask(); break; case 6: item = new AniSmallBlueFlask(); break; case 7: item = new BlueBeaker(); break; case 8: item = new BlueCurvedFlask(); break; case 9: item = new EmptyVial(); break; case 10: item = new EmptyVialsWRack(); break; case 11: item = new LargeFlask(); break; case 12: item = new LargeVioletFlask(); break; //case 13: item = new HourGlass(); break; //case 14: item = new HourGlassAni(); break; case 15: item = new DecorativeDAxeWest(); break; case 16: item = new DecorativeDAxeNorth(); break; case 17: item = new DecorativeBowWest(); break; case 18: item = new DecorativeBowNorth(); break; case 19: item = new DecorativeAxeWest(); break; case 20: item = new DecorativeAxeNorth(); break; case 21: item = new DecorativeShieldSword2West(); break; case 22: item = new DecorativeShieldSword2North(); break; case 23: item = new DecorativeShieldSword1West(); break; case 24: item = new DecorativeShieldSword1North(); break; case 25: item = new DecorativeShield11(); break; case 26: item = new DecorativeShield10(); break; case 27: item = new DecorativeShield9(); break; case 28: item = new DecorativeShield8(); break; case 29: item = new DecorativeShield7(); break; case 30: item = new DecorativeShield6(); break; case 31: item = new DecorativeShield5(); break; case 32: item = new DecorativeShield4(); break; case 33: item = new DecorativeShield3(); break; case 34: item = new DecorativeShield2(); break; case 35: item = new DecorativeShield1(); break; case 36: item = new Whip(); break; case 37: item = new SilverWire(); break; case 38: item = new Rope(); break; case 39: item = new PaintsAndBrush(); break; case 40: item = new IronWire(); break; case 41: item = new GoldWire(); break; case 42: item = new CopperWire(); break; case 43: item = new WoodDebris(); break; case 44: item = new RuinedPainting(); break; case 45: item = new RuinedFallenChairB(); break; case 46: item = new FullVialsWRack(); break; case 47: item = new FullJar(); break; case 48: item = new FullJars2(); break; case 49: item = new FullJars3(); break; case 50: item = new FullJars4(); break; case 51: item = new GreenBeaker(); break; case 52: item = new GreenBottle(); break; case 53: item = new VioletStemmedBottle(); break; case 54: item = new SpinningHourglass(); break; case 55: item = new ArcheryButte(); break; case 56: item = new PhillipsWoodenSteed(); break; case 57: item = new PileOfGlacialSnow(); break; case 58: item = new RedPoinsettia(); break; case 59: item = new RoseOfTrinsic(); break; case 60: item = new RaiseSwitch(); break; case 61: item = new SpecialFishingNet(); break; case 62: item = new SpecialHairDye(); break; case 63: item = new SpecialBeardDye(); break; case 64: item = new SnowPile(); break; case 65: item = new StatueEast2(); break; case 66: item = new StatuePegasus2(); break; case 67: item = new StatueSouth2(); break; case 68: item = new StatueSouthEast(); break; case 69: item = new StatuetteDyeTub(); break; case 70: item = new StatueWest(); break; case 71: item = new TapestryOfSosaria(); break; case 72: item = new WhitePoinsettia(); break; case 73: item = new WindChimes(); break; case 74: item = new ZoogiFungus(); break; case 75: item = new RuinedFallenChairA(); break; case 76: item = new RuinedDrawers(); break; case 77: item = new RuinedClock(); break; case 78: item = new RuinedChair(); break; case 79: item = new RuinedBooks(); break; case 80: item = new RuinedBookcase(); break; case 81: item = new RuinedArmoire(); break; case 82: item = new SmallStretchedHideSouthDeed(); break; case 83: item = new SmallStretchedHideEastDeed(); break; case 84: item = new PolarBearRugSouthDeed(); break; case 85: item = new PolarBearRugEastDeed(); break; case 86: item = new MediumStretchedHideSouthDeed(); break; case 87: item = new MediumStretchedHideEastDeed(); break; case 88: item = new LightFlowerTapestrySouthDeed(); break; case 89: item = new LightFlowerTapestryEastDeed(); break; case 90: item = new DarkFlowerTapestrySouthDeed(); break; case 91: item = new DarkFlowerTapestryEastDeed(); break; case 92: item = new BrownBearRugSouthDeed(); break; case 93: item = new BrownBearRugEastDeed(); break; case 94: item = new WallSconce(); break; case 95: item = new WallTorch(); break; case 96: item = new CandleShort(); break; case 97: item = new CandleLarge(); break; case 98: item = new DecorativeSwordNorth(); break; case 99: item = new DecorativeSwordWest(); break; case 100: item = new Tapestry1N(); break; case 101: item = new Tapestry2N(); break; case 102: item = new Tapestry2W(); break; case 103: item = new Tapestry3N(); break; case 104: item = new Tapestry3W(); break; case 105: item = new Tapestry4N(); break; case 106: item = new Tapestry4W(); break; case 107: item = new Tapestry5N(); break; case 108: item = new Tapestry5W(); break; case 109: item = new Tapestry6N(); break; default: item = new CandleSkull(); break; } item.LootType = LootType.Regular; item.Movable = true; PackItem(item); } }
private void OnBeginDream(PlayerMobile m) { if ((!m.Alive)) { return; } m.SendMessage("Thou hast fallen asleep."); //Create the player's box and label it MetalBox playerBox = new MetalBox(); playerBox.Name = m.Name; //Items list so we can remove them List <Item> equipItems = m.Items; //Remove clothing/equipment for (int x = m.Items.Count - 1; x >= 0; x--) { if (!(m.Items[x] is Backpack)) { playerBox.AddItem(m.Items[x]); } } //Create the box for the backpack items MetalBox backpackBox = new MetalBox(); playerBox.AddItem(backpackBox); //Remove backpack items for (int y = m.Backpack.Items.Count - 1; y >= 0; y--) { if ((m.Backpack.Items[y] is HelmOfCourage) || (m.Backpack.Items[y] is CrystalRoseOfLove) || (m.Backpack.Items[y] is MirrorOfTruth) || (m.Backpack.Items[y] is StaffOrb)) { } else { backpackBox.AddItem(m.Backpack.Items[y]); } } //Move the container away playerBox.MoveToWorld(new Point3D(0, 0, 0), Map.SerpentIsle); //Move pets away foreach (Mobile mobile in m.AllFollowers) { mobile.MoveToWorld(new Point3D(0, 0, 0), Map.SerpentIsle); mobile.Frozen = true; } //Send to random destination in the dream switch (Utility.Random(4)) { case 0: m.MoveToWorld(new Point3D(1988, 1536, 0), Map.SerpentIsle); m.SetDirection(Direction.East); break; case 1: m.MoveToWorld(new Point3D(2050, 1491, 0), Map.SerpentIsle); m.SetDirection(Direction.North); break; case 2: m.MoveToWorld(new Point3D(2040, 1389, 0), Map.SerpentIsle); m.SetDirection(Direction.East); break; case 3: m.MoveToWorld(new Point3D(1904, 1376, 0), Map.SerpentIsle); m.SetDirection(Direction.West); break; } //Restore player to full ((PlayerMobile)m).Hits = m.HitsMax; ((PlayerMobile)m).Mana = m.ManaMax; ((PlayerMobile)m).Stam = m.StamMax; ((PlayerMobile)m).Hunger = 20; ((PlayerMobile)m).Thirst = 20; ((PlayerMobile)m).Paralyzed = false; ((PlayerMobile)m).Poison = null; EvilOmenSpell.TryEndEffect(m); StrangleSpell.RemoveCurse(m); CorpseSkinSpell.RemoveCurse(m); CurseSpell.RemoveEffect(m); MortalStrike.EndWound(m); BloodOathSpell.RemoveCurse(m); MindRotSpell.ClearMindRotScalar(m); BuffInfo.RemoveBuff(m, BuffIcon.Clumsy); BuffInfo.RemoveBuff(m, BuffIcon.FeebleMind); BuffInfo.RemoveBuff(m, BuffIcon.Weaken); BuffInfo.RemoveBuff(m, BuffIcon.Curse); BuffInfo.RemoveBuff(m, BuffIcon.MassCurse); BuffInfo.RemoveBuff(m, BuffIcon.MortalStrike); BuffInfo.RemoveBuff(m, BuffIcon.Mindrot); //Additionally, remove any polymorphs PolymorphSpell.EndPolymorph(m); StoneFormSpell.EndEffect(m); m.BodyMod = 0; m.HueMod = -1; }
public override void GenerateLoot() { if (Utility.Random(100) <= 20) { int hue = Utility.RandomMinMax(1, 1001); Sandals sandals = new Sandals(); sandals.Hue = hue; PackItem(sandals); } if (Utility.Random(100) <= 10) { int hue = Utility.RandomMinMax(1, 1001); Sandals sandals = new Sandals(); sandals.Hue = hue; PackItem(sandals); } if (Utility.Random(100) <= 5) { int hue = Utility.RandomMinMax(1, 1001); Sandals sandals = new Sandals(); sandals.Hue = hue; PackItem(sandals); } if (Utility.Random(100) <= 5) { int hue = Utility.RandomMinMax(1201, 1255); Sandals sandals = new Sandals(); sandals.Hue = hue; PackItem(sandals); } if (Utility.Random(100) <= 2) { int hue = Utility.RandomMinMax(2101, 2130); Sandals sandals = new Sandals(); sandals.Hue = hue; PackItem(sandals); } if (Utility.Random(100) <= 1) { int hue = 2936; Sandals sandals = new Sandals(); sandals.Hue = hue; PackItem(sandals); } if (Utility.Random(1000) <= 2) { int hue; Sandals sandals = new Sandals(); switch (Utility.Random(7)) { case 0: hue = 1155; break; case 1: hue = 1156; break; case 2: hue = 1157; break; case 3: hue = 1158; break; case 4: hue = 1160; break; case 5: hue = 1172; break; default: hue = 1175; break; } sandals.Hue = hue; PackItem(sandals); } if (Utility.Random(1000) <= 2) { int hue; Sandals sandals = new Sandals(); switch (Utility.Random(5)) { case 0: hue = 1176; break; case 1: hue = 1171; break; case 2: hue = 1159; break; case 3: hue = 1170; break; default: hue = 1161; break; } sandals.Hue = hue; PackItem(sandals); } double chance = Utility.RandomDouble(); if (chance <= 0.10) { Seed seed; PlantType type; switch (Utility.Random(17)) { case 0: type = PlantType.CampionFlowers; break; case 1: type = PlantType.Poppies; break; case 2: type = PlantType.Snowdrops; break; case 3: type = PlantType.Bulrushes; break; case 4: type = PlantType.Lilies; break; case 5: type = PlantType.PampasGrass; break; case 6: type = PlantType.Rushes; break; case 7: type = PlantType.ElephantEarPlant; break; case 8: type = PlantType.Fern; break; case 9: type = PlantType.PonytailPalm; break; case 10: type = PlantType.SmallPalm; break; case 11: type = PlantType.CenturyPlant; break; case 12: type = PlantType.WaterPlant; break; case 13: type = PlantType.SnakePlant; break; case 14: type = PlantType.PricklyPearCactus; break; case 15: type = PlantType.BarrelCactus; break; default: type = PlantType.TribarrelCactus; break; } PlantHue hue; switch (Utility.Random(19)) { case 0: hue = PlantHue.Plain; break; case 1: hue = PlantHue.Red; break; case 2: hue = PlantHue.Blue; break; case 3: hue = PlantHue.Yellow; break; case 4: hue = PlantHue.BrightRed; break; case 5: hue = PlantHue.BrightBlue; break; case 6: hue = PlantHue.BrightYellow; break; case 7: hue = PlantHue.Purple; break; case 8: hue = PlantHue.Green; break; case 9: hue = PlantHue.Orange; break; case 10: hue = PlantHue.BrightPurple; break; case 11: hue = PlantHue.BrightGreen; break; case 12: hue = PlantHue.BrightOrange; break; case 13: hue = PlantHue.Black; break; case 14: hue = PlantHue.White; break; case 15: hue = PlantHue.Pink; break; case 16: hue = PlantHue.Magenta; break; case 17: hue = PlantHue.Aqua; break; default: hue = PlantHue.FireRed; break; } seed = new Seed(type, hue, false); PackItem(seed); if (Utility.Random(500) == 1) { PackItem(new BlackDyeTub()); } if (Utility.Random(100) < 15) { Item item; switch (Utility.Random(111)) { case 0: item = new Tapestry6W(); break; case 1: item = new MetalChest(); break; case 2: item = new MetalGoldenChest(); break; case 3: item = new MetalBox(); break; case 4: item = new AniLargeVioletFlask(); break; case 5: item = new AniRedRibbedFlask(); break; case 6: item = new AniSmallBlueFlask(); break; case 7: item = new BlueBeaker(); break; case 8: item = new BlueCurvedFlask(); break; case 9: item = new EmptyVial(); break; case 10: item = new EmptyVialsWRack(); break; case 11: item = new LargeFlask(); break; case 12: item = new LargeVioletFlask(); break; //case 13: item = new HourGlass(); break; //case 14: item = new HourGlassAni(); break; case 15: item = new DecorativeDAxeWest(); break; case 16: item = new DecorativeDAxeNorth(); break; case 17: item = new DecorativeBowWest(); break; case 18: item = new DecorativeBowNorth(); break; case 19: item = new DecorativeAxeWest(); break; case 20: item = new DecorativeAxeNorth(); break; case 21: item = new DecorativeShieldSword2West(); break; case 22: item = new DecorativeShieldSword2North(); break; case 23: item = new DecorativeShieldSword1West(); break; case 24: item = new DecorativeShieldSword1North(); break; case 25: item = new DecorativeShield11(); break; case 26: item = new DecorativeShield10(); break; case 27: item = new DecorativeShield9(); break; case 28: item = new DecorativeShield8(); break; case 29: item = new DecorativeShield7(); break; case 30: item = new DecorativeShield6(); break; case 31: item = new DecorativeShield5(); break; case 32: item = new DecorativeShield4(); break; case 33: item = new DecorativeShield3(); break; case 34: item = new DecorativeShield2(); break; case 35: item = new DecorativeShield1(); break; case 36: item = new Whip(); break; case 37: item = new SilverWire(); break; case 38: item = new Rope(); break; case 39: item = new PaintsAndBrush(); break; case 40: item = new IronWire(); break; case 41: item = new GoldWire(); break; case 42: item = new CopperWire(); break; case 43: item = new WoodDebris(); break; case 44: item = new RuinedPainting(); break; case 45: item = new RuinedFallenChairB(); break; case 46: item = new FullVialsWRack(); break; case 47: item = new FullJar(); break; case 48: item = new FullJars2(); break; case 49: item = new FullJars3(); break; case 50: item = new FullJars4(); break; case 51: item = new GreenBeaker(); break; case 52: item = new GreenBottle(); break; case 53: item = new VioletStemmedBottle(); break; case 54: item = new SpinningHourglass(); break; case 55: item = new ArcheryButte(); break; case 56: item = new PhillipsWoodenSteed(); break; case 57: item = new PileOfGlacialSnow(); break; case 58: item = new RedPoinsettia(); break; case 59: item = new RoseOfTrinsic(); break; case 60: item = new RaiseSwitch(); break; case 61: item = new SpecialFishingNet(); break; case 62: item = new SpecialHairDye(); break; case 63: item = new SpecialBeardDye(); break; case 64: item = new SnowPile(); break; case 65: item = new StatueEast2(); break; case 66: item = new StatuePegasus2(); break; case 67: item = new StatueSouth2(); break; case 68: item = new StatueSouthEast(); break; case 69: item = new StatuetteDyeTub(); break; case 70: item = new StatueWest(); break; case 71: item = new TapestryOfSosaria(); break; case 72: item = new WhitePoinsettia(); break; case 73: item = new WindChimes(); break; case 74: item = new ZoogiFungus(); break; case 75: item = new RuinedFallenChairA(); break; case 76: item = new RuinedDrawers(); break; case 77: item = new RuinedClock(); break; case 78: item = new RuinedChair(); break; case 79: item = new RuinedBooks(); break; case 80: item = new RuinedBookcase(); break; case 81: item = new RuinedArmoire(); break; case 82: item = new SmallStretchedHideSouthDeed(); break; case 83: item = new SmallStretchedHideEastDeed(); break; case 84: item = new PolarBearRugSouthDeed(); break; case 85: item = new PolarBearRugEastDeed(); break; case 86: item = new MediumStretchedHideSouthDeed(); break; case 87: item = new MediumStretchedHideEastDeed(); break; case 88: item = new LightFlowerTapestrySouthDeed(); break; case 89: item = new LightFlowerTapestryEastDeed(); break; case 90: item = new DarkFlowerTapestrySouthDeed(); break; case 91: item = new DarkFlowerTapestryEastDeed(); break; case 92: item = new BrownBearRugSouthDeed(); break; case 93: item = new BrownBearRugEastDeed(); break; case 94: item = new WallSconce(); break; case 95: item = new WallTorch(); break; case 96: item = new CandleShort(); break; case 97: item = new CandleLarge(); break; case 98: item = new DecorativeSwordNorth(); break; case 99: item = new DecorativeSwordWest(); break; case 100: item = new Tapestry1N(); break; case 101: item = new Tapestry2N(); break; case 102: item = new Tapestry2W(); break; case 103: item = new Tapestry3N(); break; case 104: item = new Tapestry3W(); break; case 105: item = new Tapestry4N(); break; case 106: item = new Tapestry4W(); break; case 107: item = new Tapestry5N(); break; case 108: item = new Tapestry5W(); break; case 109: item = new Tapestry6N(); break; default: item = new CandleSkull(); break; } item.LootType = LootType.Regular; item.Movable = true; PackItem(item); } if (Utility.Random(100) < 10) { Item item; switch (Utility.Random(111)) { case 0: item = new Tapestry6W(); break; case 1: item = new MetalChest(); break; case 2: item = new MetalGoldenChest(); break; case 3: item = new MetalBox(); break; case 4: item = new AniLargeVioletFlask(); break; case 5: item = new AniRedRibbedFlask(); break; case 6: item = new AniSmallBlueFlask(); break; case 7: item = new BlueBeaker(); break; case 8: item = new BlueCurvedFlask(); break; case 9: item = new EmptyVial(); break; case 10: item = new EmptyVialsWRack(); break; case 11: item = new LargeFlask(); break; case 12: item = new LargeVioletFlask(); break; //case 13: item = new HourGlass(); break; //case 14: item = new HourGlassAni(); break; case 15: item = new DecorativeDAxeWest(); break; case 16: item = new DecorativeDAxeNorth(); break; case 17: item = new DecorativeBowWest(); break; case 18: item = new DecorativeBowNorth(); break; case 19: item = new DecorativeAxeWest(); break; case 20: item = new DecorativeAxeNorth(); break; case 21: item = new DecorativeShieldSword2West(); break; case 22: item = new DecorativeShieldSword2North(); break; case 23: item = new DecorativeShieldSword1West(); break; case 24: item = new DecorativeShieldSword1North(); break; case 25: item = new DecorativeShield11(); break; case 26: item = new DecorativeShield10(); break; case 27: item = new DecorativeShield9(); break; case 28: item = new DecorativeShield8(); break; case 29: item = new DecorativeShield7(); break; case 30: item = new DecorativeShield6(); break; case 31: item = new DecorativeShield5(); break; case 32: item = new DecorativeShield4(); break; case 33: item = new DecorativeShield3(); break; case 34: item = new DecorativeShield2(); break; case 35: item = new DecorativeShield1(); break; case 36: item = new Whip(); break; case 37: item = new SilverWire(); break; case 38: item = new Rope(); break; case 39: item = new PaintsAndBrush(); break; case 40: item = new IronWire(); break; case 41: item = new GoldWire(); break; case 42: item = new CopperWire(); break; case 43: item = new WoodDebris(); break; case 44: item = new RuinedPainting(); break; case 45: item = new RuinedFallenChairB(); break; case 46: item = new FullVialsWRack(); break; case 47: item = new FullJar(); break; case 48: item = new FullJars2(); break; case 49: item = new FullJars3(); break; case 50: item = new FullJars4(); break; case 51: item = new GreenBeaker(); break; case 52: item = new GreenBottle(); break; case 53: item = new VioletStemmedBottle(); break; case 54: item = new SpinningHourglass(); break; case 55: item = new ArcheryButte(); break; case 56: item = new PhillipsWoodenSteed(); break; case 57: item = new PileOfGlacialSnow(); break; case 58: item = new RedPoinsettia(); break; case 59: item = new RoseOfTrinsic(); break; case 60: item = new RaiseSwitch(); break; case 61: item = new SpecialFishingNet(); break; case 62: item = new SpecialHairDye(); break; case 63: item = new SpecialBeardDye(); break; case 64: item = new SnowPile(); break; case 65: item = new StatueEast2(); break; case 66: item = new StatuePegasus2(); break; case 67: item = new StatueSouth2(); break; case 68: item = new StatueSouthEast(); break; case 69: item = new StatuetteDyeTub(); break; case 70: item = new StatueWest(); break; case 71: item = new TapestryOfSosaria(); break; case 72: item = new WhitePoinsettia(); break; case 73: item = new WindChimes(); break; case 74: item = new ZoogiFungus(); break; case 75: item = new RuinedFallenChairA(); break; case 76: item = new RuinedDrawers(); break; case 77: item = new RuinedClock(); break; case 78: item = new RuinedChair(); break; case 79: item = new RuinedBooks(); break; case 80: item = new RuinedBookcase(); break; case 81: item = new RuinedArmoire(); break; case 82: item = new SmallStretchedHideSouthDeed(); break; case 83: item = new SmallStretchedHideEastDeed(); break; case 84: item = new PolarBearRugSouthDeed(); break; case 85: item = new PolarBearRugEastDeed(); break; case 86: item = new MediumStretchedHideSouthDeed(); break; case 87: item = new MediumStretchedHideEastDeed(); break; case 88: item = new LightFlowerTapestrySouthDeed(); break; case 89: item = new LightFlowerTapestryEastDeed(); break; case 90: item = new DarkFlowerTapestrySouthDeed(); break; case 91: item = new DarkFlowerTapestryEastDeed(); break; case 92: item = new BrownBearRugSouthDeed(); break; case 93: item = new BrownBearRugEastDeed(); break; case 94: item = new WallSconce(); break; case 95: item = new WallTorch(); break; case 96: item = new CandleShort(); break; case 97: item = new CandleLarge(); break; case 98: item = new DecorativeSwordNorth(); break; case 99: item = new DecorativeSwordWest(); break; case 100: item = new Tapestry1N(); break; case 101: item = new Tapestry2N(); break; case 102: item = new Tapestry2W(); break; case 103: item = new Tapestry3N(); break; case 104: item = new Tapestry3W(); break; case 105: item = new Tapestry4N(); break; case 106: item = new Tapestry4W(); break; case 107: item = new Tapestry5N(); break; case 108: item = new Tapestry5W(); break; case 109: item = new Tapestry6N(); break; default: item = new CandleSkull(); break; } item.LootType = LootType.Regular; item.Movable = true; PackItem(item); } } }
private Item CreateItem(int ItemID) // Create the appropriate item class - Defaults to a Static Item { Item item = null; switch (ItemID) { #region MobileSaver case 0x0001: // Now used for Mobile Importing. { item = new Static(0x1); break; } #endregion case 0x1F19: // Add any unwanted items here. case 0x0FB7: // TODO: Boat parts: planks, tillerman, etc. break; case 0x0FB1: //forge item = new SmallForgeAddon(); break; case 0x0FAF: //anvil east item = new AnvilEastAddon(); break; case 0x0FB0: //anvil south item = new AnvilSouthAddon(); break; case 0x2DD8: //Elven Forge item = new ElvenForgeAddon(); break; case 0x1922: //FlourMill East item = new FlourMillEastAddon(); break; case 0x1920: case 0x1924: break; //Don't add those items since the addon has them. case 0x192E: //FlourMill South item = new FlourMillSouthAddon(); break; case 0x192C: case 0x1930: break; //Don't add those items since the addon has them. case 0x1060: //Loom East item = new LoomEastAddon(); break; case 0x105F: break; //Don't add those items since the addon has them. case 0x1061: //Loom South item = new LoomSouthAddon(); break; case 0x1062: break; //Don't add those items since the addon has them. case 0x1019: //Spinningwheel East item = new SpinningwheelEastAddon(); break; case 0x1015: //Spinningwheel South item = new SpinningwheelSouthAddon(); break; // Housing Metal Doors case 0x679: item = new NorthWestDoor(); break; case 0x67B: item = new NorthEastDoor(); break; case 0x675: item = new SouthWestDoor(); break; case 0x677: item = new SouthEastDoor(); break; case 0x683: item = new WestNorthDoor(); break; case 0x681: item = new WestSouthDoor(); break; case 0x67F: item = new EastNorthDoor(); break; case 0x67D: item = new EastSouthDoor(); break; /* * case 0x0675: // Metal Doors 2 NOTE: Some doors seem to open the wrong way, but there's no way to determine correct CCW/CW from the POL file. * item = new MetalDoor2( DoorFacing.WestCW ); * break; * case 0x0677: * item = new MetalDoor2( DoorFacing.EastCCW ); * break; * case 0x067D: * item = new MetalDoor2( DoorFacing.SouthCW ); * break; * case 0x067F: * item = new MetalDoor2( DoorFacing.NorthCCW ); * break; */ case 0x0685: // Barred Metal Doors item = new BarredMetalDoor(DoorFacing.WestCW); break; case 0x0687: item = new BarredMetalDoor(DoorFacing.EastCCW); break; case 0x068D: item = new BarredMetalDoor(DoorFacing.SouthCW); break; case 0x068F: item = new BarredMetalDoor(DoorFacing.NorthCCW); break; case 0x0695: // Rattan Doors item = new RattanDoor(DoorFacing.WestCW); break; case 0x0697: item = new RattanDoor(DoorFacing.EastCCW); break; case 0x069D: item = new RattanDoor(DoorFacing.SouthCW); break; case 0x069F: item = new RattanDoor(DoorFacing.NorthCCW); break; case 0x06A5: // Dark Wood Doors item = new DarkWoodDoor(DoorFacing.WestCW); break; case 0x06A7: item = new DarkWoodDoor(DoorFacing.EastCCW); break; case 0x06AD: item = new DarkWoodDoor(DoorFacing.SouthCW); break; case 0x06AF: item = new DarkWoodDoor(DoorFacing.NorthCCW); break; case 0x06B5: // Medium Wood Doors item = new MediumWoodDoor(DoorFacing.WestCW); break; case 0x06B7: item = new MediumWoodDoor(DoorFacing.EastCCW); break; case 0x06BD: item = new MediumWoodDoor(DoorFacing.SouthCW); break; case 0x06BF: item = new MediumWoodDoor(DoorFacing.NorthCCW); break; /* * case 0x06C5: // Metal Doors * item = new MetalDoor( DoorFacing.WestCW ); * break; * case 0x06C7: * item = new MetalDoor( DoorFacing.EastCCW ); * break; * case 0x06CD: * item = new MetalDoor( DoorFacing.SouthCW ); * break; * case 0x06CF: * item = new MetalDoor( DoorFacing.NorthCCW ); * break; */ case 0x06D5: // Light Wood Doors item = new LightWoodDoor(DoorFacing.WestCW); break; case 0x06D7: item = new LightWoodDoor(DoorFacing.EastCCW); break; case 0x06DD: item = new LightWoodDoor(DoorFacing.SouthCW); break; case 0x06DF: item = new LightWoodDoor(DoorFacing.NorthCCW); break; case 0x06E5: // Strong Wood Doors item = new StrongWoodDoor(DoorFacing.WestCW); break; case 0x06E7: item = new StrongWoodDoor(DoorFacing.EastCCW); break; case 0x06ED: item = new StrongWoodDoor(DoorFacing.SouthCW); break; case 0x06EF: item = new StrongWoodDoor(DoorFacing.NorthCCW); break; case 0x2A05: //South facing West half Paper door (SE) item = new SWPaperSEDoor(); break; case 0x2A07: //South facing East half Paper door (SE) item = new SEPaperSEDoor(); break; case 0x2A09: //East facing South half Paper door (SE) item = new ESPaperSEDoor(); break; case 0x2A0B: //East facing North half Paper door (SE) item = new ENPaperSEDoor(); break; case 0x2A0D: //South facing West half Cloth door (SE) item = new SWClothSEDoor(); break; case 0x2A0F: //South facing East half Cloth door (SE) item = new SEClothSEDoor(); break; case 0x2A11: //East facing South half Cloth door (SE) item = new ESClothSEDoor(); break; case 0x2A13: //East facing North half Cloth door (SE) item = new ENClothSEDoor(); break; case 0x2A16: //South facing West half Wooden door (SE) item = new SWWoodenSEDoor(); break; case 0x2A17: //South facing East half Wooden door (SE) item = new SEWoodenSEDoor(); break; case 0x2A19: //East facing South half Wooden door (SE) item = new ESWoodenSEDoor(); break; case 0x2A1B: //East facing North half Wooden door (SE) item = new ENWoodenSEDoor(); break; case 0xE77: //Barrel item = new Barrel(); item.Movable = false; break; case 0xE7F: //Keg item = new Keg(); item.Movable = false; break; case 0xE7A: //PicnicBasket item = new PicnicBasket(); item.Movable = false; break; case 0x990: //Basket item = new Basket(); item.Movable = false; break; case 0x9AA: //WoodenBox (0xE7D) item = new WoodenBox(); item.Movable = false; break; case 0xE7D: //WoodenBox (0xE7D) item = new WoodenBox(); item.Movable = false; item.ItemID = 0xE7D; break; case 0x9A9: //SmallCrate (0xE7E) item = new SmallCrate(); item.Movable = false; break; case 0xE7E: //SmallCrate (0xE7E) item = new SmallCrate(); item.Movable = false; item.ItemID = 0xE7E; break; case 0xE3F: //MediumCrate (0xE3E) item = new MediumCrate(); item.Movable = false; break; case 0xE3E: //MediumCrate (0xE3E) item = new MediumCrate(); item.Movable = false; item.ItemID = 0xE3E; break; case 0xE3D: //LargeCrate (0xE3C) item = new LargeCrate(); item.Movable = false; break; case 0xE3C: //LargeCrate (0xE3C) item = new LargeCrate(); item.Movable = false; item.ItemID = 0xE3C; break; case 0x9A8: //MetalBox (0xE80) item = new MetalBox(); item.Movable = false; break; case 0xE80: //MetalBox (0xE80) item = new MetalBox(); item.Movable = false; item.ItemID = 0xE80; break; case 0x9AB: //MetalChest (0xE7C) item = new MetalChest(); item.Movable = false; break; case 0xE7C: //MetalChest (0xE7C) item = new MetalChest(); item.Movable = false; item.ItemID = 0xE7C; break; case 0xE41: //MetalGoldenChest (0xE40) item = new MetalGoldenChest(); item.Movable = false; break; case 0xE40: //MetalGoldenChest (0xE40) item = new MetalGoldenChest(); item.Movable = false; item.ItemID = 0xE40; break; case 0xe43: //WoodenChest (0xe42) item = new WoodenChest(); item.Movable = false; break; case 0xe42: //WoodenChest (0xe42) item = new WoodenChest(); item.Movable = false; item.ItemID = 0xe42; break; case 0x280B: //PlainWoodenChest (0x280C) item = new PlainWoodenChest(); item.Movable = false; break; case 0x280C: //PlainWoodenChest (0x280C) item = new PlainWoodenChest(); item.Movable = false; item.ItemID = 0x280C; break; case 0x280D: //OrnateWoodenChest (0x280E) item = new OrnateWoodenChest(); item.Movable = false; break; case 0x280E: //OrnateWoodenChest (0x280E) item = new OrnateWoodenChest(); item.Movable = false; item.ItemID = 0x280E; break; case 0x280F: //GildedWoodenChest (0x2810) item = new GildedWoodenChest(); item.Movable = false; break; case 0x2810: //GildedWoodenChest (0x2810) item = new GildedWoodenChest(); item.Movable = false; item.ItemID = 0x2810; break; case 0x2811: //WoodenFootLocker (0x2812) item = new WoodenFootLocker(); item.Movable = false; break; case 0x2812: //WoodenFootLocker (0x2812) item = new WoodenFootLocker(); item.Movable = false; item.ItemID = 0x2812; break; case 0x2813: //FinishedWoodenChest (0x2814) item = new FinishedWoodenChest(); item.Movable = false; break; case 0x2814: //FinishedWoodenChest (0x2814) item = new FinishedWoodenChest(); item.Movable = false; item.ItemID = 0x2814; break; case 0x2815: //TallCabinet (0x2816) item = new TallCabinet(); item.Movable = false; break; case 0x2816: //TallCabinet (0x2816) item = new TallCabinet(); item.Movable = false; item.ItemID = 0x2816; break; case 0x2817: //ShortCabinet (0x2818) item = new ShortCabinet(); item.Movable = false; break; case 0x2818: //ShortCabinet (0x2818) item = new ShortCabinet(); item.Movable = false; item.ItemID = 0x2818; break; case 0x2857: //RedArmoire (0x2858) item = new RedArmoire(); item.Movable = false; break; case 0x2858: //RedArmoire (0x2858) item = new RedArmoire(); item.Movable = false; item.ItemID = 0x2858; break; case 0x285D: //CherryArmoire (0x285E) item = new CherryArmoire(); item.Movable = false; break; case 0x285E: //CherryArmoire (0x285E) item = new CherryArmoire(); item.Movable = false; item.ItemID = 0x285E; break; case 0x285B: //MapleArmoire (0x285C) item = new MapleArmoire(); item.Movable = false; break; case 0x285C: //MapleArmoire (0x285C) item = new MapleArmoire(); item.Movable = false; item.ItemID = 0x285C; break; case 0x2859: //ElegantArmoire (0x285A) item = new ElegantArmoire(); item.Movable = false; break; case 0x285A: //ElegantArmoire (0x285A) item = new ElegantArmoire(); item.Movable = false; item.ItemID = 0x285A; break; case 0xA97: //FullBookcase (0xa97, 0xa99, 0xa98, 0xa9a, 0xa9b, 0xa9c) item = new FullBookcase(); item.Movable = false; break; case 0xA99: //FullBookcase (0xa97, 0xa99, 0xa98, 0xa9a, 0xa9b, 0xa9c) item = new FullBookcase(); item.Movable = false; item.ItemID = 0xa99; break; case 0xA98: //FullBookcase (0xa97, 0xa99, 0xa98, 0xa9a, 0xa9b, 0xa9c) item = new FullBookcase(); item.Movable = false; item.ItemID = 0xa98; break; case 0xA9a: //FullBookcase (0xa97, 0xa99, 0xa98, 0xa9a, 0xa9b, 0xa9c) item = new FullBookcase(); item.Movable = false; item.ItemID = 0xa9a; break; case 0xA9b: //FullBookcase (0xa97, 0xa99, 0xa98, 0xa9a, 0xa9b, 0xa9c) item = new FullBookcase(); item.Movable = false; item.ItemID = 0xa9b; break; case 0xA9c: //FullBookcase (0xa97, 0xa99, 0xa98, 0xa9a, 0xa9b, 0xa9c) item = new FullBookcase(); item.Movable = false; item.ItemID = 0xa9c; break; case 0xA9D: //EmptyBookcase (0xa9e) item = new EmptyBookcase(); item.Movable = false; break; case 0xa9e: //EmptyBookcase (0xa9e) item = new EmptyBookcase(); item.Movable = false; item.ItemID = 0xa9e; break; case 0xA2C: //Drawer (0xa34) item = new Drawer(); item.Movable = false; break; case 0xa34: //Drawer (0xa34) item = new Drawer(); item.Movable = false; item.ItemID = 0xa34; break; case 0xA30: //FancyDrawer (0xa38) item = new FancyDrawer(); item.Movable = false; break; case 0xa38: //FancyDrawer (0xa38) item = new FancyDrawer(); item.Movable = false; item.ItemID = 0xa38; break; case 0xA4F: //Armoire (0xa53) item = new Armoire(); item.Movable = false; break; case 0xa53: //Armoire (0xa53) item = new Armoire(); item.Movable = false; item.ItemID = 0xa53; break; case 0xA4D: //FancyArmoire (0xa51) item = new FancyArmoire(); item.Movable = false; break; case 0xa51: //FancyArmoire (0xa51) item = new FancyArmoire(); item.Movable = false; item.ItemID = 0xa51; break; default: item = new Static(ItemID); item.Movable = false; break; } return(item); }
public override bool OnBeforeDeath(Mobile m) { if (!(m is PlayerMobile)) { return(base.OnBeforeDeath(m)); } //Remove the player's items acquired in the dream for (int x = m.Items.Count - 1; x >= 0; x--) { if (!(m.Items[x] is Backpack)) { m.RemoveItem(m.Items[x]); } } for (int y = m.Backpack.Items.Count - 1; y >= 0; y--) { if ((m.Backpack.Items[y] is HelmOfCourage) || (m.Backpack.Items[y] is CrystalRoseOfLove) || (m.Backpack.Items[y] is MirrorOfTruth) || (m.Backpack.Items[y] is StaffOrb)) { } else { m.RemoveItem(m.Backpack.Items[y]); } } //Find the player's item container Item[] Items = Map.SerpentIsle.GetItemsInRange(new Point3D(0, 0, 0)).CastToArray <Item>(); foreach (Item found in Items) { if (found is MetalBox) { MetalBox box = found as MetalBox; if (box.Name == m.Name) { //Give them back their stuff for (int x = box.Items.Count - 1; x >= 0; x--) { if (box.Items[x] is MetalBox) { MetalBox itemBox = box.Items[x] as MetalBox; for (int y = itemBox.Items.Count - 1; y >= 0; y--) { m.AddToBackpack(itemBox.Items[y]); } if (itemBox.Items.Count == 0) { itemBox.Delete(); } } else { m.EquipItem(box.Items[x]); } } if (box.Items.Count == 0) { box.Delete(); } } } } //Move pets back foreach (Mobile mobile in ((PlayerMobile)m).AllFollowers) { mobile.MoveToWorld(new Point3D(650, 881, 0), Map.SerpentIsle); mobile.Frozen = false; } switch (Utility.Random(2)) { case 0: m.MoveToWorld(new Point3D(643, 881, 0), Map.SerpentIsle); break; case 1: m.MoveToWorld(new Point3D(662, 882, 0), Map.SerpentIsle); break; } m.SendMessage("Thou hast awoken from thy dream."); //Restore player to full ((PlayerMobile)m).Hits = m.HitsMax; ((PlayerMobile)m).Mana = m.ManaMax; ((PlayerMobile)m).Stam = m.StamMax; ((PlayerMobile)m).Hunger = 20; ((PlayerMobile)m).Thirst = 20; ((PlayerMobile)m).Paralyzed = false; ((PlayerMobile)m).Poison = null; EvilOmenSpell.TryEndEffect(m); StrangleSpell.RemoveCurse(m); CorpseSkinSpell.RemoveCurse(m); CurseSpell.RemoveEffect(m); MortalStrike.EndWound(m); BloodOathSpell.RemoveCurse(m); MindRotSpell.ClearMindRotScalar(m); BuffInfo.RemoveBuff(m, BuffIcon.Clumsy); BuffInfo.RemoveBuff(m, BuffIcon.FeebleMind); BuffInfo.RemoveBuff(m, BuffIcon.Weaken); BuffInfo.RemoveBuff(m, BuffIcon.Curse); BuffInfo.RemoveBuff(m, BuffIcon.MassCurse); BuffInfo.RemoveBuff(m, BuffIcon.MortalStrike); BuffInfo.RemoveBuff(m, BuffIcon.Mindrot); return(false); }
private static void GiveItems(Mobile m) { Container pack = m.Backpack; if (pack == null) { return; } // Frog Drop /* * MetalBox box = new MetalBox(); * box.Name = "<BASEFONT COLOR='#007FFF'>Frog Drop Collection"; * box.LootType = LootType.Blessed; * box.Locked = true; * box.RequiredSkill = box.LockLevel = 1000; * box.DropItem( new WorldMap() ); * box.DropItem( new RedLeaves() ); * box.DropItem( new Sand() ); * box.DropItem( new SpecialHairDye() ); * box.DropItem( new Rope() ); * box.DropItem( new Vines() ); * box.DropItem( new TribalPaint() ); * box.DropItem( new RockArtifact() ); * box.DropItem( new Runebook() ); * box.DropItem( new Gold( 500 ) ); */ pack.DropItem(new FrogDropBag(true)); // Angel's Snack Pouch pouch = new Pouch(); pouch.DropItem(new HealPotion(25)); pouch.DropItem(new CurePotion(25)); pouch.DropItem(new RefreshPotion(25)); pack.DropItem(pouch); // Forks Bag bag = new Bag(); bag.Name = "Forks"; bag.DropItem(new BistroFork()); bag.DropItem(new GastroFork()); bag.DropItem(new SilverFork()); pack.DropItem(bag); // Spellcasting Stuff bag = new Bag(); bag.Name = "Spell Casting Stuff"; TomeOfLostKnowledge tome = new TomeOfLostKnowledge(); tome.Name = "Tome Of Lost Knowledge [Replica]"; tome.Content = 18446744073709551615; bag.DropItem(tome); bag.DropItem(new CompleteNecromancerSpellbook()); bag.DropItem(new BagOfAllReagents()); CrystallineRing ring = new CrystallineRing(); ring.Name = "Crystalline Ring [Replica]"; bag.DropItem(ring); OrnamentOfTheMagician brace = new OrnamentOfTheMagician(); brace.Name = "Ornament Of The Magician [Replica]"; bag.DropItem(brace); pack.DropItem(bag); // Blue Clothing MetalBox box = new MetalBox(); box.Name = "Blue Clothing"; box.DropItem(new BlueHat()); box.DropItem(new BlueArms()); box.DropItem(new BlueShirt()); box.DropItem(new BluePants()); box.DropItem(new BlueBoots()); box.DropItem(new BlueCloak()); box.DropItem(new BlueSash()); box.DropItem(new BlueBelt()); WoodenBox wood = new WoodenBox(); wood.Name = "Tier One Deeds"; for (int i = 0; i < 4; i++) { for (int j = 0; j < 9; j++) { wood.DropItem(new BlueEnhanceDeed((BlueEnhance)(i + 1), 1)); } } box.DropItem(wood); wood = new WoodenBox(); wood.Name = "Tier Two Deeds"; for (int i = 0; i < 4; i++) { for (int j = 0; j < 9; j++) { wood.DropItem(new BlueEnhanceDeed((BlueEnhance)(j + 1), 2)); } } box.DropItem(wood); pack.DropItem(box); }