Soul class

Constructors, destructors, conversion operators

Soul(uint8_t ownerID) explicit
~Soul() defaulted virtual
Soul(const Soul&) deleted

Public functions

auto operator=(const Soul&) -> Soul& deleted
auto GetOwnerID() const -> uint8_t
auto GetInputLead() const -> uint32_t
auto GetCameraManager() -> CameraManager&
void DispatchOrientationDelta(SimFloat dyaw, SimFloat dpitch)
auto GetRole() const -> SoulRole
void SetRole(SoulRole role)
void AddRole(SoulRole flag)
Add one or more role flags without clearing existing ones.
auto HasRole(SoulRole flag) const -> bool
Returns true if ALL bits in flag are set on this Soul's role.
auto HasBody() const -> bool
auto GetBodyHandle() const -> ConstructRef
auto GetSimInput(WorldBase* world) const -> InputBuffer*
auto GetVizInput(WorldBase* world) const -> InputBuffer*
void ClaimBody(ConstructRef ref)
void OnJoined() virtual
Called by FlowManager after creation — game code can override for init.
void OnLeft() virtual
Called by FlowManager just before destruction.
void OnBodyConfirmed() virtual
Called immediately after ClaimBody() — wire input routing, show HUD, etc.
void OnBodyLost() virtual
void ReleaseBody()
auto GetFlowManager() -> FlowManagerBase*

Function documentation

void Soul::ClaimBody(ConstructRef ref)

Called by the GameMode (via WithSpawnManagement or directly) after the server confirms a spawn. Stores the handle and fires OnBodyConfirmed().

void Soul::OnBodyLost() virtual

Called when the Body is destroyed (death, despawn, respawn cycle start). ConfirmedBodyHandle is cleared before this fires.

void Soul::ReleaseBody()

Clears ConfirmedBodyHandle and fires OnBodyLost(). Called by GameMode on Body destruction (e.g. death, level unload).