From 9978ec5264417da5e7791983b244f338d0520485 Mon Sep 17 00:00:00 2001 From: Yair Morgenstern Date: Sun, 8 Apr 2018 10:02:52 +0300 Subject: [PATCH] Added 15% flanking bonus when enemy is surrounded by more than one melee unit --- core/src/com/unciv/logic/battle/Battle.kt | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/core/src/com/unciv/logic/battle/Battle.kt b/core/src/com/unciv/logic/battle/Battle.kt index 244eaa472b..7b4bd2f746 100644 --- a/core/src/com/unciv/logic/battle/Battle.kt +++ b/core/src/com/unciv/logic/battle/Battle.kt @@ -1,13 +1,24 @@ package com.unciv.logic.battle import com.unciv.logic.GameInfo +import com.unciv.logic.map.UnitType import java.util.* import kotlin.collections.HashMap class Battle(val gameInfo:GameInfo) { fun getAttackModifiers(attacker: ICombatant, defender: ICombatant): HashMap { - return HashMap() + val modifiers = HashMap() + if(attacker.getCombatantType()==CombatantType.Melee) { + val numberOfAttackersSurroundingDefender = defender.getTile().neighbors.count { + it.unit != null + && it.unit!!.owner == attacker.getCivilization().civName + && it.unit!!.getBaseUnit().unitType == UnitType.Melee + } + if(numberOfAttackersSurroundingDefender >1) modifiers.put("Flanking",0.15f) + } + + return modifiers } fun getDefenceModifiers(attacker: ICombatant, defender: ICombatant): HashMap {