Exemplo n.º 1
0
        private void HandleDisconnect(int _connectionId)
        {
            var game = registeredGameServers.Find(_e => _e.connectionId == _connectionId);

            if (game != null)
            {
                registeredGameServers.Remove(game);
                foreach (var playerTemp in registeredPlayers)
                {
                    server.NetworkSend(playerTemp.connectionId, new GameListStatusMsg {
                        operation = GameListStatusMsg.Operation.Remove,
                        game      = game
                    });
                }

                return;
            }

            var player = registeredPlayers.Find(_e => _e.connectionId == _connectionId);

            if (player != null)
            {
                registeredPlayers.Remove(player);

                return;
            }
        }
Exemplo n.º 2
0
        private void HandleChatMsg(InsightMessage _insightMsg)
        {
            if (_insightMsg is InsightNetworkMessage netMsg)
            {
                var message = (ChatMsg)_insightMsg.message;

                Debug.Log("[ChatServer] - Received Chat Message.");

                //Inject the username into the message
                message.username = authModule.registeredUsers.Find(_e => _e.connectionId == netMsg.connectionId)
                                   .username;

                if (gameModule != null)
                {
                    foreach (var playerConnId in gameModule.GetPlayersInGame(netMsg.connectionId))
                    {
                        server.NetworkSend(playerConnId, message);
                    }
                }
                else
                {
                    foreach (var user in authModule.registeredUsers)
                    {
                        server.NetworkSend(user.connectionId, message);
                    }
                }
            }
            else
            {
                Debug.Log("[ChatServer] - Rejected (Internal) Chat Message.");
            }
        }
Exemplo n.º 3
0
        private void SendToSpawner(int _connectionId, RequestSpawnStartMsg _message, CallbackHandler _callback = null)
        {
            var message = new RequestSpawnStartToSpawnerMsg(_message);

            if (_connectionId == 0)
            {
                server.InternalSend(message, _callback);
            }
            else
            {
                server.NetworkSend(_connectionId, message, _callback);
            }
        }