scripts
This commit is contained in:
@@ -0,0 +1,262 @@
|
||||
using System;
|
||||
using UnityEngine.Networking.NetworkSystem;
|
||||
using UnityEngine.SceneManagement;
|
||||
|
||||
namespace UnityEngine.Networking
|
||||
{
|
||||
// Token: 0x0200004A RID: 74
|
||||
[DisallowMultipleComponent]
|
||||
[AddComponentMenu("Network/NetworkLobbyPlayer")]
|
||||
public class NetworkLobbyPlayer : NetworkBehaviour
|
||||
{
|
||||
// Token: 0x17000068 RID: 104
|
||||
// (get) Token: 0x06000297 RID: 663 RVA: 0x0001108C File Offset: 0x0000F28C
|
||||
// (set) Token: 0x06000298 RID: 664 RVA: 0x000110A7 File Offset: 0x0000F2A7
|
||||
public byte slot
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.m_Slot;
|
||||
}
|
||||
set
|
||||
{
|
||||
this.m_Slot = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17000069 RID: 105
|
||||
// (get) Token: 0x06000299 RID: 665 RVA: 0x000110B4 File Offset: 0x0000F2B4
|
||||
// (set) Token: 0x0600029A RID: 666 RVA: 0x000110CF File Offset: 0x0000F2CF
|
||||
public bool readyToBegin
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.m_ReadyToBegin;
|
||||
}
|
||||
set
|
||||
{
|
||||
this.m_ReadyToBegin = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600029B RID: 667 RVA: 0x000110D9 File Offset: 0x0000F2D9
|
||||
private void Start()
|
||||
{
|
||||
Object.DontDestroyOnLoad(base.gameObject);
|
||||
}
|
||||
|
||||
// Token: 0x0600029C RID: 668 RVA: 0x000110E7 File Offset: 0x0000F2E7
|
||||
private void OnEnable()
|
||||
{
|
||||
SceneManager.sceneLoaded += this.OnSceneLoaded;
|
||||
}
|
||||
|
||||
// Token: 0x0600029D RID: 669 RVA: 0x000110FB File Offset: 0x0000F2FB
|
||||
private void OnDisable()
|
||||
{
|
||||
SceneManager.sceneLoaded -= this.OnSceneLoaded;
|
||||
}
|
||||
|
||||
// Token: 0x0600029E RID: 670 RVA: 0x00011110 File Offset: 0x0000F310
|
||||
public override void OnStartClient()
|
||||
{
|
||||
NetworkLobbyManager networkLobbyManager = NetworkManager.singleton as NetworkLobbyManager;
|
||||
if (networkLobbyManager)
|
||||
{
|
||||
networkLobbyManager.lobbySlots[(int)this.m_Slot] = this;
|
||||
this.m_ReadyToBegin = false;
|
||||
this.OnClientEnterLobby();
|
||||
}
|
||||
else
|
||||
{
|
||||
Debug.LogError("LobbyPlayer could not find a NetworkLobbyManager. The LobbyPlayer requires a NetworkLobbyManager object to function. Make sure that there is one in the scene.");
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600029F RID: 671 RVA: 0x00011164 File Offset: 0x0000F364
|
||||
public void SendReadyToBeginMessage()
|
||||
{
|
||||
if (LogFilter.logDebug)
|
||||
{
|
||||
Debug.Log("NetworkLobbyPlayer SendReadyToBeginMessage");
|
||||
}
|
||||
NetworkLobbyManager networkLobbyManager = NetworkManager.singleton as NetworkLobbyManager;
|
||||
if (networkLobbyManager)
|
||||
{
|
||||
LobbyReadyToBeginMessage lobbyReadyToBeginMessage = new LobbyReadyToBeginMessage();
|
||||
lobbyReadyToBeginMessage.slotId = (byte)base.playerControllerId;
|
||||
lobbyReadyToBeginMessage.readyState = true;
|
||||
networkLobbyManager.client.Send(43, lobbyReadyToBeginMessage);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060002A0 RID: 672 RVA: 0x000111CC File Offset: 0x0000F3CC
|
||||
public void SendNotReadyToBeginMessage()
|
||||
{
|
||||
if (LogFilter.logDebug)
|
||||
{
|
||||
Debug.Log("NetworkLobbyPlayer SendReadyToBeginMessage");
|
||||
}
|
||||
NetworkLobbyManager networkLobbyManager = NetworkManager.singleton as NetworkLobbyManager;
|
||||
if (networkLobbyManager)
|
||||
{
|
||||
LobbyReadyToBeginMessage lobbyReadyToBeginMessage = new LobbyReadyToBeginMessage();
|
||||
lobbyReadyToBeginMessage.slotId = (byte)base.playerControllerId;
|
||||
lobbyReadyToBeginMessage.readyState = false;
|
||||
networkLobbyManager.client.Send(43, lobbyReadyToBeginMessage);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060002A1 RID: 673 RVA: 0x00011234 File Offset: 0x0000F434
|
||||
public void SendSceneLoadedMessage()
|
||||
{
|
||||
if (LogFilter.logDebug)
|
||||
{
|
||||
Debug.Log("NetworkLobbyPlayer SendSceneLoadedMessage");
|
||||
}
|
||||
NetworkLobbyManager networkLobbyManager = NetworkManager.singleton as NetworkLobbyManager;
|
||||
if (networkLobbyManager)
|
||||
{
|
||||
IntegerMessage integerMessage = new IntegerMessage((int)base.playerControllerId);
|
||||
networkLobbyManager.client.Send(44, integerMessage);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060002A2 RID: 674 RVA: 0x0001128C File Offset: 0x0000F48C
|
||||
private void OnSceneLoaded(Scene scene, LoadSceneMode mode)
|
||||
{
|
||||
NetworkLobbyManager networkLobbyManager = NetworkManager.singleton as NetworkLobbyManager;
|
||||
if (networkLobbyManager)
|
||||
{
|
||||
string name = scene.name;
|
||||
if (name == networkLobbyManager.lobbyScene)
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (base.isLocalPlayer)
|
||||
{
|
||||
this.SendSceneLoadedMessage();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060002A3 RID: 675 RVA: 0x000112E4 File Offset: 0x0000F4E4
|
||||
public void RemovePlayer()
|
||||
{
|
||||
if (base.isLocalPlayer && !this.m_ReadyToBegin)
|
||||
{
|
||||
if (LogFilter.logDebug)
|
||||
{
|
||||
Debug.Log("NetworkLobbyPlayer RemovePlayer");
|
||||
}
|
||||
ClientScene.RemovePlayer(base.GetComponent<NetworkIdentity>().playerControllerId);
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060002A4 RID: 676 RVA: 0x00011331 File Offset: 0x0000F531
|
||||
public virtual void OnClientEnterLobby()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x060002A5 RID: 677 RVA: 0x00011334 File Offset: 0x0000F534
|
||||
public virtual void OnClientExitLobby()
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x060002A6 RID: 678 RVA: 0x00011337 File Offset: 0x0000F537
|
||||
public virtual void OnClientReady(bool readyState)
|
||||
{
|
||||
}
|
||||
|
||||
// Token: 0x060002A7 RID: 679 RVA: 0x0001133C File Offset: 0x0000F53C
|
||||
public override bool OnSerialize(NetworkWriter writer, bool initialState)
|
||||
{
|
||||
writer.WritePackedUInt32(1U);
|
||||
writer.Write(this.m_Slot);
|
||||
writer.Write(this.m_ReadyToBegin);
|
||||
return true;
|
||||
}
|
||||
|
||||
// Token: 0x060002A8 RID: 680 RVA: 0x00011374 File Offset: 0x0000F574
|
||||
public override void OnDeserialize(NetworkReader reader, bool initialState)
|
||||
{
|
||||
if (reader.ReadPackedUInt32() != 0U)
|
||||
{
|
||||
this.m_Slot = reader.ReadByte();
|
||||
this.m_ReadyToBegin = reader.ReadBoolean();
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x060002A9 RID: 681 RVA: 0x000113AC File Offset: 0x0000F5AC
|
||||
private void OnGUI()
|
||||
{
|
||||
if (this.ShowLobbyGUI)
|
||||
{
|
||||
NetworkLobbyManager networkLobbyManager = NetworkManager.singleton as NetworkLobbyManager;
|
||||
if (networkLobbyManager)
|
||||
{
|
||||
if (!networkLobbyManager.showLobbyGUI)
|
||||
{
|
||||
return;
|
||||
}
|
||||
string name = SceneManager.GetSceneAt(0).name;
|
||||
if (name != networkLobbyManager.lobbyScene)
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
Rect rect = new Rect((float)(100 + this.m_Slot * 100), 200f, 90f, 20f);
|
||||
if (base.isLocalPlayer)
|
||||
{
|
||||
string text;
|
||||
if (this.m_ReadyToBegin)
|
||||
{
|
||||
text = "(Ready)";
|
||||
}
|
||||
else
|
||||
{
|
||||
text = "(Not Ready)";
|
||||
}
|
||||
GUI.Label(rect, text);
|
||||
if (this.m_ReadyToBegin)
|
||||
{
|
||||
rect.y += 25f;
|
||||
if (GUI.Button(rect, "STOP"))
|
||||
{
|
||||
this.SendNotReadyToBeginMessage();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
rect.y += 25f;
|
||||
if (GUI.Button(rect, "START"))
|
||||
{
|
||||
this.SendReadyToBeginMessage();
|
||||
}
|
||||
rect.y += 25f;
|
||||
if (GUI.Button(rect, "Remove"))
|
||||
{
|
||||
ClientScene.RemovePlayer(base.GetComponent<NetworkIdentity>().playerControllerId);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
GUI.Label(rect, "Player [" + base.netId + "]");
|
||||
rect.y += 25f;
|
||||
GUI.Label(rect, "Ready [" + this.m_ReadyToBegin + "]");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x04000153 RID: 339
|
||||
[SerializeField]
|
||||
public bool ShowLobbyGUI = true;
|
||||
|
||||
// Token: 0x04000154 RID: 340
|
||||
private byte m_Slot;
|
||||
|
||||
// Token: 0x04000155 RID: 341
|
||||
private bool m_ReadyToBegin;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user