class

Rosegold::Serverbound::ChatMessage

Inherits Rosegold::Packets::ProtocolMapping / Rosegold::Serverbound::Packet / Rosegold::Packet / Rosegold::Event / Reference / Object

Constants

PROTOCOL_PACKET_IDS = {772_u32 => 8_u32, 774_u32 => 8_u32, 775_u32 => 9_u32}

Store the protocol mappings as a constant

Constructors

new(message : String, timestamp : Int64 = Time.utc.to_unix_ms, salt : Int64 = Random.new.rand(Int64::MIN..Int64::MAX), signature : Bytes | Nil = nil, message_count : UInt32 = 0_u32, acknowledged : Bytes = Bytes.new(3, 0), checksum : UInt8 = 0_u8)
Source

Class methods

[](protocol_version : UInt32) : UInt32

Generate the method for elegant access

Source
default_packet_id

Define default packet ID (typically the latest/most common version)

Source
packet_id

Provide backward compatibility with existing packet_id class getter Use the first protocol's packet ID for registration compatibility

packet_id_for_protocol(protocol_version : UInt32) : UInt32

Get packet ID for specific protocol version (returns UInt32 for VarInt encoding in write methods)

Source
read(io)
Source
supported_protocols

Helper method to get all supported protocols

Source
supports_protocol?(protocol_version : UInt32) : Bool

Helper method to check if a protocol is supported

Source
unsigned(message : String)

Convenience method for creating simple unsigned chat messages

Source

Instance methods

acknowledged
Source
acknowledged=(acknowledged : Bytes)
Source
checksum
Source
checksum=(checksum : UInt8)
Source
message
Source
message=(message : String)
Source
message_count
Source
message_count=(message_count : UInt32)
Source
salt
Source
salt=(salt : Int64)
Source
signature
Source
signature=(signature : Bytes | Nil)
Source
timestamp
Source
timestamp=(timestamp : Int64)
Source
write
Source