refactor package

This commit is contained in:
2025-08-22 05:14:59 +08:00
parent bec0a56a3d
commit 65690e51ab
371 changed files with 835 additions and 627 deletions

View File

@ -0,0 +1,58 @@
package component
import (
"io"
"git.konjactw.dev/patyhank/minego/pkg/protocol/slot"
"github.com/Tnze/go-mc/net/packet"
)
type ChickenVariant struct {
Mode int8
VariantName packet.Identifier
VariantID int32
}
func (c *ChickenVariant) ReadFrom(r io.Reader) (n int64, err error) {
n1, err := (*packet.Byte)(&c.Mode).ReadFrom(r)
if err != nil {
return n1, err
}
if c.Mode == 0 {
n2, err := c.VariantName.ReadFrom(r)
return n1 + n2, err
}
if c.Mode == 1 {
n2, err := (*packet.VarInt)(&c.VariantID).ReadFrom(r)
return n1 + n2, err
}
return n1, err
}
func (c ChickenVariant) WriteTo(w io.Writer) (int64, error) {
n1, err := (*packet.Byte)(&c.Mode).WriteTo(w)
if err != nil {
return n1, err
}
if c.Mode == 0 {
n2, err := c.VariantName.WriteTo(w)
return n1 + n2, err
}
if c.Mode == 1 {
n2, err := (*packet.VarInt)(&c.VariantID).WriteTo(w)
return n1 + n2, err
}
return n1, err
}
func (*ChickenVariant) Type() slot.ComponentID {
return 86
}
func (*ChickenVariant) ID() string {
return "minecraft:chicken/variant"
}