"Gandalf's Wisdom"

This commit is contained in:
marcins78@gmail.com
2011-09-26 16:42:22 +00:00
parent fc9c1b2dcc
commit 48d8ac72e6
2 changed files with 49 additions and 6 deletions

View File

@@ -0,0 +1,43 @@
package com.gempukku.lotro.cards.set2.gandalf;
import com.gempukku.lotro.cards.AbstractPermanent;
import com.gempukku.lotro.common.*;
import com.gempukku.lotro.filters.Filters;
import com.gempukku.lotro.game.PhysicalCard;
import com.gempukku.lotro.game.state.GameState;
import com.gempukku.lotro.logic.modifiers.AbstractModifier;
import com.gempukku.lotro.logic.modifiers.Modifier;
import com.gempukku.lotro.logic.modifiers.ModifierEffect;
import com.gempukku.lotro.logic.modifiers.ModifiersQuerying;
/**
* Set: Mines of Moria
* Side: Free
* Culture: Gandalf
* Twilight Cost: 0
* Type: Condition
* Game Text: Plays to your support area. The twilight cost of each possession or artifact played on Gandalf or
* a character who has the Gandalf signet is -1.
*/
public class Card2_023 extends AbstractPermanent {
public Card2_023() {
super(Side.FREE_PEOPLE, 0, CardType.CONDITION, Culture.GANDALF, Zone.FREE_SUPPORT, "Gandalf's Wisdom");
}
@Override
public Modifier getAlwaysOnEffect(PhysicalCard self) {
return new AbstractModifier(self, "The twilight cost of each possession or artifact played on Gandalf or a character who has the Gandalf signet is -1",
Filters.or(
Filters.type(CardType.POSSESSION),
Filters.type(CardType.ARTIFACT)), new ModifierEffect[]{ModifierEffect.TWILIGHT_COST_MODIFIER}) {
@Override
public int getPlayOnTwilightCost(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard physicalCard, PhysicalCard target, int result) {
if (physicalCard.getBlueprint().getCardType() == CardType.POSSESSION || physicalCard.getBlueprint().getCardType() == CardType.ARTIFACT) {
if (target.getBlueprint().getName().equals("Gandalf") || target.getBlueprint().getSignet() == Signet.GANDALF)
return result - 1;
}
return result;
}
};
}
}

View File

@@ -75,32 +75,32 @@ public abstract class AbstractModifier implements Modifier {
}
@Override
public int getTwilightCost(GameState gameState, ModifiersQuerying modifiersLogic, PhysicalCard physicalCard, int result) {
public int getTwilightCost(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard physicalCard, int result) {
return result;
}
@Override
public int getPlayOnTwilightCost(GameState gameState, ModifiersQuerying modifiersLogic, PhysicalCard physicalCard, PhysicalCard target, int result) {
public int getPlayOnTwilightCost(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard physicalCard, PhysicalCard target, int result) {
return result;
}
@Override
public boolean isOverwhelmedByStrength(GameState gameState, ModifiersQuerying modifiersLogic, PhysicalCard physicalCard, int strength, int opposingStrength, boolean result) {
public boolean isOverwhelmedByStrength(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard physicalCard, int strength, int opposingStrength, boolean result) {
return result;
}
@Override
public boolean canTakeWound(GameState gameState, ModifiersQuerying modifiersLogic, PhysicalCard physicalCard, boolean result) {
public boolean canTakeWound(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard physicalCard, boolean result) {
return result;
}
@Override
public boolean isAllyOnCurrentSite(GameState gameState, ModifiersQuerying modifiersLogic, PhysicalCard card, boolean allyOnCurrentSite) {
public boolean isAllyOnCurrentSite(GameState gameState, ModifiersQuerying modifiersQuerying, PhysicalCard card, boolean allyOnCurrentSite) {
return allyOnCurrentSite;
}
@Override
public int getArcheryTotal(GameState gameState, ModifiersQuerying modifiersLogic, Side side, int result) {
public int getArcheryTotal(GameState gameState, ModifiersQuerying modifiersQuerying, Side side, int result) {
return result;
}