alap
This commit is contained in:
58
Assets/Scripts/MyNetworkManager.cs
Normal file
58
Assets/Scripts/MyNetworkManager.cs
Normal file
@ -0,0 +1,58 @@
|
||||
using Mirror;
|
||||
using Steamworks;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class MyNetworkManager : NetworkManager
|
||||
{
|
||||
public static bool isMulitplayer;
|
||||
|
||||
public List<MyClient> allClients = new List<MyClient>();
|
||||
public override void OnServerAddPlayer(NetworkConnectionToClient conn)
|
||||
{
|
||||
base.OnServerAddPlayer(conn);
|
||||
|
||||
MyClient client = conn.identity.GetComponent<MyClient>();
|
||||
CSteamID steamId = SteamLobby.LobbyID.m_SteamID == 0 ? SteamUser.GetSteamID() : SteamMatchmaking.GetLobbyMemberByIndex(SteamLobby.LobbyID, allClients.Count);
|
||||
client.playerInfo = new PlayerInfoData(SteamFriends.GetFriendPersonaName(steamId), steamId.m_SteamID);
|
||||
}
|
||||
|
||||
public override void OnServerDisconnect(NetworkConnectionToClient conn)
|
||||
{
|
||||
base.OnServerDisconnect(conn);
|
||||
}
|
||||
|
||||
public override void OnStartClient()
|
||||
{
|
||||
if (isMulitplayer)
|
||||
{
|
||||
MainMenu.instance.SetMenuState(MenuState.InParty);
|
||||
PopupManager.instance.Popup_Close();
|
||||
}
|
||||
|
||||
base.OnStartClient();
|
||||
}
|
||||
|
||||
public override void OnStopClient()
|
||||
{
|
||||
if (isMulitplayer)
|
||||
{
|
||||
MainMenu.instance.SetMenuState(MenuState.Home);
|
||||
}
|
||||
|
||||
base.OnStopClient();
|
||||
}
|
||||
|
||||
public void SetMultiplayer(bool value)
|
||||
{
|
||||
isMulitplayer = value;
|
||||
|
||||
if (isMulitplayer)
|
||||
|
||||
NetworkServer.dontListen = false;
|
||||
else
|
||||
|
||||
NetworkServer.dontListen = true;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user