123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- using System;
- using Unity.Multiplayer.Samples.Utilities;
- using UnityEngine;
- using UnityEngine.SceneManagement;
- //离线状态,默认初始状态
- public class OfflineState : ConnectionState
- {
- public override void Enter()
- {
- //关闭连接
- m_ConnectionManager.NetworkManager.Shutdown();
- }
- public override void Exit()
- {
- }
- //启动客户端,切换到ClientConnectingState状态。playerName为客户端名称(建议SystemInfo.deviceName设备名称)
- public override void StartClientIP(string ipaddress, int port)
- {
- //设置客户端账号,IP、端口
- Debug.Log("OfflineState StartClientIP");
-
- //设置IP
- m_ConnectionManager.ConnectionMethod.SetIPData(ipaddress, (ushort)port);
- //设置信息
- m_ConnectionManager.m_ClientReconnecting.Configure();
- m_ConnectionManager.m_ClientConnecting.Configure();
- //切换到连接状态
- m_ConnectionManager.ChangeState(m_ConnectionManager.m_ClientConnecting);
- }
- //启动服务端,切换到StartingHostState状态
- public override void StartHostIP(string ipaddress, int port)
- {
- Debug.Log("OfflineState StartHostIP");
- m_ConnectionManager.ConnectionMethod.SetIPData(ipaddress, (ushort)port);
- m_ConnectionManager.m_StartingHost.Configure();
- m_ConnectionManager.ChangeState(m_ConnectionManager.m_StartingHost);
- }
- }
|