/// <summary>
        /// Reads a tile entity from NBT.
        /// </summary>
        public override void ReadFromNBT(NBTTagCompound par1NBTTagCompound)
        {
            base.ReadFromNBT(par1NBTTagCompound);
            NBTTagList nbttaglist = par1NBTTagCompound.GetTagList("Items");

            FurnaceItemStacks = new ItemStack[GetSizeInventory()];

            for (int i = 0; i < nbttaglist.TagCount(); i++)
            {
                NBTTagCompound nbttagcompound = (NBTTagCompound)nbttaglist.TagAt(i);
                byte           byte0          = nbttagcompound.GetByte("Slot");

                if (byte0 >= 0 && byte0 < FurnaceItemStacks.Length)
                {
                    FurnaceItemStacks[byte0] = ItemStack.LoadItemStackFromNBT(nbttagcompound);
                }
            }

            FurnaceBurnTime     = par1NBTTagCompound.GetShort("BurnTime");
            FurnaceCookTime     = par1NBTTagCompound.GetShort("CookTime");
            CurrentItemBurnTime = GetItemBurnTime(FurnaceItemStacks[1]);
        }
 /// <summary>
 /// Reads a tile entity from NBT.
 /// </summary>
 public override void ReadFromNBT(NBTTagCompound par1NBTTagCompound)
 {
     base.ReadFromNBT(par1NBTTagCompound);
     MobID = par1NBTTagCompound.GetString("EntityId");
     Delay = par1NBTTagCompound.GetShort("Delay");
 }