*Updated to triggers

Highland Berserker
	Joraga Bard
	Ondu Cleric
	Seascape Aerialist
	Turntimber Ranger
This commit is contained in:
jendave
2011-08-06 17:10:59 +00:00
parent cb10cedc92
commit 23c49e0d16
6 changed files with 17 additions and 123 deletions

View File

@@ -1,8 +1,10 @@
Name:Highland Berserker
ManaCost:1 R
Types:Creature Human Berserker Ally
Text:Whenever Highland Berserker or another Ally enters the battlefield under your control, you may have Ally creatures you control gain first strike until end of turn.
Text:no text
PT:2/1
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self,Ally.YouCtrl | TriggerZones$ Battlefield | Optional$ True | Execute$ TrigPump | TriggerDescription$ Whenever CARDNAME or another Ally enters the battlefield under your control, you may have Ally creatures you control gain first strike until end of turn.
SVar:TrigPump:AB$PumpAll | Cost$ 0 | ValidCards$ Ally.YouCtrl | KW$ First Strike
SVar:PlayMain1:TRUE
SVar:Rarity:Common
SVar:Picture:http://www.wizards.com/global/images/magic/general/highland_berserker.jpg

View File

@@ -1,8 +1,10 @@
Name:Joraga Bard
ManaCost:3 G
Types:Creature Elf Rogue Ally
Text:Whenever Joraga Bard or another Ally enters the battlefield under your control, you may have Ally creatures you control gain vigilance until end of turn.
Text:no text
PT:1/4
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self,Ally.YouCtrl | TriggerZones$ Battlefield | Optional$ True | Execute$ TrigPump | TriggerDescription$ Whenever CARDNAME or another Ally enters the battlefield under your control, you may have Ally creatures you control gain vigilance until end of turn.
SVar:TrigPump:AB$PumpAll | Cost$ 0 | ValidCards$ Ally.YouCtrl | KW$ Vigilance
SVar:PlayMain1:TRUE
SVar:Rarity:Common
SVar:Picture:http://www.wizards.com/global/images/magic/general/joraga_bard.jpg

View File

@@ -1,8 +1,11 @@
Name:Ondu Cleric
ManaCost:1 W
Types:Creature Kor Cleric Ally
Text:Whenever Ondu Cleric or another Ally enters the battlefield under your control, you may gain life equal to the number of Allies you control.
Text:no text
PT:1/1
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self,Ally.YouCtrl | TriggerZones$ Battlefield | Optional$ True | Execute$ TrigGainLife | TriggerDescription$ Whenever CARDNAME or another Ally enters the battlefield under your control, you may gain life equal to the number of Allies you control.
SVar:TrigGainLife:AB$GainLife | Cost$ 0 | Defined$ You | LifeAmount$ X
SVar:X:Count$Valid Ally.YouCtrl
SVar:PlayMain1:TRUE
SVar:Rarity:Common
SVar:Picture:http://www.wizards.com/global/images/magic/general/ondu_cleric.jpg

View File

@@ -1,8 +1,10 @@
Name:Seascape Aerialist
ManaCost:4 U
Types:Creature Merfolk Wizard Ally
Text:Whenever Seascape Aerialist or another Ally enters the battlefield under your control, you may have Ally creatures you control gain flying until end of turn.
Text:no text
PT:2/3
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self,Ally.YouCtrl | TriggerZones$ Battlefield | Optional$ True | Execute$ TrigPump | TriggerDescription$ Whenever CARDNAME or another Ally enters the battlefield under your control, you may have Ally creatures you control gain flying until end of turn.
SVar:TrigPump:AB$PumpAll | Cost$ 0 | ValidCards$ Ally.YouCtrl | KW$ Flying
SVar:PlayMain1:TRUE
SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/seascape_aerialist.jpg

View File

@@ -1,8 +1,11 @@
Name:Turntimber Ranger
ManaCost:3 G G
Types:Creature Elf Scout Ally
Text:Whenever Turntimber Ranger or another Ally enters the battlefield under your control, you may put a 2/2 green Wolf creature token onto the battlefield. If you do, put a +1/+1 counter on Turntimber Ranger.
Text:no text
PT:2/2
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self,Ally.YouCtrl | TriggerZones$ Battlefield | Optional$ True | Execute$ TrigToken | TriggerDescription$ Whenever CARDNAME or another Ally enters the battlefield under your control, you may put a 2/2 green Wolf creature token onto the battlefield. If you do, put a +1/+1 counter on CARDNAME.
SVar:TrigToken:AB$Token | Cost$ 0 | TokenAmount$ 1 | TokenName$ Wolf | TokenTypes$ Creature,Wolf | TokenOwner$ Controller | TokenColors$ Green | TokenPower$ 2 | TokenToughness$ 2 | SubAbility$SVar=DBPutCounter
SVar:DBPutCounter:DB$PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1
SVar:PlayMain1:TRUE
SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/turntimber_ranger.jpg

