Fixing fierce assignments.

This commit is contained in:
marcins78@gmail.com
2012-01-10 10:50:07 +00:00
parent 03b9e5e61e
commit ad8684bc7f
3 changed files with 8 additions and 14 deletions

View File

@@ -274,7 +274,13 @@ public class Filters {
}
}),
Filters.and(
CardType.MINION));
CardType.MINION,
new Filter() {
@Override
public boolean accepts(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard physicalCard) {
return (!gameState.isFierceSkirmishes()) || modifiersQuerying.hasKeyword(gameState, physicalCard, Keyword.FIERCE);
}
}));
return Filters.and(
assignableFilter,

View File

@@ -1,7 +1,6 @@
package com.gempukku.lotro.logic.timing.processes.turn.assign;
import com.gempukku.lotro.common.CardType;
import com.gempukku.lotro.common.Filterable;
import com.gempukku.lotro.common.Keyword;
import com.gempukku.lotro.common.Side;
import com.gempukku.lotro.filters.Filters;
@@ -38,13 +37,7 @@ public class FreePeoplePlayerAssignsMinionsGameProcess implements GameProcess {
protected void doPlayEffect(final LotroGame game) {
final GameState gameState = game.getGameState();
Filterable minionFilter = CardType.MINION;
if (gameState.isFierceSkirmishes())
minionFilter = Filters.and(
minionFilter,
Keyword.FIERCE);
final Collection<PhysicalCard> minions = Filters.filterActive(gameState, game.getModifiersQuerying(), minionFilter, Filters.assignableToSkirmish(Side.FREE_PEOPLE, true, false));
final Collection<PhysicalCard> minions = Filters.filterActive(gameState, game.getModifiersQuerying(), CardType.MINION, Filters.assignableToSkirmish(Side.FREE_PEOPLE, true, false));
if (minions.size() > 0) {
final Collection<PhysicalCard> freePeopleTargets =
Filters.filterActive(gameState, game.getModifiersQuerying(),

View File

@@ -1,7 +1,6 @@
package com.gempukku.lotro.logic.timing.processes.turn.assign;
import com.gempukku.lotro.common.CardType;
import com.gempukku.lotro.common.Keyword;
import com.gempukku.lotro.common.Side;
import com.gempukku.lotro.filters.Filter;
import com.gempukku.lotro.filters.Filters;
@@ -34,10 +33,6 @@ public class ShadowPlayerAssignsHisMinionsGameProcess implements GameProcess {
public void process(final LotroGame game) {
GameState gameState = game.getGameState();
Filter minionFilter = Filters.and(CardType.MINION, Filters.owner(_playerId), Filters.notAssignedToSkirmish);
if (gameState.isFierceSkirmishes())
minionFilter = Filters.and(
Keyword.FIERCE,
minionFilter);
final Collection<PhysicalCard> minions = Filters.filterActive(gameState, game.getModifiersQuerying(), minionFilter, Filters.assignableToSkirmish(Side.SHADOW, true, false));
if (minions.size() > 0) {