Class ServerSelectSystem
- Namespace
- FishMMO.Server.Implementation.LoginServer
- Assembly
- FishMMO.Server.dll
Manages server selection for clients, providing the list of available world servers from the database.
[CreateAssetMenu(fileName = "ServerSelectSystem", menuName = "FishMMO/Server/LoginServer/Server Select System", order = 1)]
[RequiresDataContainer(typeof(ServerSelectSystemMainThreadQueueData))]
[RequiresDataContainer(typeof(ServerSelectSystemRuntimeData))]
[RequiresDataContainer(typeof(AsyncWorkerData))]
public class ServerSelectSystem : ServerBehaviour, IServerBehaviour<INetworkManagerWrapper, ServerManager, NetworkConnection, IServerBehaviour>, IServerComponent<INetworkManagerWrapper, ServerManager, NetworkConnection, IServerBehaviour>, IServerSelectSystem, IServerBehaviour, IServerComponent
- Inheritance
-
ObjectScriptableObjectServerSelectSystem
- Implements
- Inherited Members
-
ScriptableObject.SetDirty()ScriptableObject.CreateInstance<T>()Object.GetEntityId()Object.GetInstanceID()Object.GetHashCode()Object.InstantiateAsync<T>(T)Object.InstantiateAsync<T>(T, Transform)Object.InstantiateAsync<T>(T, Vector3, Quaternion)Object.InstantiateAsync<T>(T, Transform, Vector3, Quaternion)Object.Instantiate(Object, Vector3, Quaternion)Object.Instantiate(Object, Vector3, Quaternion, Transform)Object.Instantiate(Object)Object.Instantiate(Object, Scene)Object.Instantiate<T>(T, InstantiateParameters)Object.Instantiate<T>(T, Vector3, Quaternion, InstantiateParameters)Object.Instantiate(Object, Transform)Object.Instantiate<T>(T)Object.Instantiate<T>(T, Vector3, Quaternion)Object.Instantiate<T>(T, Vector3, Quaternion, Transform)Object.Instantiate<T>(T, Transform)Object.Destroy(Object)Object.DestroyImmediate(Object)Object.DontDestroyOnLoad(Object)Object.DestroyObject(Object)Object.FindObjectsOfType<T>()Object.FindObjectsByType<T>(FindObjectsSortMode)Object.FindObjectsByType<T>(FindObjectsInactive, FindObjectsSortMode)Object.FindObjectOfType<T>()Object.FindFirstObjectByType<T>()Object.FindAnyObjectByType<T>()Object.FindFirstObjectByType<T>(FindObjectsInactive)Object.FindAnyObjectByType<T>(FindObjectsInactive)Object.FindObjectsByType<T>()Object.FindObjectsByType<T>(FindObjectsInactive)Object.ToString()Object.nameObject.hideFlags
Methods
InitializeOnce()
Initializes the server select system, registering broadcast handlers for server list requests.
public override ServerComponentInitializationStatus InitializeOnce()
Returns
OnDeinitialize()
Cleans up the server select system, unregistering broadcast handlers for server list requests. Drains remaining main-thread responses so clients get their final messages.
public override void OnDeinitialize()
OnRemoteConnectionStopped(NetworkConnection)
Releases per-connection in-flight server-list state when a client disconnects.
protected override void OnRemoteConnectionStopped(NetworkConnection conn)
Parameters
connNetworkConnection
OnUpdate(float)
Drains the main-thread response queue each frame. All network operations from async workers are marshalled through this queue to ensure they execute on the main Unity thread.
protected override void OnUpdate(float deltaTime)
Parameters
deltaTimefloatTime elapsed since last frame.