- Fixed Vizier of the Anointed

This commit is contained in:
swordshine
2017-07-01 09:39:36 +00:00
parent ba8288155a
commit 6c104d2751
6 changed files with 7 additions and 57 deletions

View File

@@ -28,7 +28,6 @@ import forge.game.spellability.SpellAbility;
import forge.game.staticability.StaticAbility;
import forge.game.trigger.Trigger;
import forge.game.trigger.TriggerHandler;
import forge.game.trigger.TriggerType;
import forge.game.zone.ZoneType;
import forge.item.PaperCard;
import forge.util.Aggregates;
@@ -402,13 +401,6 @@ public class CopyPermanentEffect extends SpellAbilityEffect {
if (sa.hasParam("ImprintCopied")) {
hostCard.addImprintedCards(crds);
}
if (sa.hasParam("Embalm") || sa.hasParam("Eternalize")) {
// Trigger EmbalmOrEternalize!
final Map<String, Object> runParams = Maps.newHashMap();
runParams.put("Card", c);
runParams.put("Player", sa.getActivatingPlayer());
game.getTriggerHandler().runTrigger(TriggerType.EmbalmOrEternalize, runParams, false);
}
} // end canBeTargetedBy
} // end foreach Card
} // end resolve

View File

@@ -1,46 +0,0 @@
package forge.game.trigger;
import forge.game.card.Card;
import forge.game.spellability.SpellAbility;
import java.util.Map;
public class TriggerEmbalmOrEternalize extends Trigger {
public TriggerEmbalmOrEternalize(final java.util.Map<String, String> params, final Card host, final boolean intrinsic) {
super(params, host, intrinsic);
}
@Override
public boolean performTest(Map<String, Object> runParams2) {
if (this.mapParams.containsKey("ValidCard")) {
if (!matchesValid(runParams2.get("Card"), this.mapParams.get("ValidCard").split(","),
this.getHostCard())) {
return false;
}
}
if (this.mapParams.containsKey("ValidPlayer")) {
if (!matchesValid(runParams2.get("Player"), this.mapParams.get("ValidPlayer").split(","),
this.getHostCard())) {
return false;
}
}
return true;
}
@Override
public void setTriggeringObjects(SpellAbility sa) {
sa.setTriggeringObject("Card", this.getRunParams().get("Card"));
sa.setTriggeringObject("Player", this.getRunParams().get("Player"));
}
@Override
public String getImportantStackObjects(SpellAbility sa) {
StringBuilder sb = new StringBuilder();
sb.append("Card: ").append(sa.getTriggeringObject("Card"));
sb.append(" ");
sb.append("Player: ").append(sa.getTriggeringObject("Player"));
return sb.toString();
}
}

View File

@@ -178,6 +178,12 @@ public class TriggerSpellAbilityCast extends Trigger {
}
}
if (hasParam("EternalizeOrEmbalm")) {
if (!spellAbility.hasParam("Eternalize") && !spellAbility.hasParam("Embalm")) {
return false;
}
}
if (hasParam("IsSingleTarget")) {
Set<GameObject> targets = Sets.newHashSet();
for (TargetChoices tc : spellAbility.getAllTargetChoices()) {

View File

@@ -46,7 +46,6 @@ public enum TriggerType {
Devoured(TriggerDevoured.class),
Discarded(TriggerDiscarded.class),
Drawn(TriggerDrawn.class),
EmbalmOrEternalize(TriggerEmbalmOrEternalize.class),
Evolved(TriggerEvolved.class),
Exerted(TriggerExerted.class),
Exploited(TriggerExploited.class),