mirror of
https://github.com/yairm210/Unciv.git
synced 2025-03-12 10:59:55 +07:00
More placeholder regex replacements
This commit is contained in:
parent
ceb456acab
commit
e0dcf25e23
@ -13,6 +13,8 @@ import com.unciv.logic.map.RoadStatus
|
|||||||
import com.unciv.logic.map.TileInfo
|
import com.unciv.logic.map.TileInfo
|
||||||
import com.unciv.models.AttackableTile
|
import com.unciv.models.AttackableTile
|
||||||
import com.unciv.models.ruleset.unit.UnitType
|
import com.unciv.models.ruleset.unit.UnitType
|
||||||
|
import com.unciv.models.translations.equalsPlaceholderText
|
||||||
|
import com.unciv.models.translations.getPlaceholderParameters
|
||||||
import java.util.*
|
import java.util.*
|
||||||
import kotlin.math.max
|
import kotlin.math.max
|
||||||
|
|
||||||
@ -147,12 +149,11 @@ object Battle {
|
|||||||
if (defender.isDefeated()
|
if (defender.isDefeated()
|
||||||
&& defender is MapUnitCombatant
|
&& defender is MapUnitCombatant
|
||||||
&& attacker is MapUnitCombatant) {
|
&& attacker is MapUnitCombatant) {
|
||||||
val regex = Regex(BattleDamage.HEAL_WHEN_KILL)
|
|
||||||
for (unique in attacker.unit.getUniques()) {
|
for (unique in attacker.unit.getUniques()) {
|
||||||
val match = regex.matchEntire(unique)
|
if(unique.equalsPlaceholderText("Heals [] damage if it kills a unit")){
|
||||||
if (match == null) continue
|
val amountToHeal = unique.getPlaceholderParameters()[0].toInt()
|
||||||
val amountToHeal = match.groups[1]!!.value.toInt()
|
attacker.unit.healBy(amountToHeal)
|
||||||
attacker.unit.healBy(amountToHeal)
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -21,8 +21,6 @@ class BattleDamageModifier(val vs:String,val modificationAmount:Float){
|
|||||||
object BattleDamage {
|
object BattleDamage {
|
||||||
|
|
||||||
const val BONUS_VS_UNIT_TYPE = """(Bonus|Penalty) vs (.*) (\d*)%"""
|
const val BONUS_VS_UNIT_TYPE = """(Bonus|Penalty) vs (.*) (\d*)%"""
|
||||||
const val BONUS_AS_ATTACKER = """Bonus as Attacker \[(\d*)]%"""
|
|
||||||
const val HEAL_WHEN_KILL = """Heals \[(\d*)] damage if it kills a unit"""
|
|
||||||
|
|
||||||
private fun getBattleDamageModifiersOfUnit(unit:MapUnit): MutableList<BattleDamageModifier> {
|
private fun getBattleDamageModifiersOfUnit(unit:MapUnit): MutableList<BattleDamageModifier> {
|
||||||
val modifiers = mutableListOf<BattleDamageModifier>()
|
val modifiers = mutableListOf<BattleDamageModifier>()
|
||||||
|
Loading…
Reference in New Issue
Block a user