private static void ShrinkRelease_OnCommand(CommandEventArgs e) { if (e.Mobile is PlayerMobile) { int shrinkCount = 0; foreach (Item item in World.Items.Values) { if (item is ShrinkItem) { shrinkCount += 1; } } e.Mobile.SendMessage("{0} ShrinkItems have been enabled.", shrinkCount); World.Broadcast(0x35, true, "The server wide shrinkitem lockout has been lifted."); World.Broadcast(0x35, true, "You may once again unshrink all shrunken pets."); foreach (Item item in World.Items.Values) { if (item is ShrinkItem) { ShrinkItem si = (ShrinkItem)item; si.Disabled = false; } } } }
private static void ShrinkLockDown_OnCommand(CommandEventArgs e) { if (e.Mobile is PlayerMobile) { int shrinkCount = 0; foreach (Item item in World.Items.Values) { if (item is ShrinkItem) { shrinkCount += 1; } } e.Mobile.SendMessage("{0} ShrinkItems have been disabled.", shrinkCount); World.Broadcast(0x35, true, "A server wide shrinkitem lockout has initiated"); World.Broadcast(0x35, true, "All shrunken pets have been disabled untill further notice."); foreach (Item item in World.Items.Values) { if (item is ShrinkItem) { ShrinkItem si = (ShrinkItem)item; si.Disabled = true; } } } }
protected override void OnTarget(Mobile from, object o) { if (o is Item) { from.SendMessage("That cannot be shrunken."); } else if (o is PlayerMobile) { from.SendMessage("That cannot be shrunken."); } else if (o is BaseEscortable) { from.SendMessage("You can't shrink me."); } /*else if ( o is RoninsBaseCreature && ( (RoninsBaseCreature)o).Pregnant == true ) * from.SendMessage( 53, "Warning! Shrinking a pet while pregnant could cause a server crash." ); * * else if ( o is RoninsBaseCreature && ( (RoninsBaseCreature)o).IsMating == true ) * from.SendMessage( 53, "Warning! Shrinking a pet while mating could cause a server crash." );*/ else if (o is BaseCreature) { BaseCreature c = (BaseCreature)o; Type type = c.GetType(); ShrinkItem si = new ShrinkItem(); si.MobType = type; si.Pet = c; si.PetOwner = from; if (c is BaseMount) { BaseMount mount = (BaseMount)c; si.MountID = mount.ItemID; } from.AddToBackpack(si); c.Controlled = true; c.ControlMaster = null; c.Internalize(); c.OwnerAbandonTime = DateTime.MinValue; c.IsStabled = true; } else { from.SendMessage("You cannot shrink that, MOBILES ONLY"); } }
public static void SendRewardToPlayer(Mobile player) { Bag bagReward = new Bag(); bagReward.Hue = Utility.RandomYellowHue(); bagReward.Name = "Reward Bag"; foreach (RewardItem rewardItem in SingletonEvent.Instance.CurrentEventRewardList) { object item = CreateRewardInstance(rewardItem.RewardTypeList); // Ajusta Item if (item is Gold) { ((Gold)item).Amount = 5000; } else if (item is BaseOre || item is BaseIngot) { ((Item)item).Amount = 2; } // Send Item if (item is Item) { bagReward.DropItem((Item)item); } else if (item is BaseCreature) { ShrinkItem shrunkenPet = new ShrinkItem((BaseCreature)item); bagReward.DropItem(shrunkenPet); } } player.SendMessage("Uma Bag de Recompensa foi depositada em seu Banco!"); player.BankBox.DropItem(bagReward); }
public UnLockShrinkItem( Mobile from, ShrinkItem shrink ) : base( 2033, 5 ) { m_From = from; m_ShrinkItem = shrink; }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); switch ( version ) { case 2: m_ShrinkItem = (ShrinkItem)(reader.ReadItem()); goto case 1; case 1: goto case 0; // Account for Dracna's version bump case 0: { m_Ep = reader.ReadInt(); m_Stage = reader.ReadInt(); Pregnant = m_Pregnant = reader.ReadBool(); // resets the timer if pregnant m_HasEgg = reader.ReadBool(); m_DeliveryDate = reader.ReadDateTime(); break; } } LoadSpecValues(); }
public void OnShrink( IShrinkItem shrinkItem ) { m_ShrinkItem = (ShrinkItem)shrinkItem; }
public UnLockShrinkItem(Mobile from, ShrinkItem shrink) : base(2033, 5) { m_From = from; m_ShrinkItem = shrink; }
public static bool Shrink(Mobile from, object targ, bool restricted) { String errorString = null; int errorLocalizedMessage = 0; if (from == targ) { errorString = "You can't shrink yourself!"; } else if (!(targ is BaseCreature)) { errorString = "You can't shrink that!"; } else { BaseCreature t = (BaseCreature)targ; #region Shrink Restrictions if (t.IsDeadPet) { errorString = "You cannot shrink dead creatures."; } else if (!restricted) { //Don't check anything if not a restricted Shrink } else if (t.Summoned) { errorString = "You cannot shrink summoned creatures."; } else if (t.Combatant != null && t.InRange(t.Combatant, 12) && t.Map == t.Combatant.Map) { errorString = "You cannot shrink your pet while it is in combat."; } else if (!(t.Controlled && t.ControlMaster == from)) { errorLocalizedMessage = 1042562; //That is not your pet! errorString = "That is not your pet!"; } else if ((t is PackLlama || t is PackHorse || t is Beetle) && (t.Backpack != null && t.Backpack.Items.Count > 0)) { errorLocalizedMessage = 1042563; //Unload the pet first errorString = "Unload the pet first"; } #endregion if ((errorString == null) && (errorLocalizedMessage == 0)) { //If no errors, proceed. ShrinkItem shrunkenPet = new ShrinkItem(t); if (from != null) { from.SendMessage("You shrink the pet"); if (!from.AddToBackpack(shrunkenPet)) { shrunkenPet.MoveToWorld(new Point3D(from.X, from.Y, from.Z), from.Map); from.SendMessage("Your backpack is full so the shrunken pet falls to the ground"); } } else { shrunkenPet.MoveToWorld(new Point3D(t.X, t.Y, t.Z), t.Map); // place shrunken pet at current location } SendAway(t); if (ShrinkConfig.RetainSelfBondStatus && from != null) { shrunkenPet.BondOwner = from; } return(true); } } if (from != null) //if From is NOT null, send error Message. { if (errorLocalizedMessage != 0) { from.SendLocalizedMessage(errorLocalizedMessage); } else { from.SendMessage(errorString); } } return(false); }
public override void OnResponse( NetState sender, RelayInfo info ) { if ( m_Ticket.Deleted ) return; int number = 0; string message = null; Item item = null; switch ( info.ButtonID ) { case 1: BaseCreature parrot = new TalkingParrot {Controlled = true, ControlMaster = m_From}; parrot.Delta(MobileDelta.Noto); item = new ShrinkItem(parrot); message = "A shrunk parrot has been placed in your backpack"; break; case 2: item = new ActionFigure { Name = "Lord Blackthorne action figure", Phrase1 = "That tickles!", Sound1 = 1066, Phrase2 = "Uhhh I think I had too much to drink yesterday", Sound2 = 1087, Phrase3 = "Hey, put me down!", Sound3 = 1069, Phrase4 = "Shh, I'm trying to sleep here", Sound4 = 1089, Phrase5 = "Wasn't me", Sound5 = 1064 }; message = "A Lord Blackthorne action figure has been placed in your backpack"; break; case 3: item = new MagicCrystalBall {Hue = 1952}; message = "A magic crystal ball has been placed in your backpack"; break; case 4: item = new FireworksWand(); number = 501935; // A wand of fireworks has been placed in your backpack. break; case 5: item = new tarotpoker(); message = "A deck of tarot poker cards has been placed in your backpack"; break; } if ( item != null ) { m_Ticket.Delete(); if (number > 0) m_From.SendLocalizedMessage( number ); else if (!string.IsNullOrEmpty(message)) m_From.SendAsciiMessage(message); m_From.AddToBackpack( item ); } }
internal Item Construct() { try { Item item; if (Type == typeof(Gold)) item = new Gold(Amount); else if (Type == typeof(ImagineNickel)) item = new ImagineNickel(Amount); else if (Type == typeof(BaseWeapon)) { BaseWeapon w = Loot.RandomWeapon(); w.DamageLevel = WeaponDamageLevel.Vanq; int accuracyRoll = Utility.Random(99); if (accuracyRoll < 31) // 30% to get Accurate w.AccuracyLevel = WeaponAccuracyLevel.Accurate; else if (accuracyRoll < 56) // 25% to get Surpassingly w.AccuracyLevel = WeaponAccuracyLevel.Surpassingly; else if (accuracyRoll < 76) // 20% to get Eminently w.AccuracyLevel = WeaponAccuracyLevel.Eminently; else if (accuracyRoll < 91) // 15% to get Exceedingly w.AccuracyLevel = WeaponAccuracyLevel.Exceedingly; else if (accuracyRoll < 100) // 10% to get Supremely w.AccuracyLevel = WeaponAccuracyLevel.Supremely; item = w; } else if (Type == typeof(BaseArmor)) { BaseArmor armor = Loot.RandomArmorOrShield(); armor.ProtectionLevel = ArmorProtectionLevel.Invulnerability; armor.Durability = (ArmorDurabilityLevel)Utility.Random(6); item = armor; } else if (Type == typeof(BaseClothing)) { item = Loot.RandomClothing(); item.LootType = LootType.Blessed; item.Hue = Utility.RandomList(Sphere.RareHues); } else if (Type == typeof(BaseJewel)) { item = Loot.RandomJewelry(); item.LootType = LootType.Blessed; item.Hue = Utility.RandomList(Sphere.RareHues); } else if (Type == typeof(Mustang)) { Mustang m = new Mustang(); MustangCollection.Randomize().ApplyTo(m); item = new ShrinkItem(m); } else item = Activator.CreateInstance(Type) as Item; return item; } catch { } return null; }