* Fix interface (when a creature has trample and exactly one blocker,
  show the damage assignation screen)
This commit is contained in:
jean.chalard
2009-09-24 00:56:32 +00:00
parent 6557c64bc0
commit 8d6f3567ed
+3 -1
View File
@@ -480,7 +480,9 @@ int GuiCombat::receiveEventMinus(WEvent* e)
for (inner_iterator attacker = attackers.begin(); attacker != attackers.end(); ++attacker) for (inner_iterator attacker = attackers.begin(); attacker != attackers.end(); ++attacker)
autoaffectDamage(*attacker, step); autoaffectDamage(*attacker, step);
for (inner_iterator it = attackers.begin(); it != attackers.end(); ++it) for (inner_iterator it = attackers.begin(); it != attackers.end(); ++it)
(*it)->show = ((*it)->card->has(Constants::DOUBLESTRIKE) || ((*it)->card->has(Constants::FIRSTSTRIKE) ^ (DAMAGE == step))) && (1 < (*it)->blockers.size()); (*it)->show = ((*it)->card->has(Constants::DOUBLESTRIKE) || ((*it)->card->has(Constants::FIRSTSTRIKE) ^ (DAMAGE == step))) &&
(((*it)->card->has(Constants::TRAMPLE) ? 0 : 1) < (*it)->blockers.size()
);
repos<AttackerDamaged>(attackers.begin(), attackers.end(), 0); repos<AttackerDamaged>(attackers.begin(), attackers.end(), 0);
active = NULL; active = NULL;
for (inner_iterator it = attackers.begin(); it != attackers.end(); ++it) if ((*it)->show) { active = *it; break; } for (inner_iterator it = attackers.begin(); it != attackers.end(); ++it) if ((*it)->show) { active = *it; break; }