// Code generated by github.com/go-mc/packetizer; DO NOT EDIT. package slot import ( "errors" "io" "github.com/Tnze/go-mc/net/packet" ) func (c *AddedHashedComponent) ReadFrom(r io.Reader) (n int64, err error) { var temp int64 temp, err = (*packet.VarInt)(&c.Type).ReadFrom(r) n += temp if err != nil { return n, err } temp, err = (*packet.Int)(&c.DataHash).ReadFrom(r) n += temp if err != nil { return n, err } return n, err } func (c AddedHashedComponent) WriteTo(w io.Writer) (n int64, err error) { var temp int64 temp, err = (*packet.VarInt)(&c.Type).WriteTo(w) n += temp if err != nil { return n, err } temp, err = (*packet.Int)(&c.DataHash).WriteTo(w) n += temp if err != nil { return n, err } return n, err } func (c *HashedSlot) ReadFrom(r io.Reader) (n int64, err error) { var temp int64 temp, err = (*packet.Boolean)(&c.HasItem).ReadFrom(r) n += temp if err != nil { return n, err } if c.HasItem { temp, err = (*packet.VarInt)(&c.ItemID).ReadFrom(r) n += temp if err != nil { return n, err } } if c.HasItem { temp, err = (*packet.VarInt)(&c.ItemCount).ReadFrom(r) n += temp if err != nil { return n, err } } if c.HasItem { temp, err = (&c.AddComponents).ReadFrom(r) n += temp if err != nil { return n, err } } if c.HasItem { temp, err = (*Int32VarIntVarIntArray)(&c.RemovedComponents).ReadFrom(r) n += temp if err != nil { return n, err } } return n, err } func (c HashedSlot) WriteTo(w io.Writer) (n int64, err error) { var temp int64 temp, err = (*packet.Boolean)(&c.HasItem).WriteTo(w) n += temp if err != nil { return n, err } if c.HasItem { temp, err = (*packet.VarInt)(&c.ItemID).WriteTo(w) n += temp if err != nil { return n, err } } if c.HasItem { temp, err = (*packet.VarInt)(&c.ItemCount).WriteTo(w) n += temp if err != nil { return n, err } } if c.HasItem { temp, err = (&c.AddComponents).WriteTo(w) n += temp if err != nil { return n, err } } if c.HasItem { temp, err = (*Int32VarIntVarIntArray)(&c.RemovedComponents).WriteTo(w) n += temp if err != nil { return n, err } } return n, err } // Int32VarIntVarIntArray a utility type for encoding/decoding packet.VarInt -> int32[packet.VarInt] slice. type Int32VarIntVarIntArray []int32 func (a Int32VarIntVarIntArray) WriteTo(w io.Writer) (n int64, err error) { size := len(a) if nn, err := packet.VarInt(size).WriteTo(w); err != nil { return n, err } n += nn for i := 0; i < size; i++ { nn, err := packet.VarInt(a[i]).WriteTo(w) n += nn if err != nil { return n, err } } return n, nil } func (a *Int32VarIntVarIntArray) ReadFrom(r io.Reader) (n int64, err error) { var size packet.VarInt nn, err := size.ReadFrom(r) n += nn if err != nil { return n, err } if size < 0 { return n, errors.New("array length less than zero") } if cap(*a) >= int(size) { *a = (*a)[:int(size)] } else { *a = make(Int32VarIntVarIntArray, int(size)) } for i := 0; i < int(size); i++ { nn, err = (*packet.VarInt)(&(*a)[i]).ReadFrom(r) n += nn if err != nil { return n, err } } return n, err }