- Added AILogic to Wall of Reverence.

This commit is contained in:
Sloth
2012-06-14 15:54:20 +00:00
parent d40c323c6c
commit e2a92d6ca4
3 changed files with 15 additions and 5 deletions

View File

@@ -6,7 +6,7 @@ PT:1/6
K:Defender K:Defender
K:Flying K:Flying
T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDig | OptionalDecider$ You | TriggerDescription$ At the beginning of your end step, you may gain life equal to the power of target creature you control. T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDig | OptionalDecider$ You | TriggerDescription$ At the beginning of your end step, you may gain life equal to the power of target creature you control.
SVar:TrigDig:AB$ Pump | Cost$ 0 | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | SubAbility$ DBGainLife SVar:TrigDig:AB$ Pump | Cost$ 0 | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | AILogic$ HighestPower | SubAbility$ DBGainLife
SVar:DBGainLife:DB$GainLife | Cost$ 0 | Defined$ You | LifeAmount$ X SVar:DBGainLife:DB$GainLife | Cost$ 0 | Defined$ You | LifeAmount$ X
SVar:X:Targeted$CardPower SVar:X:Targeted$CardPower
SVar:Rarity:Rare SVar:Rarity:Rare

View File

@@ -26,6 +26,7 @@ import forge.AllZoneUtil;
import forge.Card; import forge.Card;
import forge.CardList; import forge.CardList;
import forge.CardListFilter; import forge.CardListFilter;
import forge.CardListUtil;
import forge.CardUtil; import forge.CardUtil;
import forge.Command; import forge.Command;
import forge.GameEntity; import forge.GameEntity;
@@ -791,8 +792,19 @@ public class AbilityFactoryPump {
final Target tgt = sa.getTarget(); final Target tgt = sa.getTarget();
tgt.resetTargets(); tgt.resetTargets();
CardList list; CardList list = new CardList();
if (this.abilityFactory.isCurse()) { if (this.abilityFactory.getMapParams().containsKey("AILogic")) {
if (this.abilityFactory.getMapParams().get("AILogic").equals("HighestPower")) {
list = AllZoneUtil.getCreaturesInPlay().getValidCards(tgt.getValidTgts(), sa.getActivatingPlayer(), sa.getSourceCard());
list = list.getTargetableCards(sa);
CardListUtil.sortAttack(list);
if (!list.isEmpty()) {
tgt.addTarget(list.get(0));
} else {
return false;
}
}
} else if (this.abilityFactory.isCurse()) {
list = this.getCurseCreatures(sa, defense, attack); list = this.getCurseCreatures(sa, defense, attack);
if (sa.canTarget(AllZone.getHumanPlayer())) { if (sa.canTarget(AllZone.getHumanPlayer())) {
tgt.addTarget(AllZone.getHumanPlayer()); tgt.addTarget(AllZone.getHumanPlayer());

View File

@@ -22,7 +22,6 @@ import forge.AllZoneUtil;
import forge.Card; import forge.Card;
import forge.CardList; import forge.CardList;
import forge.CardListFilter; import forge.CardListFilter;
import forge.CardListUtil;
import forge.Counters; import forge.Counters;
import forge.Singletons; import forge.Singletons;
import forge.card.spellability.Ability; import forge.card.spellability.Ability;
@@ -30,7 +29,6 @@ import forge.card.spellability.SpellAbility;
import forge.game.GameLossReason; import forge.game.GameLossReason;
import forge.game.player.Player; import forge.game.player.Player;
import forge.game.zone.ZoneType; import forge.game.zone.ZoneType;
import forge.gui.GuiUtils;
/** /**
* <p> * <p>