convert Piston Sledge to script

This commit is contained in:
slapshot5
2012-01-29 20:51:45 +00:00
parent 355174ae5b
commit b21c798c83
2 changed files with 4 additions and 67 deletions

View File

@@ -1,7 +1,9 @@
Name:Piston Sledge
ManaCost:3
Types:Artifact Equipment
Text:When CARDNAME enters the battlefield, attach it to target creature you control.\r\n\r\nEquipped creature gets +3/+1.
Text:Equipped creature gets +3/+1.
T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigAttach | TriggerDescription$ When CARDNAME enters the battlefield, attach it to target creature you control.
SVar:TrigAttach:AB$ Attach | Cost$ 0 | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control
K:eqPump Sac<1/Artifact>:+3/+1
SVar:RemAIDeck:True
SVar:Rarity:Uncommon

View File

@@ -21,7 +21,6 @@ import java.util.ArrayList;
import forge.AllZone;
import forge.AllZoneUtil;
import forge.ButtonUtil;
import forge.Card;
import forge.CardList;
import forge.CardListFilter;
@@ -30,19 +29,16 @@ import forge.Command;
import forge.Constant;
import forge.Counters;
import forge.PhaseHandler;
import forge.PlayerZone;
import forge.card.cost.Cost;
import forge.card.spellability.Ability;
import forge.card.spellability.AbilityActivated;
import forge.card.spellability.SpellAbility;
import forge.card.spellability.Target;
import forge.card.trigger.Trigger;
import forge.card.trigger.TriggerHandler;
import forge.gui.input.Input;
/**
* <p>
* CardFactory_Equipment class.
* CardFactoryEquipment class.
* </p>
*
* @author Forge
@@ -325,67 +321,6 @@ class CardFactoryEquipment {
card.addTrigger(myTrigger);
} // *************** END ************ END **************************
// *************** START *********** START **************************
else if (cardName.equals("Piston Sledge")) {
final CardList targets = new CardList();
final SpellAbility comesIntoPlayAbility = new Ability(card, "0") {
@Override
public void resolve() {
if (!targets.isEmpty()) {
card.equipCard(targets.get(0));
}
} // resolve()
}; // comesIntoPlayAbility
final Input in = new Input() {
private static final long serialVersionUID = 1782826197612459365L;
@Override
public void showMessage() {
final CardList list = AllZoneUtil.getCreaturesInPlay(card.getController());
final StringBuilder sb = new StringBuilder();
sb.append(card).append(" - Select target creature you control to attach");
AllZone.getDisplay().showMessage(sb.toString());
ButtonUtil.disableAll();
if (list.size() == 0) {
this.stop();
}
}
@Override
public void selectCard(final Card c, final PlayerZone z) {
if (z.is(Constant.Zone.Battlefield, card.getController()) && c.isCreature()
&& c.canBeTargetedBy(comesIntoPlayAbility)) {
targets.add(c);
this.stop();
}
}
};
final Command intoPlay = new Command() {
private static final long serialVersionUID = 2985015252466920757L;
@Override
public void execute() {
final StringBuilder sb = new StringBuilder();
sb.append("When Piston Sledge enters the battlefield, ");
sb.append("attach it to target creature you control.");
comesIntoPlayAbility.setStackDescription(sb.toString());
AllZone.getInputControl().setInput(in);
AllZone.getStack().addSimultaneousStackEntry(comesIntoPlayAbility);
}
};
card.addComesIntoPlayCommand(intoPlay);
} // *************** END ************ END **************************
if (CardFactoryEquipment.shouldEquip(card) != -1) {
final int n = CardFactoryEquipment.shouldEquip(card);
if (n != -1) {