"Eastern Emyn Muil"

This commit is contained in:
marcins78
2013-02-13 12:07:52 +00:00
parent ded0b0b7f5
commit 3fac1cdf44
2 changed files with 43 additions and 15 deletions

View File

@@ -2,7 +2,6 @@ package com.gempukku.lotro.cards.set20.site;
import com.gempukku.lotro.cards.AbstractSite;
import com.gempukku.lotro.cards.PlayConditions;
import com.gempukku.lotro.cards.effects.AddUntilEndOfTurnModifierEffect;
import com.gempukku.lotro.cards.modifiers.MoveLimitModifier;
import com.gempukku.lotro.common.Block;
import com.gempukku.lotro.common.CardType;
@@ -12,9 +11,7 @@ import com.gempukku.lotro.game.PhysicalCard;
import com.gempukku.lotro.game.state.LotroGame;
import com.gempukku.lotro.logic.actions.RequiredTriggerAction;
import com.gempukku.lotro.logic.timing.EffectResult;
import com.gempukku.lotro.logic.timing.UnrespondableEffect;
import java.util.Collections;
import java.util.List;
/**
@@ -33,18 +30,9 @@ public class Card20_431 extends AbstractSite {
@Override
public List<RequiredTriggerAction> getRequiredAfterTriggers(LotroGame game, EffectResult effectResult, final PhysicalCard self) {
if (self.getWhileInZoneData() == null && PlayConditions.canSpot(game, CardType.COMPANION, Filters.mounted)) {
RequiredTriggerAction action = new RequiredTriggerAction(self);
action.appendEffect(
new UnrespondableEffect() {
@Override
protected void doPlayEffect(LotroGame game) {
self.setWhileInZoneData(new Object());
}
});
action.appendEffect(
new AddUntilEndOfTurnModifierEffect(
new MoveLimitModifier(self, 1)));
return Collections.singletonList(action);
self.setWhileInZoneData(new Object());
game.getModifiersEnvironment().addUntilEndOfTurnModifier(
new MoveLimitModifier(self, 1));
}
return null;
}

View File

@@ -0,0 +1,40 @@
package com.gempukku.lotro.cards.set20.site;
import com.gempukku.lotro.cards.AbstractSite;
import com.gempukku.lotro.cards.modifiers.CantReplaceSiteModifier;
import com.gempukku.lotro.common.Block;
import com.gempukku.lotro.common.CardType;
import com.gempukku.lotro.common.Keyword;
import com.gempukku.lotro.common.Zone;
import com.gempukku.lotro.filters.Filters;
import com.gempukku.lotro.game.PhysicalCard;
import com.gempukku.lotro.game.state.LotroGame;
import com.gempukku.lotro.logic.GameUtils;
import com.gempukku.lotro.logic.actions.RequiredTriggerAction;
import com.gempukku.lotro.logic.timing.EffectResult;
import java.util.List;
/**
* Eastern Emyn Muil
* 4 4
* Mountain.
* Until the end of the game, sites in this region may not be replaced.
*/
public class Card20_435 extends AbstractSite {
public Card20_435() {
super("Eastern Emyn Muil", Block.SECOND_ED, 4, 4, null);
addKeyword(Keyword.MOUNTAIN);
}
@Override
public List<RequiredTriggerAction> getRequiredAfterTriggers(LotroGame game, EffectResult effectResult, PhysicalCard self) {
if (self.getWhileInZoneData() == null) {
int region = GameUtils.getRegion(self.getSiteNumber());
self.setWhileInZoneData(new Object());
game.getModifiersEnvironment().addAlwaysOnModifier(
new CantReplaceSiteModifier(self, null, Filters.and(CardType.SITE, Zone.ADVENTURE_PATH, Filters.region(region))));
}
return null;
}
}