net.psforever.packet.game.objectcreate
Find the number of trailing bits that need to be added to make the current value perfectly divisible by eight.
Find the number of trailing bits that need to be added to make the current value perfectly divisible by eight.
the current length of a stream
the number of bits needed to pad it
Determine the padding offset for a subsequent field given the existence of PlacementData
.
Determine the padding offset for a subsequent field given the existence of PlacementData
.
With the PlacementData
objects, a question of the optional velocity field also exists.
With just PlacementData
, the bit distance to the name field is 164 (padding: 4 bits).
With PlacementData
with velocity, the bit distance to the name field is 206 (padding: 2 bits).
Without PlacementData
, the distance to the name field is either 107 or 115 (padding: 5 bits).
The padding will always be a number 0-7.
the optional PlacementData
object that creates the shift in bits
the pad length in bits
PlacementData
Overloaded constructor that includes the coordinate information but ignores the inventory.
Overloaded constructor that includes the coordinate information but ignores the inventory. It passes information between the three major divisions for the purposes of offset calculations. This constructor should be used for players that are standing apart from other containers.
the optional position of the character in the world environment
a curried function for the common fields regarding the the character's appearance
a curried function for the class-specific data that explains about the character
the holster that is initially drawn
a PlayerData
object
Overloaded constructor that includes the coordinate information and the inventory.
Overloaded constructor that includes the coordinate information and the inventory. It passes information between the three major divisions for the purposes of offset calculations. This constructor should be used for players that are standing apart from other containers.
the optional position of the character in the world environment
a curried function for the common fields regarding the the character's appearance
a curried function for the class-specific data that explains about the character
the player's inventory
the holster that is initially drawn
a PlayerData
object
Overloaded constructor that ignores the coordinate information and the inventory.
Overloaded constructor that ignores the coordinate information and the inventory. It passes information between the three major divisions for the purposes of offset calculations. This constructor should be used for players that are mounted.
a curried function for the common fields regarding the the character's appearance
a curried function for the class-specific data that explains about the character
the holster that is initially drawn;
technically, always DrawnSlot.None
, but the field is preserved to maintain similarity
a PlayerData
object
Overloaded constructor that ignores the coordinate information but includes the inventory.
Overloaded constructor that ignores the coordinate information but includes the inventory. It passes information between the three major divisions for the purposes of offset calculations. This constructor should be used for players that are mounted.
a curried function for the common fields regarding the the character's appearance
a curried function for the class-specific data that explains about the character
the player's inventory
the holster that is initially drawn;
technically, always DrawnSlot.None
, but the field is preserved to maintain similarity
a PlayerData
object
This Codec
is exclusively for translating a Player
object
while that Player
object is encountered in the process of translating its mounting object.
This Codec
is exclusively for translating a Player
object
while that Player
object is encountered in the process of translating its mounting object.
In other words, the player is "seated" or "mounted."
the padding for the player's name field
a Codec
that translates a PlayerData
object
CharacterAppearanceData.codec
This Codec
is generic.
This Codec
is generic.
However, it should not be used to translate a Player
object
in the middle of translating that Player
's mounting object.
The offset value is calculated internally.
this entry has PlacementData
that defines position, orientation, and, optionally, motion
a Codec
that translates a PlayerData
object