Fixing condition merges to ignore null conditions.

This commit is contained in:
marcins78@gmail.com
2012-01-10 11:34:17 +00:00
parent be9e9902c8
commit 87e34e6412
3 changed files with 3 additions and 3 deletions

View File

@@ -22,7 +22,7 @@ public class CantTakeMoreThanXWoundsModifier extends AbstractModifier {
public CantTakeMoreThanXWoundsModifier(PhysicalCard source, final Phase phase, int count, Condition condition, Filterable... affectFilters) {
super(source, "Can't take more than " + count + " wound(s)", Filters.and(affectFilters),
new AndCondition(new PhaseCondition(phase), condition), ModifierEffect.WOUND_MODIFIER);
(condition == null ? new PhaseCondition(phase) : new AndCondition(new PhaseCondition(phase), condition)), ModifierEffect.WOUND_MODIFIER);
_phase = phase;
_count = count;
}

View File

@@ -14,7 +14,7 @@ public class AndCondition implements Condition {
@Override
public boolean isFullfilled(GameState gameState, ModifiersQuerying modifiersQuerying) {
for (Condition condition : _conditions) {
if (!condition.isFullfilled(gameState, modifiersQuerying))
if (condition != null && !condition.isFullfilled(gameState, modifiersQuerying))
return false;
}

View File

@@ -14,7 +14,7 @@ public class OrCondition implements Condition {
@Override
public boolean isFullfilled(GameState gameState, ModifiersQuerying modifiersQuerying) {
for (Condition condition : _conditions) {
if (condition.isFullfilled(gameState, modifiersQuerying))
if (condition != null && condition.isFullfilled(gameState, modifiersQuerying))
return true;
}