class

Rosegold::Serverbound::PlayerBlockPlacement

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

cursor (in-block coordinates) ranges from 0.0 to 1.0 and determines e.g. top/bottom slab or left/right door.

Constants

PROTOCOL_PACKET_IDS = {772_u32 => 63_u32, 774_u32 => 63_u32, 775_u32 => 66_u32}

Store the protocol mappings as a constant

Constructors

new(hand : Hand, location : Vec3i, face : BlockFace, cursor : Vec3f = Vec3f.new(0.5, 0.5, 0.5), inside_block : Bool = false, sequence : Int32 = 0)
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

Instance methods

cursor
Source
cursor=(cursor : Vec3f)
Source
face
Source
face=(face : BlockFace)
Source
hand
Source
hand=(hand : Hand)
Source
inside_block=(inside_block : Bool)
Source
inside_block?
Source
location
Source
location=(location : Vec3i)
Source
sequence
Source
sequence=(sequence : Int32)
Source
write
Source