mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-18 19:58:00 +00:00
Combat: fixed assigin damage more than once if damage got replaced
This commit is contained in:
@@ -5852,6 +5852,9 @@ public class Card extends GameEntity implements Comparable<Card> {
|
||||
damageToAdd = replaceDamage(damageToAdd, source, true);
|
||||
damageToAdd = preventDamage(damageToAdd, source, true);
|
||||
|
||||
if (damageToAdd > 0) {
|
||||
getDamageHistory().registerCombatDamage(source);
|
||||
}
|
||||
map.put(source, damageToAdd);
|
||||
}
|
||||
|
||||
|
||||
@@ -780,20 +780,7 @@ public class Combat {
|
||||
continue;
|
||||
}
|
||||
|
||||
final Map<Card, Integer> assignedDamageMap = c.getAssignedDamageMap();
|
||||
final Map<Card, Integer> damageMap = Maps.newHashMap();
|
||||
|
||||
for (final Entry<Card, Integer> entry : assignedDamageMap.entrySet()) {
|
||||
final Card crd = entry.getKey();
|
||||
c.getDamageHistory().registerCombatDamage(crd);
|
||||
damageMap.put(crd, entry.getValue());
|
||||
if (entry.getValue() > 0) {
|
||||
this.addDealtDamageTo(crd, c, entry.getValue());
|
||||
}
|
||||
}
|
||||
c.addCombatDamage(damageMap);
|
||||
|
||||
damageMap.clear();
|
||||
c.addCombatDamage(c.getAssignedDamageMap());
|
||||
c.clearAssignedDamage();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user