public void doMarchOrder(LandTerritory passedTerritory) { if (attack) { if (passedTerritory.getOrderToken() is MarchOrder) { showMarchTroopPopup(passedTerritory); assignAttacker(passedTerritory); } } else { //main.PopupChooseMarchTroops.IsOpen = false; //has enemy troops if (passedTerritory.getNumKnight() > 0 || passedTerritory.getNumInfantry() > 0 && !(passedTerritory.getHouseOccupied().Equals(attacker.getHouseOccupied()))) { assignDefender(passedTerritory); } //Click on same territory to cancel attack else if (passedTerritory.Equals(attacker)) { CancelAttack(); } //Moving between friendly territories else if (passedTerritory.getHouseOccupied().Equals(attacker.getHouseOccupied())) { passedTerritory.setNumInfantry(passedTerritory.getNumInfantry() + getAttackingInfantry().Count); passedTerritory.setNumKnight(passedTerritory.getNumKnight() + getAttackingKnights().Count); attacker.setNumKnight(attacker.getNumKnight() - getAttackingKnights().Count); attacker.setNumInfantry(attacker.getNumInfantry() - getAttackingInfantry().Count); showMarchTroopPopup(attacker); } //Empty territory/has just a power token else { MoveToNewTerritory(passedTerritory); showMarchTroopPopup(attacker); } main.drawUnits.DrawIt(passedTerritory); main.drawUnits.DrawIt(attacker); } }
private void routeTroops(LandTerritory passedTerritory) { if (passedTerritory.Equals(attacker)) { //attacker lost } else { foreach (string s in passedTerritory.getConnections()) { if (main.resources.allLandConnections[s].getHouseOccupied().Equals(passedTerritory.getHouseOccupied()) || main.resources.allLandConnections[s].getHouseOccupied() is HouseNeutral) { main.resources.allLandConnections[s].getButton().IsEnabled = true; } } //defender lost main.takeTurn.disableButtons(passedTerritory.getHouseOccupied()); } }