*Added a way to suppress all Replacement Effects of a card.

This commit is contained in:
Hellfish
2012-01-29 17:50:47 +00:00
parent a7f583b693
commit b848e6255c

View File

@@ -39,6 +39,16 @@ public class ReplacementHandler {
private List<ReplacementEffect> tmpEffects = new ArrayList<ReplacementEffect>();
private List<Card> suppressedCards = new ArrayList<Card>();
public void suppressCard(Card c) {
suppressedCards.add(c);
}
public void clearCardSuppression(Card c) {
suppressedCards.remove(c);
}
/**
*
* Runs any applicable replacement effects.
@@ -68,6 +78,9 @@ public class ReplacementHandler {
//Round up Static replacement effects
for (Player p : AllZone.getPlayersInGame()) {
for (Card crd : p.getCardsIn(Zone.Battlefield)) {
if(suppressedCards.contains(crd)) {
continue;
}
for (ReplacementEffect replacementEffect : crd.getReplacementEffects()) {
if (replacementEffect.requirementsCheck()) {
if (!replacementEffect.hasRun() && replacementEffect.canReplace(runParams)) {