Ejemplo n.º 1
0
    public void EndTurnSupply()
    {
        Camp curCamp = BattleManager.Instance.CurCamp;

        //金币补给
        curCamp.AddCampGold(increaseGold);
        //人口补给
        leftPopulation += increasePopulation;
        //随机给兵,每回合随机补0~3个兵,有卡牌buff加持
        int extraSupplyUnit  = curCamp.hasCardBuff ? curCamp.CampBuffCardEffect.ExtraSupplyUnit : 0;
        int randomSupplyUnit = UnityEngine.Random.Range(0, 3) + extraSupplyUnit;

        //如果该地的剩余人口大于随机数,那么补随机数的兵,并扣除对应剩余人口
        if (leftPopulation >= randomSupplyUnit)
        {
            BattleUnit     += randomSupplyUnit;
            leftPopulation -= randomSupplyUnit;
        }
        //否则把该地补满(剩余人口不够随机出来的,补充最大人数)
        else
        {
            BattleUnit    += leftPopulation;
            leftPopulation = 0;
        }

        //最大军队数限制
        if (BattleUnit > maxBattleUnit)
        {
            leftPopulation += BattleUnit - maxBattleUnit;
            BattleUnit      = maxBattleUnit;
        }
        //人口上限
        if (leftPopulation > maxPopulation)
        {
            leftPopulation = maxPopulation;
        }
        BattleBaseUnitSupplyTip.SetImage(BattleManager.Instance.CurCamp.baseUnitSprite);
        BattleBaseUnitSupplyTip.ShowSelf();
    }
Ejemplo n.º 2
0
    /// <summary>
    /// 设置首都
    /// </summary>

    public void SetCapital(Camp CurCamp, Land land)
    {
        land.SetCapital();
        terrianMap.SetTile(land.CoordinateInMap, CapitalTile);
        CurCamp.AddCampGold(land.initalGold);
    }