Great general provides bonus for nearby friendly land units.

This commit is contained in:
Duan Tao
2018-12-26 19:25:07 +08:00
parent 7478215353
commit 60f59fe2aa
2 changed files with 11 additions and 1 deletions

View File

@ -579,7 +579,7 @@
name:"Great General",
unbuildable:true,
unitType:"Civilian",
uniques:["Can start an 8-turn golden age","Bonus for landunits in 2 radius 15%"] //to do : should be able to build mega-fort
uniques:["Can start an 8-turn golden age","Bonus for land units in 2 radius 15%"] //to do : should be able to build mega-fort
movement:2
},

View File

@ -61,6 +61,16 @@ class BattleDamage{
if(requiredResource!=null && combatant.getCivilization().getCivResourcesByName()[requiredResource]!!<0){
modifiers["Missing resource"]=-0.25f
}
//to do : performance improvement
if (combatant.getUnitType().isLandUnit()) {
val nearbyCivUnits = combatant.unit.getTile().getTilesInDistance(2)
.filter {it.civilianUnit?.civInfo == combatant.unit.civInfo}
.map {it.civilianUnit}
if (nearbyCivUnits.any { it!!.hasUnique("Bonus for land units in 2 radius 15%") }) {
modifiers["Great general"]=0.25f
}
}
}
if (combatant.getCivilization().policies.isAdopted("Honor") && enemy.getCivilization().isBarbarianCivilization())