Пример #1
0
        private void ServerHandleBaseDeSpawned(UnitBase unitBase)
        {
            bases.Remove(unitBase);
            if (bases.Count > 1)
            {
                return;
            }
            int playerId = bases[0].connectionToClient.connectionId;

            RpcGameOver($"Player {playerId}");
            ServerOnGameOver?.Invoke();
        }
Пример #2
0
    private void ServerHandleBaseDespawned(UnitBase unitBase)
    {
        bases.Remove(unitBase);
        if (bases.Count == 1)
        {
            Debug.Log("Game Over");

            int playerId = bases[0].connectionToClient.connectionId;

            RpcGameOver($"Player {playerId}");

            ServerOnGameOver?.Invoke();
        }
    }
Пример #3
0
    private void ServerHandleBaseDespawned(UnitBase unitBase)
    {
        bases.Remove(unitBase);

        if (bases.Count != 1)
        {
            return;
        }

        int playerID = bases[0].connectionToClient.connectionId;

        RpcGameOver($"Player {playerID}");  // $ is like f-strings for C#

        ServerOnGameOver?.Invoke();
    }
    private void ServerHandleBaseDespawned(UnitBase unitBase)
    {
        bases.Remove(unitBase);

        if (bases.Count != 1)
        {
            return;
        }

        int playerId = bases[0].connectionToClient.connectionId; // only one player base left in list, so they must be the winner

        RpcGameOver($"Player {playerId}");

        ServerOnGameOver?.Invoke();
    }
Пример #5
0
    private void ServerHandleEnemyDespawned(UnitEnemy unitEnemy)
    {
        enemies.Remove(unitEnemy);

        if (enemies.Count != 1)
        {
            return;
        }

        int playerId = enemies[0].connectionToClient.connectionId;

        RpcGameOver($"Player {playerId}");

        ServerOnGameOver?.Invoke();
    }
Пример #6
0
        private void DespawnedHeadquarter(Headquarter headquarter)
        {
            _headquarters.Remove(headquarter);

            if (_headquarters.Count != 1)
            {
                return;
            }
            //else
            int winnerPlayerID = _headquarters[0].connectionToClient.connectionId;

            Debug.Log("Game Finished only one player left !!!");

            CilentRpcGameOver($"Winner : Player {winnerPlayerID}");
            ServerOnGameOver?.Invoke();
        }
Пример #7
0
    private void ServerHandleBaseDespawned(UnitBase unitBase)
    {
        bases.Remove(unitBase);

        //if is not only one base don't continue in code
        if (bases.Count != 1)
        {
            return;
        }

        // Debug.Log("GAME OVER!");
        int playerId = bases[0].connectionToClient.connectionId;

        RpcGameOver($"Player {playerId}");

        ServerOnGameOver?.Invoke();
    }
Пример #8
0
    void ServerHandleBaseDespawned(UnitBase unitBase)
    {
        //if (this == null) { return; }

        unitBases.Remove(unitBase);

        if (unitBases.Count != 1)
        {
            return;
        }

        int playerID = unitBases[0].connectionToClient.connectionId;

        RpcGameOver("Player " + playerID);

        ServerOnGameOver?.Invoke();
    }
Пример #9
0
    private void ServerHandleBaseDespawn(Base b)
    {
        bases.Remove(b);
        if (bases.Count != 1)
        {
            return;
        }

        // TODO: if you play twice in a row, game over manager exception here.
        // Not sure why, could be action event handlers aren't cleared properly.
        // Shouldn't be the case since scene is reloaded in between.

        string name = bases[0].connectionToClient.identity.GetComponent <Player>().GetDisplayName();

        RpcGameOver(name);

        ServerOnGameOver?.Invoke();
    }
Пример #10
0
    //Whenever A Base DeSpawned Remove Base From Bases List
    private void ServerHandleBaseDeSpawned(UnitBase unitBase)
    {
        bases.Remove(unitBase);

        if (bases.Count != 1)
        {
            return;
        }


        //Get Winner Id
        int playerId = bases[0].connectionToClient.connectionId;

        //Show Who Winned The Game
        RpcGameOver($"Player {playerId}");

        ServerOnGameOver?.Invoke();
    }
Пример #11
0
    private void ServerHandleBaseDespawned(UnitBase unitBase)
    {
        // workaround for GameOverHandler Destroyed But You Are Still Trying To Acces it
        // which occurs during the second playthrough. Note this seems to occur only if the host/client
        // destroy's the client base on the second playthrough.
        if (this == null)
        {
            return;
        }

        bases.Remove(unitBase);

        if (bases.Count != 1)
        {
            return;
        }

        int playerId = bases[0].connectionToClient.connectionId;

        RpcGameOver($"Player {playerId}");

        ServerOnGameOver?.Invoke();
    }