diff --git a/android/assets/jsons/Civ V - Vanilla/Units.json b/android/assets/jsons/Civ V - Vanilla/Units.json index 20959bb497..bd9fd1ea21 100644 --- a/android/assets/jsons/Civ V - Vanilla/Units.json +++ b/android/assets/jsons/Civ V - Vanilla/Units.json @@ -1050,7 +1050,7 @@ "cost": 600, "requiredTech": "Nuclear Fission", "requiredResource": "Uranium", - "uniques": ["Nuclear weapon", "Requires [Manhattan Project]"] + "uniques": ["Nuclear weapon", "Requires [Manhattan Project]", "Self-destructs when attacking"] // Plane rather than a missile - can be based in city or Carrier only. But cannot be intercepted because of a civ 5 bug that was never fixed. // Single-use like missile // No strength/rangedStrength tags in civ 5 xmls. Instead has NukeDamageLevel = 1 tag (Nuclear Missile has NukeDamageLevel = 2) diff --git a/core/src/com/unciv/logic/battle/Battle.kt b/core/src/com/unciv/logic/battle/Battle.kt index 9b63654c92..3290d94fbc 100644 --- a/core/src/com/unciv/logic/battle/Battle.kt +++ b/core/src/com/unciv/logic/battle/Battle.kt @@ -32,7 +32,7 @@ object Battle { } } - if (attacker.getUnitType() == UnitType.Missile) { + if (attacker is MapUnitCombatant && attacker.unit.hasUnique("Nuclear weapon")) { return nuke(attacker, attackableTile.tileToAttack) } attack(attacker, getMapCombatantOfTile(attackableTile.tileToAttack)!!) @@ -86,7 +86,7 @@ object Battle { } if (attacker is MapUnitCombatant) { - if (attacker.getUnitType() == UnitType.Missile) + if (attacker.unit.hasUnique("Self-destructs when attacking")) attacker.unit.destroy() else if (attacker.unit.isMoving()) attacker.unit.action = null