Documentation ¶
Index ¶
- Constants
- Variables
- type Chat
- type ClientSettings
- type DimensionData
- type DimensionInfo
- type DimensionRegistry
- type Disconnect
- type EncryptionRequest
- type EncryptionResponse
- type Handshake
- type HeaderAndFooter
- type JoinGame
- type KeepAlive
- type LoginPluginMessage
- type LoginPluginResponse
- type MessagePosition
- type PlayerListItem
- type PlayerListItemAction
- type PlayerListItemEntry
- type ResourcePackRequest
- type Respawn
- type ServerLogin
- type ServerLoginSuccess
- type SetCompression
- type StatusPing
- type StatusRequest
- type StatusResponse
- type Title
- type TitleAction
Constants ¶
View Source
const (
MaxServerBoundMessageLength = 256
)
View Source
const UnknownDimensionID = "gate:unknown_dimension"
Variables ¶
View Source
var ErrEncodeOnly = errors.New("packet is only to be encoded")
Signifies that a packet is only meant to be encoded, no decoding.
View Source
Header: `{"translate":""}`,
Footer: `{"translate":""}`,
}Functions ¶
This section is empty.
Types ¶
type Chat ¶
type Chat struct { Message string Type MessagePosition Sender uuid.UUID // 1.16+, and can be empty UUID, all zeros }
type ClientSettings ¶
type ClientSettings struct { Locale string // may be empty ViewDistance byte ChatVisibility int ChatColors bool Difficulty bool // 1.7 Protocol SkinParts byte MainHand int }
func (*ClientSettings) Decode ¶
func (s *ClientSettings) Decode(c *proto.PacketContext, rd io.Reader) (err error)
func (*ClientSettings) Encode ¶
func (s *ClientSettings) Encode(c *proto.PacketContext, wr io.Writer) error
type DimensionData ¶
type DimensionData struct { RegistryIdentifier string DimensionID *int // nil-able AmbientLight float32 Shrunk, Natural, Ultrawarm, Ceiling, Skylight, PiglineSafe, DoBedsWork, DoRespawnAnchorsWork, Raids bool LogicalHeight int32 BurningBehaviourIdentifier string FixedTime *int64 // nil-able CreateDragonFight *bool // nil-able CoordinateScale *float64 // nil-able Effects *string // optional; unknown purpose }
type DimensionInfo ¶
type DimensionRegistry ¶
type DimensionRegistry struct { Dimensions []*DimensionData LevelNames []string }
DimensionRegistry is required for Minecraft 1.16+ clients/servers to communicate, it constrains the dimension types and names the client can be sent in a Respawn action (dimension change).
type Disconnect ¶
type Disconnect struct {
Reason *string // A reason must only be given for encoding.
}
func DisconnectWith ¶
func DisconnectWith(reason component.Component) *Disconnect
DisconnectWith creates a Disconnect packet with guaranteed reason.
func DisconnectWithProtocol ¶
func DisconnectWithProtocol(reason component.Component, protocol proto.Protocol) *Disconnect
DisconnectWithProtocol creates a new Disconnect packet for the given given protocol.
func (*Disconnect) Decode ¶
func (d *Disconnect) Decode(_ *proto.PacketContext, rd io.Reader) (err error)
func (*Disconnect) Encode ¶
func (d *Disconnect) Encode(c *proto.PacketContext, wr io.Writer) error
type EncryptionRequest ¶
func (*EncryptionRequest) Decode ¶
func (e *EncryptionRequest) Decode(_ *proto.PacketContext, rd io.Reader) (err error)
func (*EncryptionRequest) Encode ¶
func (e *EncryptionRequest) Encode(_ *proto.PacketContext, wr io.Writer) error
type EncryptionResponse ¶
type EncryptionResponse struct { VerifyToken []byte }
func (*EncryptionResponse) Decode ¶
func (e *EncryptionResponse) Decode(c *proto.PacketContext, rd io.Reader) (err error)
func (*EncryptionResponse) Encode ¶
func (e *EncryptionResponse) Encode(c *proto.PacketContext, wr io.Writer) error
type HeaderAndFooter ¶
type HeaderAndFooter struct {}
func (*HeaderAndFooter) Decode ¶
func (h *HeaderAndFooter) Decode(c *proto.PacketContext, rd io.Reader) (err error)
we never read this packet
func (*HeaderAndFooter) Encode ¶
func (h *HeaderAndFooter) Encode(c *proto.PacketContext, wr io.Writer) error
type JoinGame ¶
type JoinGame struct { EntityID int Gamemode int16 Dimension int PartialHashedSeed int64 // 1.15+ Difficulty int16 Hardcore bool MaxPlayers int LevelType *string // nil-able: removed in 1.16+ ViewDistance int // 1.14+ ReducedDebugInfo bool ShowRespawnScreen bool DimensionRegistry *DimensionRegistry // 1.16+ DimensionInfo *DimensionInfo // 1.16+ CurrentDimensionData *DimensionData // 1.16.2+ PreviousGamemode int16 // 1.16+ BiomeRegistry util.NBT // 1.16.2+ }
type LoginPluginMessage ¶
func (*LoginPluginMessage) Decode ¶
func (l *LoginPluginMessage) Decode(_ *proto.PacketContext, rd io.Reader) (err error)
func (*LoginPluginMessage) Encode ¶
func (l *LoginPluginMessage) Encode(_ *proto.PacketContext, wr io.Writer) error
type LoginPluginResponse ¶
func (*LoginPluginResponse) Decode ¶
func (l *LoginPluginResponse) Decode(_ *proto.PacketContext, rd io.Reader) (err error)
func (*LoginPluginResponse) Encode ¶
func (l *LoginPluginResponse) Encode(_ *proto.PacketContext, wr io.Writer) (err error)
type MessagePosition ¶
type MessagePosition byte
MessagePosition is the position a chat message is going to be sent.
const ( // The chat message will appear in the client's HUD. // These messages can be filtered out by the client. ChatMessage MessagePosition = iota // The chat message will appear in the client's HUD and can't be dismissed. SystemMessage // The chat message will appear above the player's main HUD. // This text format doesn't support many component features, such as hover events. ActionBarMessage )
type PlayerListItem ¶
type PlayerListItem struct { Action PlayerListItemAction Items []PlayerListItemEntry }
func (*PlayerListItem) Decode ¶
func (p *PlayerListItem) Decode(c *proto.PacketContext, rd io.Reader) (err error)
func (*PlayerListItem) Encode ¶
func (p *PlayerListItem) Encode(c *proto.PacketContext, wr io.Writer) (err error)
type PlayerListItemAction ¶
type PlayerListItemAction int
const ( AddPlayerListItemAction PlayerListItemAction = iota UpdateGameModePlayerListItemAction UpdateLatencyPlayerListItemAction UpdateDisplayNamePlayerListItemAction RemovePlayerListItemAction )
type PlayerListItemEntry ¶
type ResourcePackRequest ¶
func (*ResourcePackRequest) Decode ¶
func (r *ResourcePackRequest) Decode(c *proto.PacketContext, rd io.Reader) (err error)
func (*ResourcePackRequest) Encode ¶
func (r *ResourcePackRequest) Encode(c *proto.PacketContext, wr io.Writer) error
type Respawn ¶
type Respawn struct { Dimension int PartialHashedSeed int64 Difficulty int16 Gamemode int16 LevelType string // empty by default ShouldKeepPlayerData bool // 1.16+ DimensionInfo *DimensionInfo // 1.16-1.16.1 PreviousGamemode int16 // 1.16+ CurrentDimensionData *DimensionData // 1.16.2+ }
type ServerLogin ¶
type ServerLogin struct {
Username string
}
func (*ServerLogin) Decode ¶
func (s *ServerLogin) Decode(_ *proto.PacketContext, rd io.Reader) (err error)
func (*ServerLogin) Encode ¶
func (s *ServerLogin) Encode(_ *proto.PacketContext, wr io.Writer) error
type ServerLoginSuccess ¶
func (*ServerLoginSuccess) Decode ¶
func (s *ServerLoginSuccess) Decode(c *proto.PacketContext, rd io.Reader) (err error)
func (*ServerLoginSuccess) Encode ¶
func (s *ServerLoginSuccess) Encode(c *proto.PacketContext, wr io.Writer) (err error)
type SetCompression ¶
type SetCompression struct {
Threshold int
}
func (*SetCompression) Decode ¶
func (s *SetCompression) Decode(c *proto.PacketContext, rd io.Reader) (err error)
func (*SetCompression) Encode ¶
func (s *SetCompression) Encode(c *proto.PacketContext, wr io.Writer) error
type StatusPing ¶
type StatusPing struct {
RandomID int64
}
func (*StatusPing) Decode ¶
func (s *StatusPing) Decode(_ *proto.PacketContext, rd io.Reader) (err error)
func (*StatusPing) Encode ¶
func (s *StatusPing) Encode(_ *proto.PacketContext, wr io.Writer) error
type StatusRequest ¶
type StatusRequest struct{}
func (StatusRequest) Decode ¶
func (StatusRequest) Decode(_ *proto.PacketContext, _ io.Reader) error
func (StatusRequest) Encode ¶
func (StatusRequest) Encode(_ *proto.PacketContext, _ io.Writer) error
type StatusResponse ¶
type StatusResponse struct {
Status string
}
func (*StatusResponse) Decode ¶
func (s *StatusResponse) Decode(_ *proto.PacketContext, rd io.Reader) (err error)
func (*StatusResponse) Encode ¶
func (s *StatusResponse) Encode(_ *proto.PacketContext, wr io.Writer) error
type Title ¶
type Title struct { Action TitleAction Component *string // nil-able FadeIn, Stay, FadeOut int }
func NewHideTitle ¶
func NewResetTitle ¶
type TitleAction ¶
type TitleAction int
const ( SetTitle TitleAction = 0 SetSubtitle TitleAction = 1 SetActionBar TitleAction = 2 SetTimes TitleAction = 3 Hide TitleAction = 4 Reset TitleAction = 5 // 1.11+ shifted the action enum by 1 to handle the action bar SetTimesOld TitleAction = 2 HideOld TitleAction = 3 ResetOld TitleAction = 4 )
Title packet actions
func HideTitleAction ¶
func HideTitleAction(protocol proto.Protocol) TitleAction
func ResetTitleAction ¶
func ResetTitleAction(protocol proto.Protocol) TitleAction
func TimesTitleAction ¶
func TimesTitleAction(protocol proto.Protocol) TitleAction
Source Files ¶
Click to show internal directories.
Click to hide internal directories.