MCPcopy Create free account
hub / github.com/ZeppelinMC/Zeppelin / Encode

Method Encode

protocol/net/packet/play/setEntityMetadata.go:21–274  ·  view source on GitHub ↗
(w encoding.Writer)

Source from the content-addressed store, hash-verified

19}
20
21func (s *SetEntityMetadata) Encode(w encoding.Writer) error {
22 if err := w.VarInt(s.EntityId); err != nil {
23 return err
24 }
25 for index, value := range s.Metadata {
26 if err := w.Ubyte(index); err != nil {
27 return err
28 }
29 switch val := value.(type) {
30 case metadata.Byte:
31 if err := w.VarInt(0); err != nil {
32 return err
33 }
34 if err := w.Byte(int8(val)); err != nil {
35 return err
36 }
37 case metadata.VarInt:
38 if err := w.VarInt(1); err != nil {
39 return err
40 }
41 if err := w.VarInt(int32(val)); err != nil {
42 return err
43 }
44 case metadata.VarLong:
45 if err := w.VarInt(2); err != nil {
46 return err
47 }
48 if err := w.VarLong(int64(val)); err != nil {
49 return err
50 }
51 case metadata.Float:
52 if err := w.VarInt(3); err != nil {
53 return err
54 }
55 if err := w.Float(float32(val)); err != nil {
56 return err
57 }
58 case metadata.String:
59 if err := w.VarInt(4); err != nil {
60 return err
61 }
62 if err := w.String(string(val)); err != nil {
63 return err
64 }
65 case metadata.TextComponent:
66 if err := w.VarInt(5); err != nil {
67 return err
68 }
69 if err := w.TextComponent(text.TextComponent(val)); err != nil {
70 return err
71 }
72 case metadata.OptionalTextComponent:
73 if err := w.VarInt(6); err != nil {
74 return err
75 }
76 if err := w.Bool(val != nil); err != nil {
77 return err
78 }

Callers

nothing calls this directly

Calls 14

TextComponentStruct · 0.92
EncodeMethod · 0.65
VarIntMethod · 0.45
UbyteMethod · 0.45
ByteMethod · 0.45
VarLongMethod · 0.45
FloatMethod · 0.45
StringMethod · 0.45
TextComponentMethod · 0.45
BoolMethod · 0.45
PositionMethod · 0.45
UUIDMethod · 0.45

Tested by

no test coverage detected