Struct PluginNavigationSnapshot
- Namespace
- AcDream.Plugin.Abstractions
- Assembly
- AcDream.Plugin.Abstractions.dll
The local movement state sampled atomically by a plugin tick.
public readonly record struct PluginNavigationSnapshot : IEquatable<PluginNavigationSnapshot>
- Implements
- Inherited Members
Constructors
PluginNavigationSnapshot(bool, bool, uint, PluginNavigationPosition, bool, bool)
The local movement state sampled atomically by a plugin tick.
public PluginNavigationSnapshot(bool IsAvailable, bool IsPortalSpace, uint LocalObjectId, PluginNavigationPosition Position, bool IsMoving, bool IsAirborne)
Parameters
IsAvailableboolTrue when a session is in the world and the remaining fields carry real values. When it is false every other field is at its default.
IsPortalSpaceboolTrue while the player is in transit through portal space, after leaving one place and before arriving at the next.
LocalObjectIduintThe player character's own object id.
PositionPluginNavigationPositionThe player's live locally predicted position, updated every frame.
IsMovingboolTrue when the player is actually moving or is holding a movement input.
IsAirborneboolTrue when the player has no ground under foot.
Properties
ConfirmedPosition
The last position the server confirmed, as opposed to the locally predicted Position. Equal to Position when no server position has been accepted yet.
public PluginNavigationPosition ConfirmedPosition { get; init; }
Property Value
ConfirmedPositionRevision
A counter that grows every time the server confirms a new position, so a plugin can tell a fresh confirmation from a repeat. Zero when nothing has been confirmed yet.
public ulong ConfirmedPositionRevision { get; init; }
Property Value
IsAirborne
True when the player has no ground under foot.
public bool IsAirborne { get; init; }
Property Value
IsAvailable
True when a session is in the world and the remaining fields carry real values. When it is false every other field is at its default.
public bool IsAvailable { get; init; }
Property Value
IsMoving
True when the player is actually moving or is holding a movement input.
public bool IsMoving { get; init; }
Property Value
IsPortalSpace
True while the player is in transit through portal space, after leaving one place and before arriving at the next.
public bool IsPortalSpace { get; init; }
Property Value
LocalObjectId
The player character's own object id.
public uint LocalObjectId { get; init; }
Property Value
Position
The player's live locally predicted position, updated every frame.
public PluginNavigationPosition Position { get; init; }
Property Value
Revision
A host-local monotonic revision for this complete navigation snapshot. It changes whenever any snapshot field changes and is useful for consumers that need to coalesce updates without comparing all fields.
public ulong Revision { get; init; }