Beispiel #1
0
        public override object ParsePayload(Stream stream, INamedBinaryTag tagBase)
        {
            byte datum = stream.ReadSingleByte();
            sbyte val = (sbyte)datum;
            TagByte tag = tagBase as TagByte;
            if (tag == null)
            {
                throw new InvalidCastException("Wrong NBT type! Expected TagByte, found " + tagBase.GetType().Name);
            }

            tag.Value = val;
            return val;
        }
Beispiel #2
0
        public override object ParsePayload(Stream stream, INamedBinaryTag tagBase)
        {
            byte[] data = new byte[4];
            if (stream.Read(data, 0, 4) < 4)
            {
                throw new EndOfStreamException("End of stream reached inside of tag. Put those bytes back!");
            }

            data = data.ReverseIfLittleEndian();
            int val = BitConverter.ToInt32(data, 0);

            TagInt tag = tagBase as TagInt;
            if (tag == null)
            {
                throw new InvalidCastException("Wrong NBT type! Expected TagInt, found " + tagBase.GetType().Name);
            }
            tag.Value = val;
            return val;
        }
Beispiel #3
0
        public override object ParsePayload(Stream stream, INamedBinaryTag tagBase)
        {
            byte[] data = new byte[2];
            if (stream.Read(data, 0, 2) < 2)
            {
                throw new EndOfStreamException("End of stream reached inside of tag. Put those bytes back!");
            }

            data = data.ReverseIfLittleEndian();
            short val = BitConverter.ToInt16(data, 0);

            TagShort tag = tagBase as TagShort;

            if (tag == null)
            {
                throw new InvalidCastException("Wrong NBT type! Expected TagShort, found " + tagBase.GetType().Name);
            }
            tag.Value = val;
            return(val);
        }
Beispiel #4
0
        public override object ParsePayload(Stream stream, INamedBinaryTag tagBase)
        {
            byte    datum = stream.ReadSingleByte();
            sbyte   val   = (sbyte)datum;
            TagByte tag   = tagBase as TagByte;

            if (tag == null)
            {
                throw new InvalidCastException("Wrong NBT type! Expected TagByte, found " + tagBase.GetType().Name);
            }

            tag.Value = val;
            return(val);
        }