mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-17 11:18:01 +00:00
LKI for defenders (part 2 - final). Abu Ja'far now works as intended
This commit is contained in:
@@ -641,6 +641,10 @@ public class Combat {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public boolean isBlocking(Card blocker) {
|
public boolean isBlocking(Card blocker) {
|
||||||
|
if ( !blocker.isInPlay() ) {
|
||||||
|
CombatLki lki = lkiCache.get(blocker);
|
||||||
|
return null != lki && !lki.isAttacker; // was blocking something anyway
|
||||||
|
}
|
||||||
for (Collection<Card> blockers : blockedBands.values())
|
for (Collection<Card> blockers : blockedBands.values())
|
||||||
if (blockers.contains(blocker))
|
if (blockers.contains(blocker))
|
||||||
return true;
|
return true;
|
||||||
@@ -649,6 +653,10 @@ public class Combat {
|
|||||||
|
|
||||||
public boolean isBlocking(Card blocker, Card attacker) {
|
public boolean isBlocking(Card blocker, Card attacker) {
|
||||||
AttackingBand ab = getBandOfAttacker(attacker);
|
AttackingBand ab = getBandOfAttacker(attacker);
|
||||||
|
if ( !blocker.isInPlay() ) {
|
||||||
|
CombatLki lki = lkiCache.get(blocker);
|
||||||
|
return null != lki && !lki.isAttacker && lki.relatedBands.contains(ab); // was blocking that very band
|
||||||
|
}
|
||||||
Collection<Card> blockers = blockedBands.get(ab);
|
Collection<Card> blockers = blockedBands.get(ab);
|
||||||
return blockers != null && blockers.contains(blocker);
|
return blockers != null && blockers.contains(blocker);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user