Table of Contents

Class SceneInstanceMappingData

Namespace
FishMMO.Server.Implementation.World.SceneServer
Assembly
FishMMO.Server.dll

Runtime data container for scene instance tracking and scene handle management. Manages all scene instance mappings separately from SceneServerSystem logic.

public class SceneInstanceMappingData : RuntimeDataContainer, IRuntimeDataContainer<INetworkManagerWrapper, ServerManager, NetworkConnection, IRuntimeDataContainer>, IServerComponent<INetworkManagerWrapper, ServerManager, NetworkConnection, IRuntimeDataContainer>, ISceneInstanceMappingData, IRuntimeDataContainer, IServerComponent
Inheritance
SceneInstanceMappingData
Implements
Inherited Members

Properties

PendingScenes

Tracks pending scene load requests by scene ID. Each entry combines the SceneData with its enqueue timestamp.

public Dictionary<long, PendingSceneInfo> PendingScenes { get; }

Property Value

Dictionary<long, PendingSceneInfo>

SceneInstanceByHandle

Flat O(1) lookup from the local scene manager handle to instance details.

public Dictionary<int, ISceneInstanceDetails> SceneInstanceByHandle { get; }

Property Value

Dictionary<int, ISceneInstanceDetails>

Remarks

Keyed by the process-local handle because that is what scene-unload callbacks report. Everything that identifies an instance across processes uses SceneInstanceByID instead — see SceneID.

SceneInstanceByID

Flat O(1) lookup from scene row ID to instance details. Kept in sync with the nested WorldScenes dictionary and with SceneInstanceByHandle.

public Dictionary<long, ISceneInstanceDetails> SceneInstanceByID { get; }

Property Value

Dictionary<long, ISceneInstanceDetails>

SceneNameByHandle

Maps scene handles to scene names for quick lookup.

public Dictionary<int, string> SceneNameByHandle { get; }

Property Value

Dictionary<int, string>

WorldScenes

Maps world server IDs to scene names to scene row IDs, tracking all loaded scene instances.

public Dictionary<long, Dictionary<string, Dictionary<long, ISceneInstanceDetails>>> WorldScenes { get; }

Property Value

Dictionary<long, Dictionary<string, Dictionary<long, ISceneInstanceDetails>>>

Methods

Clear()

Clears all scene instance mapping data.

public override void Clear()

InitializeOnce()

Initializes the scene instance mapping data container.

public override ServerComponentInitializationStatus InitializeOnce()

Returns

ServerComponentInitializationStatus

OnDeinitialize()

Deinitializes the scene instance mapping data container.

protected override void OnDeinitialize()