private void AttackVictory(Land attackLand, Land defenceLand) { int winLandLeftUnit = 0; //显示上重新绘制防守地块上的Tile BattleMap.ResetCampTile(defenceLand.CoordinateInMap, CurCamp.campTile); //从防守地块列表中删除该地块 CampDic[defenceLand.CampID].ownedLands.Remove(defenceLand); Cannon oldCannon = attackLand.cannon; //给攻下的这块地重新赋值,土遁:高炮转移术! winLandLeftUnit = attackLand.BattleUnit - 1; defenceLand.SetLandInfo(attackLand.CampID, winLandLeftUnit, oldCannon); //新地设置成有炮的tile //todo BattleMap.SetCannonTile(defenceLand.CoordinateInMap, CurCamp.cannonTile); //防守失败,卡牌有啥表示没? defenceLand.AfterFightCardEffect(BattleCardTriggerTime.DEFENCE_LOSE); //进攻成功,阵营有buff加成否? if (CurCamp.hasCardBuff && CurCamp.CampBuffCardEffect.VictoryCB != null) { CurCamp.CampBuffCardEffect.VictoryCB(defenceLand); } //进攻地块留守一个单位 attackLand.SetLandInfo(attackLand.CampID, 1, new Cannon()); //替换成没有炮的tile //todo BattleMap.SetCannonTile(attackLand.CoordinateInMap, null); //给进攻地块列表加上攻下的这块地 CurCamp.ownedLands.Add(defenceLand); }
private void DefenceVictory(Land attackLand) { //给进攻失败这块地重新赋值,我炮没了 attackLand.SetLandInfo(attackLand.CampID, 1, new Cannon()); //替换成没有炮的tile //todo BattleMap.SetCannonTile(attackLand.CoordinateInMap, null); //进攻失败,卡牌有啥表示没 attackLand.AfterFightCardEffect(BattleCardTriggerTime.ATTACK_LOSE); }