View File

@@ -3332,12 +3332,6 @@ public class GameActionUtil {
|| c.getName().equals("Tuktuk Grunts") || c.getName().equals("Umara Raptor")
|| c.getName().equals("Hada Freeblade") || c.getName().equals("Bojuka Brigand")
|| c.getName().equals("Graypelt Hunter")) ally_Generic_P1P1(c);
else if(c.getName().equals("Turntimber Ranger")) ally_Turntimber_Ranger(c);
else if(c.getName().equals("Highland Berserker")) ally_BoostUntilEOT(c, "First Strike");
else if(c.getName().equals("Joraga Bard")) ally_BoostUntilEOT(c, "Vigilance");
else if(c.getName().equals("Seascape Aerialist")) ally_BoostUntilEOT(c, "Flying");
else if(c.getName().equals("Ondu Cleric")) ally_Ondu_Cleric(c);
}
private static boolean showAllyDialog(Card c) {
@@ -3373,118 +3367,6 @@ public class GameActionUtil {
else if(c.getController().equals(AllZone.ComputerPlayer)) AllZone.Stack.add(ability);
}
private static void ally_Turntimber_Ranger(Card c) {
final Card crd = c;
Ability ability = new Ability(c, "0") {
@Override
public void resolve() {
CardFactoryUtil.makeToken("Wolf", "G 2 2 Wolf", crd.getController(), "G", new String[] {"Creature", "Wolf"}, 2, 2,
new String[] {""});
crd.addCounter(Counters.P1P1, 1);
}
};
StringBuilder sb = new StringBuilder();
sb.append(c.getName()).append(" - Ally: ").append(c.getController());
sb.append(" puts a 2/2 green Wolf creature token onto the battlefield, and adds a +1/+1 on ");
sb.append(c.getName()).append(".");
ability.setStackDescription(sb.toString());
if(c.getController().equals(AllZone.HumanPlayer)) {
if(showAllyDialog(c)) AllZone.Stack.add(ability);
}
else if(c.getController().equals(AllZone.ComputerPlayer)) {
PlayerZone cPlay = AllZone.Computer_Battlefield;
CardList list = new CardList();
list.addAll(cPlay.getCards());
CardList cl = list.filter(new CardListFilter() {
public boolean addCard(Card crd) {
return crd.getName().equals("Conspiracy") && crd.getChosenType().equals("Ally");
}
});
list = list.getName("Wolf");
if((list.size() > 15 && cl.size() > 0)) ;
else AllZone.Stack.add(ability);
}
}
private static void ally_BoostUntilEOT(Card c, String k) {
final Card crd = c;
final String keyword = k;
Ability ability = new Ability(c, "0") {
@Override
public void resolve() {
PlayerZone play = AllZone.getZone(Constant.Zone.Battlefield, crd.getController());
CardList list = new CardList(play.getCards());
list = list.getType("Ally");
final CardList allies = list;
final Command untilEOT = new Command() {
private static final long serialVersionUID = -8434529949884582940L;
public void execute() {
for(Card creat:allies) {
if(AllZone.GameAction.isCardInPlay(creat)) {
creat.removeExtrinsicKeyword(keyword);
}
}
}
};//Command
for(Card creat:allies) {
if(AllZone.GameAction.isCardInPlay(creat)) {
creat.addExtrinsicKeyword(keyword);
}
}
AllZone.EndOfTurn.addUntil(untilEOT);
}
};
StringBuilder sb = new StringBuilder();
sb.append(c.getName()).append(" - Ally: Ally creatures you control gain ");
sb.append(keyword).append(" until end of turn.");
ability.setStackDescription(sb.toString());
if(c.getController().equals(AllZone.HumanPlayer)) {
if(showAllyDialog(c)) AllZone.Stack.add(ability);
}
else if(c.getController().equals(AllZone.ComputerPlayer)) AllZone.Stack.add(ability);
}
private static void ally_Ondu_Cleric(final Card c) {
final Card crd = c;
Ability ability = new Ability(c, "0") {
@Override
public void resolve() {
PlayerZone play = AllZone.getZone(Constant.Zone.Battlefield, crd.getController());
CardList allies = new CardList(play.getCards());
allies = allies.getType("Ally");
crd.getController().gainLife(allies.size(), c);
}
};
StringBuilder sb = new StringBuilder();
sb.append(c.getName()).append(" - Ally: gain life equal to the number of allies you control.");
ability.setStackDescription(sb.toString());
if(c.getController().equals(AllZone.HumanPlayer)) {
if(showAllyDialog(c)) AllZone.Stack.add(ability);
}
else if(c.getController().equals(AllZone.ComputerPlayer)) AllZone.Stack.add(ability);
}
public static void executeDestroyCardEffects(Card c, Card destroyed) {
if(destroyed.isCreature()) executeDestroyCreatureCardEffects(c, destroyed);
if(destroyed.isLand()) executeDestroyLandCardEffects(c, destroyed);