public override void OnResponse(NetState sender, RelayInfo info) { PlayerMobile pm = from as PlayerMobile; if (info.ButtonID == 1) { BankBox bank = from.BankBox; if (bank == null) { return; } Accounting.Account acct = from.Account as Accounting.Account; switch (token.Type) { case PromotionalType.SoulStone: { SoulStone ss = new SoulStone(acct.Username); bank.DropItem(ss); from.SendLocalizedMessage(1070743); // A Soulstone has been created in your bank box! break; } case PromotionalType.SoulStoneFragment: { int offset = Utility.Random(0, 8); SoulStoneFragment ssf = new SoulStoneFragment(0x2AA1 + offset, acct.Username); bank.DropItem(ssf); from.SendLocalizedMessage(1070976); // A soulstone fragment has been created in your bank box. break; } case PromotionalType.AdvancedCharacter: { pm.SendGump(new AdvancedCharacterChoiceGump()); pm.ACState = AdvancedCharacterState.InUse; break; } // TODO: character transfer, seventh anniversary } token.Delete(); } }
public override void OnResponse( GameClient sender, RelayInfo info ) { PlayerMobile pm = from as PlayerMobile; if ( info.ButtonID == 1 ) { BankBox bank = from.BankBox; if ( bank == null ) return; Accounting.Account acct = from.Account as Accounting.Account; switch ( token.Type ) { case PromotionalType.SoulStone: { SoulStone ss = new SoulStone( acct.Username ); bank.DropItem( ss ); from.SendLocalizedMessage( 1070743 ); // A Soulstone has been created in your bank box! break; } case PromotionalType.BlueSoulstone: { SoulStone ss = new BlueSoulstone( acct.Username ); bank.DropItem( ss ); from.SendMessage( "A Blue Soulstone has been created in your bank box!" ); break; } case PromotionalType.SoulStoneFragment: { int offset = Utility.Random( 0, 8 ); SoulStoneFragment ssf = new SoulStoneFragment( 0x2AA1 + offset, acct.Username ); bank.DropItem( ssf ); from.SendLocalizedMessage( 1070976 ); // A soulstone fragment has been created in your bank box. break; } case PromotionalType.AdvancedCharacter: { pm.SendGump( new AdvancedCharacterChoiceGump() ); pm.ACState = AdvancedCharacterState.InUse; break; } case PromotionalType.SeventhAnniversary: { //Cerramos algún posible gump abierto (exploit arreglado) if ( !pm.HasGump( typeof( SeventhAniversaryGump ) ) ) pm.SendGump( new SeventhAniversaryGump( token ) ); break; } case PromotionalType.EighthAnniversary: { //Cerramos algún posible gump abierto (exploit arreglado) if ( !pm.HasGump( typeof( EighthAnniversaryGump ) ) ) pm.SendGump( new EighthAnniversaryGump( token ) ); break; } case PromotionalType.BrokenFurniture: { //Cerramos algún posible gump abierto (exploit arreglado) if ( !pm.HasGump( typeof( BrokenFurnitureGump ) ) ) pm.SendGump( new BrokenFurnitureConfirmGump( token ) ); break; } case PromotionalType.HeritageItems: { //Cerramos algún posible gump abierto (exploit arreglado) if ( !pm.HasGump( typeof( HeritageItemsGump ) ) ) pm.SendGump( new HeritageItemsConfirmGump( token ) ); break; } case PromotionalType.EvilHomeDecoration: { //Cerramos algún posible gump abierto (exploit arreglado) if ( !pm.HasGump( typeof( EvilHomeDecorationGump ) ) ) pm.SendGump( new EvilHomeDecorationConfirmGump( token ) ); break; } // TODO: character transfer } if ( token.Type != PromotionalType.SeventhAnniversary && token.Type != PromotionalType.EighthAnniversary ) token.Delete(); } }
public override void OnResponse(GameClient sender, RelayInfo info) { PlayerMobile pm = from as PlayerMobile; if (info.ButtonID == 1) { BankBox bank = from.BankBox; if (bank == null) { return; } Accounting.Account acct = from.Account as Accounting.Account; switch (token.Type) { case PromotionalType.SoulStone: { SoulStone ss = new SoulStone(acct.Username); bank.DropItem(ss); from.SendLocalizedMessage(1070743); // A Soulstone has been created in your bank box! break; } case PromotionalType.BlueSoulstone: { SoulStone ss = new BlueSoulstone(acct.Username); bank.DropItem(ss); from.SendMessage("A Blue Soulstone has been created in your bank box!"); break; } case PromotionalType.SoulStoneFragment: { int offset = Utility.Random(0, 8); SoulStoneFragment ssf = new SoulStoneFragment(0x2AA1 + offset, acct.Username); bank.DropItem(ssf); from.SendLocalizedMessage(1070976); // A soulstone fragment has been created in your bank box. break; } case PromotionalType.AdvancedCharacter: { pm.SendGump(new AdvancedCharacterChoiceGump()); pm.ACState = AdvancedCharacterState.InUse; break; } case PromotionalType.SeventhAnniversary: { //Cerramos algún posible gump abierto (exploit arreglado) if (!pm.HasGump(typeof(SeventhAniversaryGump))) { pm.SendGump(new SeventhAniversaryGump(token)); } break; } case PromotionalType.EighthAnniversary: { //Cerramos algún posible gump abierto (exploit arreglado) if (!pm.HasGump(typeof(EighthAnniversaryGump))) { pm.SendGump(new EighthAnniversaryGump(token)); } break; } case PromotionalType.BrokenFurniture: { //Cerramos algún posible gump abierto (exploit arreglado) if (!pm.HasGump(typeof(BrokenFurnitureGump))) { pm.SendGump(new BrokenFurnitureConfirmGump(token)); } break; } case PromotionalType.HeritageItems: { //Cerramos algún posible gump abierto (exploit arreglado) if (!pm.HasGump(typeof(HeritageItemsGump))) { pm.SendGump(new HeritageItemsConfirmGump(token)); } break; } case PromotionalType.EvilHomeDecoration: { //Cerramos algún posible gump abierto (exploit arreglado) if (!pm.HasGump(typeof(EvilHomeDecorationGump))) { pm.SendGump(new EvilHomeDecorationConfirmGump(token)); } break; } // TODO: character transfer } if (token.Type != PromotionalType.SeventhAnniversary && token.Type != PromotionalType.EighthAnniversary) { token.Delete(); } } }
public override void OnResponse(NetState sender, RelayInfo info) { if (info.ButtonID == 0 || m_Stone.IsEmpty) { return; } Mobile from = sender.Mobile; if (!m_Stone.CheckUse(from)) { return; } if (info.ButtonID == 601) // Remove skill points { from.SendGump(new ConfirmRemovalGump(m_Stone)); return; } double skillValue = m_Stone.SkillValue; Skill fromSkill = from.Skills[m_Stone.Skill]; /* If we have, say, 88.4 in our skill and the stone holds 100, we need * 11.6 free points. Also, if we're below our skillcap by, say, 8.2 points, * we only need 11.6 - 8.2 = 3.4 points. */ int requiredAmount = (int)(skillValue * 10) - fromSkill.BaseFixedPoint - (from.SkillsCap - from.SkillsTotal); bool cannotAbsorb = false; if (fromSkill.Lock != SkillLock.Up) { cannotAbsorb = true; } else if (requiredAmount > 0) { int available = 0; for (int i = 0; i < from.Skills.Length; ++i) { if (from.Skills[i].Lock != SkillLock.Down) { continue; } available += from.Skills[i].BaseFixedPoint; } if (requiredAmount > available) { cannotAbsorb = true; } } if (cannotAbsorb) { // <CENTER>Unable to Absorb Selected Skill from Soulstone</CENTER> /* You cannot absorb the selected skill from the Soulstone at this time. The selected * skill may be locked or set to lower in your skill menu. You may also be at your * total skill cap. Click on "Skills" in your paperdoll menu to check your * raise/locked/lower settings and your total skills. Make any needed adjustments, * then click "Continue". If you do not wish to transfer the selected skill at this * time, click "Cancel". */ from.SendGump(new ErrorGump(m_Stone, 1070717, 1070716)); return; } if (skillValue > fromSkill.Cap) { // <CENTER>Unable to Absorb Selected Skill from Soulstone</CENTER> /* The amount of skill stored in this stone exceeds your individual skill cap for * that skill. In order to retrieve the skill points stored in this stone, you must * obtain a Power Scroll of the appropriate type and level in order to increase your * skill cap. You cannot currently retrieve the skill points stored in this stone. */ from.SendGump(new ErrorGump(m_Stone, 1070717, 1070715)); return; } if (fromSkill.Base >= skillValue) { // <CENTER>Unable to Absorb Selected Skill from Soulstone</CENTER> /* You cannot transfer the selected skill to the Soulstone at this time. The selected * skill has a skill level higher than what is stored in the Soulstone. */ // Wrong message?! from.SendGump(new ErrorGump(m_Stone, 1070717, 1070802)); return; } if (requiredAmount > 0) { for (int i = 0; i < from.Skills.Length; ++i) { if (from.Skills[i].Lock != SkillLock.Down) { continue; } if (requiredAmount >= from.Skills[i].BaseFixedPoint) { requiredAmount -= from.Skills[i].BaseFixedPoint; from.Skills[i].Base = 0.0; } else { from.Skills[i].BaseFixedPoint -= requiredAmount; break; } } } fromSkill.Base = skillValue; m_Stone.SkillValue = 0.0; m_Stone.NextUse = DateTime.UtcNow + m_Stone.UseDelay; if (m_Stone is SoulStoneFragment) { SoulStoneFragment ssf = m_Stone as SoulStoneFragment; ssf.UsesRemaining--; if (ssf.UsesRemaining == 0) { from.SendLocalizedMessage(1070974); // You have used up your soulstone fragment. } } else { from.SendLocalizedMessage(1070713); // You have successfully absorbed the Soulstone's skill points. Effects.SendLocationParticles(EffectItem.Create(from.Location, from.Map, EffectItem.DefaultDuration), 0, 0, 0, 0, 0, 5060, 0); Effects.PlaySound(from.Location, from.Map, 0x243); int k = (m_Stone is SoulStoneFragment) ? 3 : 1; for (int i = 1; i < k; i++) { Effects.SendMovingParticles(new DummyEntity(Server.Serial.Zero, new Point3D(from.X - 6, from.Y - 6, from.Z + 15), from.Map), from, 0x36D4, 7, 0, false, true, 0x497, 0, 9502, 1, 0, (EffectLayer)255, 0x100); } Effects.SendTargetParticles(from, 0x375A, 35, 90, 0x00, 0x00, 9502, (EffectLayer)255, 0x100); } }
private bool CheckUse(Mobile from) { DateTime now = DateTime.UtcNow; if (this.Deleted || !this.IsAccessibleTo(from)) { return(false); } else if (from.Map != this.Map || !from.InRange(GetWorldLocation(), 2)) { from.LocalOverheadMessage(MessageType.Regular, 0x3B2, 1019045); // I can't reach that. return(false); } else if (this.Account != null && (!(from.Account is Account) || ((Account)from.Account).Username != this.Account)) { from.SendLocalizedMessage(1070714); // This is an Account Bound Soulstone, and your character is not bound to it. You cannot use this Soulstone. return(false); } else if (CheckCombat(from, TimeSpan.FromMinutes(2.0))) { from.SendLocalizedMessage(1070727); // You must wait two minutes after engaging in combat before you can use a Soulstone. return(false); } else if (from.Criminal) { from.SendLocalizedMessage(1070728); // You must wait two minutes after committing a criminal act before you can use a Soulstone. return(false); } else if (from.Region.GetLogoutDelay(from) > TimeSpan.Zero) { from.SendLocalizedMessage(1070729); // In order to use your Soulstone, you must be in a safe log-out location. return(false); } else if (!from.Alive) { from.SendLocalizedMessage(1070730); // You may not use a Soulstone while your character is dead. return(false); } else if (Factions.Sigil.ExistsOn(from)) { from.SendLocalizedMessage(1070731); // You may not use a Soulstone while your character has a faction town sigil. return(false); } else if (from.Spell != null && from.Spell.IsCasting) { from.SendLocalizedMessage(1070733); // You may not use a Soulstone while your character is casting a spell. return(false); } else if (from.Poisoned) { from.SendLocalizedMessage(1070734); // You may not use a Soulstone while your character is poisoned. return(false); } else if (from.Paralyzed) { from.SendLocalizedMessage(1070735); // You may not use a Soulstone while your character is paralyzed. return(false); } else if (now < this.NextUse) { TimeSpan time = this.NextUse - now; if (time.TotalHours > 0.0) { from.SendLocalizedMessage(1070736, ((int)time.TotalHours).ToString()); // You must wait ~1_hours~ hours before you can use your Soulstone. } else if (time.TotalMinutes > 0.0) { from.SendLocalizedMessage(1070737, ((int)time.TotalMinutes).ToString()); // You must wait ~1_minutes~ minutes before you can use your Soulstone. } else { from.SendLocalizedMessage(1070738, ((int)time.TotalSeconds).ToString()); // You must wait ~1_seconds~ seconds before you can use your Soulstone. } return(false); } else if (this is SoulStoneFragment) { SoulStoneFragment ssf = this as SoulStoneFragment; if (ssf.UsesRemaining <= 0) { from.SendLocalizedMessage(1070975); // That soulstone fragment has no more uses. return(false); } return(true); } else { return(true); } }
public static Item GetItem(int productNumber) { Item item = null; switch (productNumber) { case 16133: item = new EtherealHorse(); break; case 16134: item = new EtherealLlama(); break; case 16135: item = new EtherealOstard(); break; case 16136: item = new KillBook(); break; case 16137: item = new Bag(); ((Bag)item).DropItem(new SpidersSilk(50000)); ((Bag)item).DropItem(new Nightshade(50000)); ((Bag)item).DropItem(new Bloodmoss(50000)); ((Bag)item).DropItem(new MandrakeRoot(50000)); ((Bag)item).DropItem(new Ginseng(50000)); ((Bag)item).DropItem(new Garlic(50000)); ((Bag)item).DropItem(new BlackPearl(50000)); ((Bag)item).DropItem(new SulfurousAsh(50000)); break; case 16138: item = new SpecialDonateDye(); break; case 16141: item = new Sandals(); item.Name = "magic threads"; item.Hue = 5; item.LootType = LootType.Blessed; break; case 16142: item = new Sandals(); item.Name = "magic threads"; item.Hue = 110; item.LootType = LootType.Blessed; break; case 16139: item = new Sandals(); item.Name = "magic threads"; item.Hue = 90; item.LootType = LootType.Blessed; break; case 16140: item = new Sandals(); item.Name = "magic threads"; item.Hue = 70; item.LootType = LootType.Blessed; break; case 16143: item = new HoodedShroudOfShadows(); item.Name = "a rare agapite shroud"; item.Hue = 2425; item.LootType = LootType.Blessed; break; case 16144: item = new ValoriteDonationBox(); break; case 16145: item = new SilverDonationBox(); break; case 16146: item = new GoldenDonationBox(); break; case 16147: item = new SurvivalPack(); break; case 16148: item = new EtherealSkeletal(); break; case 16149: item = new WeddingDeed(); break; case 16150: item = new DonationSandals(); break; case 16151: item = new DonationBandana(); break; case 16152: item = new MembershipTicket(); ((MembershipTicket)item).MemberShipTime = TimeSpan.FromDays(30); break; case 16153: item = new MembershipTicket(); ((MembershipTicket)item).MemberShipTime = TimeSpan.FromDays(90); break; case 16154: item = new MembershipTicket(); ((MembershipTicket)item).MemberShipTime = TimeSpan.FromDays(180); break; case 16155: item = new MembershipTicket(); ((MembershipTicket)item).MemberShipTime = TimeSpan.FromDays(360); break; case 16156: item = new SexChangeDeed(); item.LootType = LootType.Blessed; break; case 16157: item = new Item(5360); item.Name = "a Character Transfer Ticket"; item.Hue = 1266; item.LootType = LootType.Blessed; break; case 16158: item = new LayerSashDeed(); item.LootType = LootType.Blessed; break; case 16159: item = new EtherealUnicorn(); break; case 16160: item = new AOSHouseDeed7x12(); break; case 16161: item = new AOSHouseDeed12x7(); break; case 16162: item = new AOSHouseDeed15x12(); break; case 16163: item = new AOSHouseDeed12x15(); break; case 16164: item = new AOSHouseDeed18x18(); break; case 16165: item = new DonationSkillBall( 1 ); break; case 16166: item = new DonationSkillBall( 5 ); break; case 16167: item = new DonationSkillBall( 10 ); break; case 16168: item = new DonationSkillBall( 25 ); break; case 16169: item = new DonationSkillBall( 50 ); break; case 16170: item = new Bag(); ((Bag)item).DropItem(new IronIngot(50000)); break; case 16171: item = new Bag(); ((Bag)item).DropItem(new Board(50000)); break; case 16172: item = new PetBondDeed(); break; case 16184: item = new PotionBundle(); break; case 16185: item = null;//new PotionBundleAoS(); break; case 16186: item = new ApagiteDonationBox(); break; case 16187: item = new VeriteDonationBox(); break; case 16188: item = new SerpentCrest(); break; case 16189: item = new IronMaiden(); break; case 16190: item = new Guillotine(); break; case 16191: item = new BigMushroom1(); break; case 16192: item = new BigMushroom2(); break; case 16193: item = new BigMushroom3(); break; case 16194: item = new BigMushroom4(); break; case 16195: item = new LillyPad1(); break; case 16196: item = new LillyPad2(); break; case 16197: item = new LillyPad3(); break; case 16198: item = new DonationDecorArmor1(); break; case 16199: item = new DonationDecorArmor2(); break; case 16200: item = new DonationDecorArmor3(); break; case 16201: item = new DonationDecorArmor4(); break; case 16242: item = new CastleDeed(); item.LootType = LootType.Blessed; break; case 16243: item = new KeepDeed(); item.LootType = LootType.Blessed; break; case 16244: item = new BlackHairDye(); item.LootType = LootType.Blessed; break; case 16245: item = new SpecialDonateDyeBeard(); item.LootType = LootType.Blessed; break; case 16246: item = new KillDeed(); item.LootType = LootType.Blessed; break; case 16247: item = new SkinToneDeed(); item.LootType = LootType.Blessed; break; case 16248: item = new EtherealMountDeed(); item.LootType = LootType.Blessed; break; case 16249: item = new Item(5360); item.Hue = 1266; item.Name = "a house teleporter ticket"; item.LootType = LootType.Blessed; break; case 16250: item = new Item(5360); item.Hue = 1266; item.Name = "a water house spot ticket"; item.LootType = LootType.Blessed; break; case 16251: item = new ElevenBox(); break; case 16252: item = new ElvenRobe(); break; case 16253: item = new RaffleTicket(); break; case 16267: item = new PoisongreenDonationBox(); break; case 16268: item = new SoulStone(); break; case 16269: item = new SoulStoneFragment(); break; case 16270: item = new BoneTable(); break; case 16271: item = new BoneThrone(); break; case 16272: item = new OneMillionBankCheckDeed(); break; case 16273: item = new DarkblueDonationBox(); break; case 16274: ////////item = new xxx(); break; case 16275: item = new ShadowDonationBox(); break; case 16292 : item = new FishTankAddonDeed(); break; case 16294 : item = new AncientBedAddonDeed(); break; case 16296 : item = new HeroKnightShield(); break; case 16297 : item = new StoneSculpture(); break; case 16298 : item = new AncientFruitBowl(); break; case 16299 : item = new AncientRobe(); item.LootType = LootType.Blessed; break; case 16300 : item = new AncientShoes(); item.LootType = LootType.Blessed; break; case 16301 : item = new AncientCoat(); item.LootType = LootType.Blessed; break; case 16302 : item = new GardenDonationBox(); break; case 16303 : item = new DungeonDonationBox(); break; case 16304 : item = new UltimateDecorationDonationBox(); break; case 16305 : item = new ChristmasDonationBox(); break; case 16306 : item = new MetalHueBundleTicket(); break; case 16307 : item = new SpecialHueBundleTicket(); break; case 16308 : item = new SevenGMBag(); break; case 16311 : item = new PokerLowRollerTicket(); break; case 16312 : item = new PokerHighRollerTicket(); break; case 16313 : item = new MoongateLibraryDeed(); break; case 16314 : item = new DisplayCaseAddonDeed(); break; case 16315: item = new TamerDonationBox(); break; case 16316: item = new SeedBox(); break; case 16317: item = new DarkRedDonationBox(); break; case 16318: item = new DarkGreenDonationBox(); break; case 16319: item = new FireDonationBox(); break; case 16320: item = new PinkDonationBox(); break; case 16321: item = new DarkBrownDonationBox(); break; case 16322: item = new OliveDonationBox(); break; case 16323: item = new HiryuTicket(); break; case 16324: ////////item = new xxx(); break; case 16325: item = new ExtremeHueBundleTicket(); break; case 16326: item = new TribalMask(); item.Name = "Mask of the Fire God"; item.Hue = 1359; item.LootType = LootType.Blessed; break; case 16327: item = new TribalMask(); item.Name = "Mask of Velvet Purity"; item.Hue = 1374; item.LootType = LootType.Blessed; break; case 16328: item = new TribalMask(); item.Name = "Mask of the Farseer"; item.Hue = 1267; item.LootType = LootType.Blessed; break; case 16329: item = new TribalMask(); item.Name = "Mask of the Venom King"; item.Hue = 1196; item.LootType = LootType.Blessed; break; case 16330: item = new ShroudOfIllusions(); item.Name = "Shroud of the Morphling Lord"; item.Hue = 1154; item.LootType = LootType.Blessed; break; case 16331: item = new EtherealWarSteed(); break; case 16332: item = new EtherealDragonSteed(); break; // NEW DONATIONS ITEM 20-11-08 --------------------------------------------------------- case 16333: item = new TribalMask(); item.Name = "Mask of the Scoundrel"; item.Hue = 920; item.LootType = LootType.Blessed; break; case 16334: item = new TribalMask(); item.Name = "Mask of the Harrower"; item.Hue = 1194; item.LootType = LootType.Blessed; break; case 16335: item = new TribalMask(); item.Name = "Mask of the Tree Lord"; item.Hue = 1445; item.LootType = LootType.Blessed; break; case 16336: item = new TribalMask(); item.Name = "Mask of the Rich"; item.Hue = 2213; item.LootType = LootType.Blessed; break; case 16337: item = new TribalMask(); item.Name = "Mask of the Unknown"; item.Hue = 2055; item.LootType = LootType.Blessed; break; case 16338: item = new Shoes(); item.Name = "I support the shard"; item.Hue = 1166; item.LootType = LootType.Blessed; break; case 16339: item = new Shoes(); item.Name = "I support the shard"; item.Hue = 1260; item.LootType = LootType.Blessed; break; case 16340: item = new Shoes(); item.Name = "I support the shard"; item.Hue = 1153; item.LootType = LootType.Blessed; break; case 16341: item = new Shoes(); item.Name = "I support the shard"; item.Hue = 1177; item.LootType = LootType.Blessed; break; case 16342: item = new Shoes(); item.Name = "I support the shard"; item.Hue = 1266; item.LootType = LootType.Blessed; break; case 16343: item = new RoyalCloak(); item.LootType = LootType.Blessed; break; case 16344: item = new OrangeDonationBox(); break; //// New items Feb - 2009 //// //// New items Feb - 2009 //// //// New items Feb - 2009 //// case 16345: item = new GoldRing(); item.Name = "a 603-carat diamond"; item.Hue = 2067; item.LootType = LootType.Blessed; break; case 16346: item = new FireGlasses(); item.LootType = LootType.Blessed; break; case 16347: item = new ShroudOfmysterious(); item.LootType = LootType.Blessed; break; case 16348: item = new HoodedShroudOfShadows(); item.Hue = 2055; item.LootType = LootType.Blessed; break; case 16349: item = new HoodedShroudOfShadows(); item.Hue = 2054; item.LootType = LootType.Blessed; break; case 16350: item = new HoodedShroudOfShadows(); item.Hue = 2053; item.LootType = LootType.Blessed; break; case 16354: item = new TribalMask(); item.Name = "a tribal mask to be renamed."; item.Hue = 37; item.LootType = LootType.Blessed; break; case 16355: item = new TribalMask(); item.Name = "a tribal mask to be renamed."; item.Hue = 9; item.LootType = LootType.Blessed; break; case 16356: item = new TribalMask(); item.Name = "a tribal mask to be renamed."; item.Hue = 39; item.LootType = LootType.Blessed; break; case 16357: item = new TribalMask(); item.Name = "a tribal mask to be renamed."; item.Hue = 92; item.LootType = LootType.Blessed; break; case 16358: item = new BronzeStatueMaker(); item.LootType = LootType.Blessed; break; case 16359: item = new JadeStatueMaker(); item.LootType = LootType.Blessed; break; case 16360: item = new MarbleStatueMaker(); item.LootType = LootType.Blessed; break; case 16361: item = new GoldStatueMaker(); item.LootType = LootType.Blessed; break; case 16362: item = new BloodstoneStatueMaker(); item.LootType = LootType.Blessed; break; case 16363: item = new AlabasterStatueMaker(); item.LootType = LootType.Blessed; break; case 16364: item = new EtherealKirin(); item.LootType = LootType.Blessed; break; case 16365: item = new GMSafeTradeTicket(); item.LootType = LootType.Blessed; break; case 16366: item = new TheDarkSoldiers(); break; case 16367: item = new TheDarkLords(); break; case 16368: item = new TheDarkKnightsBundle(); break; case 16373: item = new Bag(); ((Bag)item).DropItem(new Bottle(10000)); break; case 16374: item = new Bag(); ((Bag)item).DropItem(new BarbedLeather(5000)); break; case 16375: item = new Bag(); ((Bag)item).DropItem(new SpinedLeather(5000)); break; case 16376: item = new Bag(); ((Bag)item).DropItem(new HornedLeather(5000)); break; case 16377: item = new CheapEvoPointsDeed(); item.LootType = LootType.Blessed; break; case 16378: item = new TitleChangeDeed(); item.LootType = LootType.Blessed; break; case 16379: item = new OceanBlueDonationBundle(); break; case 16390: item = new SkyBlueDonationBundle(); break; case 16381: item = new LayeredSpellbookTicket(); break; case 16391: item = new TeleporterDonationDeed(); break; case 16392: item = new EtherealWarSteed(); item.Name = "a donation ethereal mount"; item.Hue = 1150; item.LootType = LootType.Blessed; break; case 16393: item = new EtherealWarSteed(); item.Name = "a donation ethereal mount"; item.Hue = 1167; item.LootType = LootType.Blessed; break; case 16394: item = new EtherealWarSteed(); item.Name = "a donation ethereal mount"; item.Hue = 38; item.LootType = LootType.Blessed; break; case 16395: item = new EtherealWarSteed(); item.Name = "a donation ethereal mount"; item.Hue = 1160; item.LootType = LootType.Blessed; break; case 16396: item = new EtherealWarSteed(); item.Name = "a donation ethereal mount"; item.Hue = 1161; item.LootType = LootType.Blessed; break; case 16397: item = new EtherealWarSteed(); item.Name = "a donation ethereal mount"; item.Hue = 1140; item.LootType = LootType.Blessed; break; case 16398: item = new TribalMask(); item.Name = "a tribal mask to be renamed."; item.Hue = 1167; item.LootType = LootType.Blessed; break; case 16399: item = new TribalMask(); item.Name = "a tribal mask to be renamed."; item.Hue = 1160; item.LootType = LootType.Blessed; break; case 16400: item = new TribalMask(); item.Name = "a tribal mask to be renamed."; item.Hue = 1161; item.LootType = LootType.Blessed; break; case 16401: item = new TribalMask(); item.Name = "a tribal mask to be renamed."; item.Hue = 1172; item.LootType = LootType.Blessed; break; case 16402: item = new TribalMask(); item.Name = "a tribal mask to be renamed."; item.Hue = 1165; item.LootType = LootType.Blessed; break; case 16403: item = new TribalMask(); item.Name = "a tribal mask to be renamed."; item.Hue = 1140; item.LootType = LootType.Blessed; break; case 16404: item = new DonationDeed(); item.Name = "a supporting deed."; item.Hue = 1161; item.LootType = LootType.Blessed; break; case 16405: item = new CTFDonationTicket(); item.Name = "a ctf ticket."; item.Hue = 1110; item.LootType = LootType.Blessed; break; case 16406: item = new UHSSkinDeed(); item.Name = "a uhs skin deed."; item.Hue = 1110; item.LootType = LootType.Blessed; break; case 16407: item = new BlackBeardHairDye(); item.Name = "a black beard hair dye."; item.Hue = 1175; item.LootType = LootType.Blessed; break; default: item = null; break; } return item; }