public static MetadataDictionary FromStream(BinaryReader reader) { Stream stream = reader.BaseStream; MetadataDictionary metadata = new MetadataDictionary(); { var count = VarInt.ReadInt32(stream); for (int i = 0; i < count; i++) { int index = VarInt.ReadInt32(stream); int type = VarInt.ReadInt32(stream); var entry = EntryTypes[type](); entry.FromStream(reader); entry.Index = (byte)index; metadata[index] = entry; } } return(metadata); return(null); }
public override void FromStream(BinaryReader reader) { Stream stream = reader.BaseStream; Value = new BlockCoordinates { X = VarInt.ReadInt32(stream), Y = VarInt.ReadInt32(stream), Z = VarInt.ReadInt32(stream), }; }
public override void FromStream(BinaryReader reader) { try { var len = VarInt.ReadInt32(reader.BaseStream); byte[] bytes = new byte[len]; reader.BaseStream.Read(bytes, 0, len); Value = Encoding.UTF8.GetString(bytes); } catch (Exception e) { Log.Error(e); } }