Beispiel #1
0
 protected override void SaveExtraData(Net.BigEndianStream stream)
 {
     base.SaveExtraData(stream);
     stream.Write(_progressTicks);
     stream.Write(_fuelTicksLeft);
     stream.Write(_fuelTicksFull);
 }
Beispiel #2
0
 protected override void LoadExtraData(Net.BigEndianStream stream)
 {
     base.LoadExtraData(stream);
     _progressTicks = stream.ReadShort();
     _fuelTicksLeft = stream.ReadShort();
     _fuelTicksFull = stream.ReadShort();
 }
Beispiel #3
0
        internal override void Write(Net.BigEndianStream stream)
        {
            base.Write(stream);
            if (Type >= 0)
            {
                if (Durability > 0 || IsEnchantable)
                {
                    stream.Write((short)-1);
                }
                // TODO: Remove the two lines above and implement items and enchantments write

                /*
                 * if (Item.CanBeDamaged())
                 * {
                 *      if(_enchantments != null)
                 *          WriteEnchantmentsToNBT(stream);
                 *      else
                 *          stream.Write(-1);
                 * }
                 */
            }
        }
 protected virtual void DoLoadFromFile(ItemStack[] itemStack, string file)
 {
     if (File.Exists(file))
     {
         using (FileStream containerStream = File.Open(file, FileMode.Open, FileAccess.Read))
         {
             using (Net.BigEndianStream bigEndian = new Net.BigEndianStream(containerStream, StreamRole.Server))
             {
                 for (int i = 0; i < itemStack.Length; i++)
                 {
                     itemStack[i] = new ItemStack(bigEndian);
                 }
             }
         }
     }
 }