public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); ItemType = (CraftableItemType)reader.ReadInt(); }
public static void Replace(Item oldItem, CraftableItemType type) { BaseAddon addon = oldItem is AddonComponent ? ((AddonComponent)oldItem).Addon : null; CraftableHouseItem item = new CraftableHouseItem(type); if (oldItem.Parent is Container) { ((Container)oldItem.Parent).DropItem(item); } else { BaseHouse house = BaseHouse.FindHouseAt(oldItem); item.MoveToWorld(oldItem.Location, oldItem.Map); item.IsLockedDown = oldItem.IsLockedDown; item.IsSecure = oldItem.IsSecure; item.Movable = oldItem.Movable; if (house != null) { if (house.LockDowns.ContainsKey(oldItem)) { house.LockDowns.Remove(oldItem); house.LockDowns.Add(item, house.Owner); } else if (house.IsSecure(oldItem)) { house.ReleaseSecure(house.Owner, oldItem); house.AddSecure(house.Owner, item); } else if (addon != null) { if (house.Addons.ContainsKey(addon)) { house.Addons.Remove(addon); } house.LockDowns.Add(item, house.Owner); } } item.InvalidateProperties(); } if (addon != null) { addon.Delete(); } else { oldItem.Delete(); } }
public override void Deserialize(GenericReader reader) { base.Deserialize(reader); int version = reader.ReadInt(); ItemType = (CraftableItemType)reader.ReadInt(); Timer.DelayCall(TimeSpan.FromSeconds(30), () => { CraftableHouseItem.Replace(this, ItemType); }); }
public virtual int OnCraft(int quality, bool makersMark, Mobile from, CraftSystem craftSystem, Type typeRes, ITool tool, CraftItem craftItem, int resHue) { if (craftItem != null && craftItem.Data is CraftableItemType) { ItemType = (CraftableItemType)craftItem.Data; Type resourceType = typeRes; if (resourceType == null) { resourceType = craftItem.Resources.GetAt(0).ItemType; } Resource = CraftResources.GetFromType(resourceType); } return(quality); }
public CraftableHouseAddonDeed(CraftableItemType type) { }
public CraftableHouseItem(CraftableItemType type) : base(IDs[(int)type][1]) { _Type = type; }