Space-Smash-Out/Assets/Scripts/Multiplayer/SSOLobby.cs

66 lines
1.6 KiB
C#

using System;
using FishNet;
using FishNet.Connection;
using FishNet.Managing.Scened;
using FishNet.Object;
using FishNet.Transporting;
using UnityEngine;
public class SSOLobby : NetworkBehaviour
{
#region Init & Update
void Start()
{
Locator.RegisterService<SSOLobby>(this);
// Register connection state events
InstanceFinder.ServerManager.OnServerConnectionState += OnServerStateChanged;
InstanceFinder.ServerManager.OnRemoteConnectionState += OnClienStateChanged;
InstanceFinder.ClientManager.OnClientConnectionState += OnLocalClientStateChanged;
base.NetworkManager.SceneManager.OnLoadEnd += OnClientLoadedScene;
base.NetworkManager.SceneManager.OnClientPresenceChangeEnd += OnClientSceneState;
}
public override void OnStartClient()
{
Locator.GetService<LobbyManager>().InitClient(this);
}
public override void OnStopServer()
{
base.OnStopServer();
base.NetworkManager.SceneManager.OnLoadEnd -= OnClientLoadedScene;
base.NetworkManager.SceneManager.OnClientPresenceChangeEnd -= OnClientSceneState;
}
#endregion
#region Events
private void OnClientSceneState(ClientPresenceChangeEventArgs args)
{
throw new NotImplementedException();
}
private void OnClientLoadedScene(SceneLoadEndEventArgs args)
{
throw new NotImplementedException();
}
private void OnLocalClientStateChanged(ClientConnectionStateArgs args)
{
throw new NotImplementedException();
}
private void OnClienStateChanged(NetworkConnection connection, RemoteConnectionStateArgs args)
{
throw new NotImplementedException();
}
private void OnServerStateChanged(ServerConnectionStateArgs args)
{
throw new NotImplementedException();
}
#endregion
}