"Orc Skulker"
This commit is contained in:
@@ -9,15 +9,15 @@ import com.gempukku.lotro.logic.modifiers.ModifierEffect;
|
||||
import com.gempukku.lotro.logic.modifiers.ModifiersQuerying;
|
||||
import com.gempukku.lotro.logic.timing.Action;
|
||||
|
||||
public class PlayerCantPlayPhaseEventsOrSpecialAbilitiesModifier extends AbstractModifier {
|
||||
public class PlayerCantPlayPhaseEventsOrPhaseSpecialAbilitiesModifier extends AbstractModifier {
|
||||
private String _playerId;
|
||||
private Phase _phase;
|
||||
|
||||
public PlayerCantPlayPhaseEventsOrSpecialAbilitiesModifier(PhysicalCard source, String playerId, Phase phase) {
|
||||
public PlayerCantPlayPhaseEventsOrPhaseSpecialAbilitiesModifier(PhysicalCard source, String playerId, Phase phase) {
|
||||
this(source, null, playerId, phase);
|
||||
}
|
||||
|
||||
public PlayerCantPlayPhaseEventsOrSpecialAbilitiesModifier(PhysicalCard source, Condition condition, String playerId, Phase phase) {
|
||||
public PlayerCantPlayPhaseEventsOrPhaseSpecialAbilitiesModifier(PhysicalCard source, Condition condition, String playerId, Phase phase) {
|
||||
super(source, null, null, condition, ModifierEffect.ACTION_MODIFIER);
|
||||
_playerId = playerId;
|
||||
_phase = phase;
|
||||
@@ -9,14 +9,14 @@ import com.gempukku.lotro.logic.modifiers.ModifierEffect;
|
||||
import com.gempukku.lotro.logic.modifiers.ModifiersQuerying;
|
||||
import com.gempukku.lotro.logic.timing.Action;
|
||||
|
||||
public class PlayersCantPlayPhaseEventsOrSpecialAbilitiesModifier extends AbstractModifier {
|
||||
public class PlayersCantPlayPhaseEventsOrPhaseSpecialAbilitiesModifier extends AbstractModifier {
|
||||
private Phase _phase;
|
||||
|
||||
public PlayersCantPlayPhaseEventsOrSpecialAbilitiesModifier(PhysicalCard source, Phase phase) {
|
||||
public PlayersCantPlayPhaseEventsOrPhaseSpecialAbilitiesModifier(PhysicalCard source, Phase phase) {
|
||||
this(source, null, phase);
|
||||
}
|
||||
|
||||
public PlayersCantPlayPhaseEventsOrSpecialAbilitiesModifier(PhysicalCard source, Condition condition, Phase phase) {
|
||||
public PlayersCantPlayPhaseEventsOrPhaseSpecialAbilitiesModifier(PhysicalCard source, Condition condition, Phase phase) {
|
||||
super(source, null, null, condition, ModifierEffect.ACTION_MODIFIER);
|
||||
_phase = phase;
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
package com.gempukku.lotro.cards.modifiers;
|
||||
|
||||
import com.gempukku.lotro.common.Filterable;
|
||||
import com.gempukku.lotro.common.Phase;
|
||||
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.Condition;
|
||||
import com.gempukku.lotro.logic.modifiers.ModifierEffect;
|
||||
import com.gempukku.lotro.logic.modifiers.ModifiersQuerying;
|
||||
import com.gempukku.lotro.logic.timing.Action;
|
||||
|
||||
public class PlayersCantUseCardPhaseSpecialAbilitiesModifier extends AbstractModifier {
|
||||
|
||||
private Phase _phase;
|
||||
private Filterable[] _sourceFilters;
|
||||
|
||||
public PlayersCantUseCardPhaseSpecialAbilitiesModifier(PhysicalCard source, Phase phase, Filterable... sourceFilters) {
|
||||
this(source, null, phase, sourceFilters);
|
||||
}
|
||||
|
||||
public PlayersCantUseCardPhaseSpecialAbilitiesModifier(PhysicalCard source, Condition condition, Phase phase, Filterable... sourceFilters) {
|
||||
super(source, null, null, condition, ModifierEffect.ACTION_MODIFIER);
|
||||
_phase = phase;
|
||||
_sourceFilters = sourceFilters;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean canPlayAction(GameState gameState, ModifiersQuerying modifiersQuerying, String performingPlayer, Action action) {
|
||||
if (action.getType() == Action.Type.SPECIAL_ABILITY
|
||||
&& action.getActionTimeword() == _phase
|
||||
&& Filters.and(_sourceFilters).accepts(gameState, modifiersQuerying, action.getActionSource()))
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -10,15 +10,15 @@ import com.gempukku.lotro.logic.modifiers.ModifierEffect;
|
||||
import com.gempukku.lotro.logic.modifiers.ModifiersQuerying;
|
||||
import com.gempukku.lotro.logic.timing.Action;
|
||||
|
||||
public class PlayersCantUseSpecialAbilitiesModifier extends AbstractModifier {
|
||||
public class PlayersCantUseCardSpecialAbilitiesModifier extends AbstractModifier {
|
||||
|
||||
private Filterable[] _sourceFilters;
|
||||
|
||||
public PlayersCantUseSpecialAbilitiesModifier(PhysicalCard source, Filterable... sourceFilters) {
|
||||
public PlayersCantUseCardSpecialAbilitiesModifier(PhysicalCard source, Filterable... sourceFilters) {
|
||||
this(source, null, sourceFilters);
|
||||
}
|
||||
|
||||
public PlayersCantUseSpecialAbilitiesModifier(PhysicalCard source, Condition condition, Filterable... sourceFilters) {
|
||||
public PlayersCantUseCardSpecialAbilitiesModifier(PhysicalCard source, Condition condition, Filterable... sourceFilters) {
|
||||
super(source, null, null, condition, ModifierEffect.ACTION_MODIFIER);
|
||||
_sourceFilters = sourceFilters;
|
||||
}
|
||||
@@ -6,7 +6,7 @@ import com.gempukku.lotro.cards.TriggerConditions;
|
||||
import com.gempukku.lotro.cards.actions.AttachPermanentAction;
|
||||
import com.gempukku.lotro.cards.effects.SelfDiscardEffect;
|
||||
import com.gempukku.lotro.cards.effects.choose.ChooseAndExertCharactersEffect;
|
||||
import com.gempukku.lotro.cards.modifiers.PlayersCantPlayPhaseEventsOrSpecialAbilitiesModifier;
|
||||
import com.gempukku.lotro.cards.modifiers.PlayersCantPlayPhaseEventsOrPhaseSpecialAbilitiesModifier;
|
||||
import com.gempukku.lotro.cards.modifiers.conditions.LocationCondition;
|
||||
import com.gempukku.lotro.common.*;
|
||||
import com.gempukku.lotro.filters.Filter;
|
||||
@@ -57,7 +57,7 @@ public class Card1_138 extends AbstractAttachable {
|
||||
|
||||
@Override
|
||||
public Modifier getAlwaysOnModifier(final PhysicalCard self) {
|
||||
return new PlayersCantPlayPhaseEventsOrSpecialAbilitiesModifier(self, new LocationCondition(Filters.hasAttached(self)), Phase.SKIRMISH);
|
||||
return new PlayersCantPlayPhaseEventsOrPhaseSpecialAbilitiesModifier(self, new LocationCondition(Filters.hasAttached(self)), Phase.SKIRMISH);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -3,7 +3,7 @@ package com.gempukku.lotro.cards.set1.site;
|
||||
import com.gempukku.lotro.cards.AbstractSite;
|
||||
import com.gempukku.lotro.cards.PlayConditions;
|
||||
import com.gempukku.lotro.cards.effects.AddUntilEndOfPhaseModifierEffect;
|
||||
import com.gempukku.lotro.cards.modifiers.PlayersCantPlayPhaseEventsOrSpecialAbilitiesModifier;
|
||||
import com.gempukku.lotro.cards.modifiers.PlayersCantPlayPhaseEventsOrPhaseSpecialAbilitiesModifier;
|
||||
import com.gempukku.lotro.common.Block;
|
||||
import com.gempukku.lotro.common.Keyword;
|
||||
import com.gempukku.lotro.common.Phase;
|
||||
@@ -86,11 +86,11 @@ public class Card1_363 extends AbstractSite {
|
||||
else
|
||||
_action.appendEffect(
|
||||
new AddUntilEndOfPhaseModifierEffect(
|
||||
new PlayersCantPlayPhaseEventsOrSpecialAbilitiesModifier(null, Phase.SHADOW), Phase.SHADOW));
|
||||
new PlayersCantPlayPhaseEventsOrPhaseSpecialAbilitiesModifier(null, Phase.SHADOW), Phase.SHADOW));
|
||||
} else {
|
||||
_action.appendEffect(
|
||||
new AddUntilEndOfPhaseModifierEffect(
|
||||
new PlayersCantPlayPhaseEventsOrSpecialAbilitiesModifier(null, Phase.SHADOW), Phase.SHADOW));
|
||||
new PlayersCantPlayPhaseEventsOrPhaseSpecialAbilitiesModifier(null, Phase.SHADOW), Phase.SHADOW));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package com.gempukku.lotro.cards.set17.uruk_hai;
|
||||
|
||||
import com.gempukku.lotro.cards.AbstractMinion;
|
||||
import com.gempukku.lotro.cards.modifiers.PlayersCantUseSpecialAbilitiesModifier;
|
||||
import com.gempukku.lotro.cards.modifiers.PlayersCantUseCardSpecialAbilitiesModifier;
|
||||
import com.gempukku.lotro.cards.modifiers.conditions.AndCondition;
|
||||
import com.gempukku.lotro.common.CardType;
|
||||
import com.gempukku.lotro.common.Culture;
|
||||
@@ -45,7 +45,7 @@ public class Card17_133 extends AbstractMinion {
|
||||
new SpotCondition(CardType.COMPANION, Keyword.HUNTER, Filters.inSkirmish)
|
||||
), CardType.EVENT, Keyword.SKIRMISH));
|
||||
modifiers.add(
|
||||
new PlayersCantUseSpecialAbilitiesModifier(self,
|
||||
new PlayersCantUseCardSpecialAbilitiesModifier(self,
|
||||
new SpotCondition(self, Filters.assignedToSkirmish), CardType.COMPANION, Keyword.HUNTER));
|
||||
return modifiers;
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@ package com.gempukku.lotro.cards.set18.gandalf;
|
||||
import com.gempukku.lotro.cards.AbstractPermanent;
|
||||
import com.gempukku.lotro.cards.PlayConditions;
|
||||
import com.gempukku.lotro.cards.effects.AddUntilStartOfPhaseModifierEffect;
|
||||
import com.gempukku.lotro.cards.modifiers.PlayersCantUseSpecialAbilitiesModifier;
|
||||
import com.gempukku.lotro.cards.modifiers.PlayersCantUseCardSpecialAbilitiesModifier;
|
||||
import com.gempukku.lotro.common.*;
|
||||
import com.gempukku.lotro.game.PhysicalCard;
|
||||
import com.gempukku.lotro.game.state.LotroGame;
|
||||
@@ -43,7 +43,7 @@ public class Card18_025 extends AbstractPermanent {
|
||||
protected void cardSelected(LotroGame game, PhysicalCard card) {
|
||||
action.appendEffect(
|
||||
new AddUntilStartOfPhaseModifierEffect(
|
||||
new PlayersCantUseSpecialAbilitiesModifier(self, card), Phase.REGROUP));
|
||||
new PlayersCantUseCardSpecialAbilitiesModifier(self, card), Phase.REGROUP));
|
||||
}
|
||||
});
|
||||
return Collections.singletonList(action);
|
||||
|
||||
@@ -5,7 +5,7 @@ import com.gempukku.lotro.cards.PlayConditions;
|
||||
import com.gempukku.lotro.cards.TriggerConditions;
|
||||
import com.gempukku.lotro.cards.effects.*;
|
||||
import com.gempukku.lotro.cards.effects.choose.ChooseAndExertCharactersEffect;
|
||||
import com.gempukku.lotro.cards.modifiers.PlayersCantUseSpecialAbilitiesModifier;
|
||||
import com.gempukku.lotro.cards.modifiers.PlayersCantUseCardSpecialAbilitiesModifier;
|
||||
import com.gempukku.lotro.common.Culture;
|
||||
import com.gempukku.lotro.common.Phase;
|
||||
import com.gempukku.lotro.common.Race;
|
||||
@@ -56,7 +56,7 @@ public class Card19_016 extends AbstractMinion {
|
||||
protected void forEachCardExertedCallback(PhysicalCard character) {
|
||||
action.appendEffect(
|
||||
new AddUntilStartOfPhaseModifierEffect(
|
||||
new PlayersCantUseSpecialAbilitiesModifier(self, character), Phase.REGROUP));
|
||||
new PlayersCantUseCardSpecialAbilitiesModifier(self, character), Phase.REGROUP));
|
||||
}
|
||||
});
|
||||
return Collections.singletonList(action);
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
package com.gempukku.lotro.cards.set20.sauron;
|
||||
|
||||
import com.gempukku.lotro.cards.AbstractMinion;
|
||||
import com.gempukku.lotro.cards.modifiers.PlayersCantUseCardPhaseSpecialAbilitiesModifier;
|
||||
import com.gempukku.lotro.cards.modifiers.conditions.CanSpotFPCulturesCondition;
|
||||
import com.gempukku.lotro.cards.modifiers.conditions.NotCondition;
|
||||
import com.gempukku.lotro.common.Culture;
|
||||
import com.gempukku.lotro.common.Phase;
|
||||
import com.gempukku.lotro.common.Race;
|
||||
import com.gempukku.lotro.filters.Filters;
|
||||
import com.gempukku.lotro.game.PhysicalCard;
|
||||
import com.gempukku.lotro.logic.modifiers.Modifier;
|
||||
|
||||
/**
|
||||
* 3
|
||||
* Orc Skulker
|
||||
* Sauron Minion • Orc
|
||||
* 10 3 6
|
||||
* While you cannot spot 3 Free Peoples cultures, characters skirmishing this minion may not use skirmish special abilities.
|
||||
*/
|
||||
public class Card20_370 extends AbstractMinion {
|
||||
public Card20_370() {
|
||||
super(3, 10, 3, 6, Race.ORC, Culture.SAURON, "Orc Skulker");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Modifier getAlwaysOnModifier(PhysicalCard self) {
|
||||
return new PlayersCantUseCardPhaseSpecialAbilitiesModifier(self,
|
||||
new NotCondition(new CanSpotFPCulturesCondition(self.getOwner(), 3)), Phase.SKIRMISH, Filters.character, Filters.inSkirmishAgainst(self));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user