Example #1
0
    private void OnPlayerRemove(PlayerRemove playerInfo)
    {
        var player = Players.GetPlayerByUserId(playerInfo.UserId);

        if (!player)
        {
            Debug.Log($"Received Player Remove ({playerInfo.UserId}) but the player is not in this game. Reason: " + playerInfo.Reason);
            return;
        }

        QueueRemovePlayer(player);
        Debug.Log($"{player.PlayerName} removed from the game. Reason: " + playerInfo.Reason);
    }
        public void RemovePlayer(Player player)
        {
            var session = sessions.Get(player);

            if (session == null)
            {
                return;
            }

            session.RemovePlayer(player);

            foreach (var connection in connectionProvider.GetConnectedActivePlayerConnections(session))
            {
                connection.Send(PlayerRemove.Create(player), SendOption.Reliable);
            }
        }