TransientExtendedInfo

Transient extended info is for extended info blocks which do not use any caching mechanisms client-sided. This does not, however, mean that no caching occurs at all. Certain extended info blocks are intended to last over several game cycles, such as net.rsprot.protocol.common.game.outgoing.info.shared.extendedinfo.FacePathingEntity, In those cases, this structure is responsible for holding the state necessary to synchronize the avatars later on in the future. If the respective extended info block is then reset to the default value, new avatars should not receive this any more, as the client will also use the default value.

Parameters

T

the extended info block

E

the encoder for the given extended info block

Inheritors

Constructors

Link copied to clipboard
constructor()

Properties

Link copied to clipboard
abstract val encoders: ClientTypeMap<E>

Functions

Link copied to clipboard
abstract fun clear()

Clears this extended info block, making it ready for use by another avatar.

Link copied to clipboard
fun getBuffer(oldSchoolClientType: OldSchoolClientType): ByteBuf?

Gets the latest pre-computed buffer for the given oldSchoolClientType.

Link copied to clipboard
fun getEncoder(oldSchoolClientType: OldSchoolClientType): E?

Gets the encoder for a given oldSchoolClientType.

Link copied to clipboard
fun isPrecomputed(oldSchoolClientType: OldSchoolClientType): Boolean

Checks whether a buffer has been precomputed on the specified client type.

Link copied to clipboard
fun setBuffer(clientTypeId: Int, buffer: ByteBuf)

Sets the client-specific buffer at index clientTypeId.