mirror of
https://github.com/yairm210/Unciv.git
synced 2025-09-23 03:23:17 -04:00
Add damage dealing unit trigger (#10720)
* Add damage dealing unit trigger * Switch Heal/Damage uniques to only allow positive amounts
This commit is contained in:
parent
023b2959af
commit
93b89e1922
@ -3,6 +3,7 @@ package com.unciv.models.ruleset.unique
|
||||
import com.badlogic.gdx.math.Vector2
|
||||
import com.unciv.Constants
|
||||
import com.unciv.UncivGame
|
||||
import com.unciv.logic.battle.MapUnitCombatant
|
||||
import com.unciv.logic.city.City
|
||||
import com.unciv.logic.civilization.CivFlags
|
||||
import com.unciv.logic.civilization.Civilization
|
||||
@ -770,6 +771,12 @@ object UniqueTriggerActivation {
|
||||
unit.civ.addNotification(notification, unit.getTile().position, NotificationCategory.Units) // Do we have a heal icon?
|
||||
return true
|
||||
}
|
||||
UniqueType.OneTimeUnitDamage -> {
|
||||
MapUnitCombatant(unit).takeDamage(unique.params[0].toInt())
|
||||
if (notification != null)
|
||||
unit.civ.addNotification(notification, unit.getTile().position, NotificationCategory.Units) // Do we have a heal icon?
|
||||
return true
|
||||
}
|
||||
UniqueType.OneTimeUnitGainXP -> {
|
||||
if (!unit.baseUnit.isMilitary()) return false
|
||||
unit.promotions.XP += unique.params[0].toInt()
|
||||
|
@ -728,7 +728,8 @@ enum class UniqueType(
|
||||
OneTimeGlobalAlert("Triggers the following global alert: [comment]", UniqueTarget.Triggerable), // used in Policy
|
||||
OneTimeGlobalSpiesWhenEnteringEra("Every major Civilization gains a spy once a civilization enters this era", UniqueTarget.Era),
|
||||
|
||||
OneTimeUnitHeal("Heal this unit by [amount] HP", UniqueTarget.UnitTriggerable),
|
||||
OneTimeUnitHeal("Heal this unit by [positiveAmount] HP", UniqueTarget.UnitTriggerable),
|
||||
OneTimeUnitDamage("This Unit takes [positiveAmount] damage", UniqueTarget.UnitTriggerable),
|
||||
OneTimeUnitGainXP("This Unit gains [amount] XP", UniqueTarget.UnitTriggerable),
|
||||
OneTimeUnitUpgrade("This Unit upgrades for free", UniqueTarget.UnitTriggerable), // Not used in Vanilla
|
||||
OneTimeUnitSpecialUpgrade("This Unit upgrades for free including special upgrades", UniqueTarget.UnitTriggerable),
|
||||
|
Loading…
x
Reference in New Issue
Block a user