1.20.80 support (#1)
This commit is contained in:
35
legacyver/legacypacket/container_close.go
Normal file
35
legacyver/legacypacket/container_close.go
Normal file
@@ -0,0 +1,35 @@
|
||||
package legacypacket
|
||||
|
||||
import (
|
||||
"github.com/akmalfairuz/legacy-version/legacyver/proto"
|
||||
"github.com/sandertv/gophertunnel/minecraft/protocol"
|
||||
"github.com/sandertv/gophertunnel/minecraft/protocol/packet"
|
||||
)
|
||||
|
||||
// ContainerClose is sent by the server to close a container the player currently has opened, which was opened
|
||||
// using the ContainerOpen packet, or by the client to tell the server it closed a particular container, such
|
||||
// as the crafting grid.
|
||||
type ContainerClose struct {
|
||||
// WindowID is the ID representing the window of the container that should be closed. It must be equal to
|
||||
// the one sent in the ContainerOpen packet to close the designated window.
|
||||
WindowID byte
|
||||
// ContainerType is the type of container that the server is trying to close. This is used to validate on
|
||||
// the client side whether or not the server's close request is valid.
|
||||
ContainerType byte
|
||||
// ServerSide determines whether or not the container was force-closed by the server. If this value is
|
||||
// not set correctly, the client may ignore the packet and respond with a PacketViolationWarning.
|
||||
ServerSide bool
|
||||
}
|
||||
|
||||
// ID ...
|
||||
func (*ContainerClose) ID() uint32 {
|
||||
return packet.IDContainerClose
|
||||
}
|
||||
|
||||
func (pk *ContainerClose) Marshal(io protocol.IO) {
|
||||
io.Uint8(&pk.WindowID)
|
||||
if proto.IsProtoGTE(io, proto.ID685) {
|
||||
io.Uint8(&pk.ContainerType)
|
||||
}
|
||||
io.Bool(&pk.ServerSide)
|
||||
}
|
||||
Reference in New Issue
Block a user