void StartServer() { if (!NetworkServer.active) { NetworkServer.RegisterHandler((short)PTEvent.Connect, Handler_OnConnected); NetworkServer.RegisterHandler(MsgType.Disconnect, Handler_OnDisconnect); NetworkServer.RegisterHandler((short)PTEvent.Data, Handler_OnData); NetworkServer.RegisterHandler((short)PTEvent.Ready, Handler_OnReadyReceived); NetworkServer.RegisterHandler((short)PTEvent.ConfirmReadyReceived, Handler_OnConfirmReady); NetworkServer.Listen(PTNetwork.DEFAULT_SERVER_PORT); } PTSession newSession = new PTSession(); newSession.senderName = playerName; newSession.gameName = gameName; newSession.port = NetworkServer.listenPort; newSession.data = Encoding.Unicode.GetBytes(PTNetwork.DEFAULT_BROADCAST_DATA); if (nd.running) { nd.StopBroadcast(); } nd.broadcastData = newSession.ToString(); nd.Initialize(); nd.StartAsServer(); }
void Handler_OnBroadcastReceieved(PTSession session) { PTDebug("OnBroadcastReceieved: " + session.ToString(true)); try { nearbySessions.Add(session); tempNearbySessionSet.Add(session); } catch { } }