示例#1
0
    public void ReturnUnitsToEnemyData()
    {
        BattlefieldCommander enemyUnits = new BattlefieldCommander();

        if (TransitionManager.GetInstance.isPlayerAttacker)
        {
            enemyUnits = BattlefieldSpawnManager.GetInstance.defendingCommander;
        }
        else
        {
            enemyUnits = BattlefieldSpawnManager.GetInstance.attackingCommander;
        }


        if (TransitionManager.GetInstance.isEngagedWithTraveller)
        {
            if (!playerWon)
            {
                TransitionManager.GetInstance.attackedTravellerData.troopsCarried = new List <TroopsInformation>();
                TransitionManager.GetInstance.attackedTravellerData.troopsCarried.AddRange(enemyUnits.unitsCarried);
            }
            else
            {
                PlayerGameManager.GetInstance.campaignData.travellerList.Remove(TransitionManager.GetInstance.attackedTravellerData);
            }
        }
        else if (TransitionManager.GetInstance.isEngagedWithMapPoint)
        {
            enemyTerritoryName = TransitionManager.GetInstance.attackedPointInformationData.ownedBy;

            Debug.Log("[Victory While Engaged Against a Map Point]");
            if (!playerWon)
            {
                Debug.Log("[Map Point Still Has Troops Around: " + enemyUnits.CheckTotalTroopsCount() + "]");
                TransitionManager.GetInstance.attackedPointInformationData.troopsStationed = new List <TroopsInformation>();
                TransitionManager.GetInstance.attackedPointInformationData.troopsStationed.AddRange(enemyUnits.unitsCarried);

                TerritoryOwners pastOwner = TransitionManager.GetInstance.attackedPointInformationData.ownedBy;
                TransitionManager.GetInstance.attackedPointInformationData.previousOwner = pastOwner;
                TransitionManager.GetInstance.attackedPointInformationData.ownedBy       = enemyUnits.teamAffiliation;
            }
            else
            {
                TransitionManager.GetInstance.attackedPointInformationData.troopsStationed = new List <TroopsInformation>();

                TerritoryOwners pastOwner = TransitionManager.GetInstance.attackedPointInformationData.ownedBy;
                TransitionManager.GetInstance.attackedPointInformationData.previousOwner = pastOwner;

                TransitionManager.GetInstance.attackedPointInformationData.ownedBy = Maps.TerritoryOwners.Player;
            }
        }

        SaveLoadManager.GetInstance.SaveCurrentCampaignData();
    }
示例#2
0
    public void ShowBattleConditionPanel()
    {
        bool oneSideIsEmpty = false;

        if (attackingCommander.CheckTotalTroopsCount() <= 0)
        {
            oneSideIsEmpty = true;
        }
        else if (defendingCommander.CheckTotalTroopsCount() <= 0)
        {
            oneSideIsEmpty = true;
        }

        if (oneSideIsEmpty)
        {
            return;
        }

        gameConditionPanel.SetActive(true);
    }