*Added AbilityFactory_Token.

*Converted Acorn Harvest,Beast Attack,Call of the Herd,Carrion Call,Chatter of the Squirrel,Crush of Wurms,Dragon Fodder,Elephant Ambush,Empty the Warrens,Feral Lightning,Goblin Offensive,Goblin Scouts,Howl of the Night Pack,Hunting Pack,Icatian Town,Join the Ranks,Ordered Migration,Raise the Alarm,Reach of Branches,Roar of the Wurm,Skittering Invasion,Sosuke's Summons,Sound the Call,Spectral Procession,Spontaneous Generation,Spore Burst,Sprout,Storm Herd,Tidal Wave and Waylay.
This commit is contained in:
jendave
2011-08-06 10:36:34 +00:00
parent 4ef25a34d3
commit c9ceff16cd
33 changed files with 303 additions and 30 deletions

1
.gitattributes vendored
View File

@@ -5626,6 +5626,7 @@ src/forge/AbilityFactory_Fetch.java -text svneol=native#text/plain
src/forge/AbilityFactory_PermanentState.java -text svneol=native#text/plain src/forge/AbilityFactory_PermanentState.java -text svneol=native#text/plain
src/forge/AbilityFactory_Pump.java -text svneol=native#text/plain src/forge/AbilityFactory_Pump.java -text svneol=native#text/plain
src/forge/AbilityFactory_Regenerate.java -text svneol=native#text/plain src/forge/AbilityFactory_Regenerate.java -text svneol=native#text/plain
src/forge/AbilityFactory_Token.java -text svneol=native#text/plain
src/forge/AbilityFactory_ZoneAffecting.java -text svneol=native#text/plain src/forge/AbilityFactory_ZoneAffecting.java -text svneol=native#text/plain
src/forge/Ability_Activated.java svneol=native#text/plain src/forge/Ability_Activated.java svneol=native#text/plain
src/forge/Ability_Cost.java -text svneol=native#text/plain src/forge/Ability_Cost.java -text svneol=native#text/plain

View File

@@ -2,7 +2,8 @@ Name:Acorn Harvest
ManaCost:3 G ManaCost:3 G
Types:Sorcery Types:Sorcery
Text:Put two 1/1 green Squirrel creature tokens onto the battlefield. Text:Put two 1/1 green Squirrel creature tokens onto the battlefield.
K:spMakeToken<>2<>Squirrel<>G 1 1 Squirrel<>Controller<>G<>Creature;Squirrel<>1<>1<>None #K:spMakeToken<>2<>Squirrel<>G 1 1 Squirrel<>Controller<>G<>Creature;Squirrel<>1<>1<>None
A:SP$Token|Cost$3 G|TokenAmount$2|TokenName$Squirrel|TokenTypes$Creature,Squirrel|TokenOwner$Controller|TokenColors$Green|TokenPower$1|TokenToughness$1
K:Flashback:1 G,3 K:Flashback:1 G,3
SVar:Rarity:Common SVar:Rarity:Common
SVar:Picture:http://www.wizards.com/global/images/magic/general/acorn_harvest.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/acorn_harvest.jpg

View File

@@ -2,7 +2,8 @@ Name:Beast Attack
ManaCost:2 G G G ManaCost:2 G G G
Types:Instant Types:Instant
Text:Put a 4/4 green Beast creature token onto the battlefield. Text:Put a 4/4 green Beast creature token onto the battlefield.
K:spMakeToken<>1<>Beast<>G 4 4 Beast<>Controller<>G<>Creature;Beast<>4<>4<>None #K:spMakeToken<>1<>Beast<>G 4 4 Beast<>Controller<>G<>Creature;Beast<>4<>4<>None
A:SP$Token|Cost$2 G G G|TokenAmount$1|TokenName$Beast|TokenTypes$Creature,Beast|TokenColors$Green|TokenOwner$Controller|TokenPower$4|TokenToughness$4
K:Flashback:2 G G G K:Flashback:2 G G G
SVar:Rarity:Uncommon SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/beast_attack.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/beast_attack.jpg

View File

@@ -2,7 +2,8 @@ Name:Call of the Herd
ManaCost:2 G ManaCost:2 G
Types:Sorcery Types:Sorcery
Text:Put a 3/3 green Elephant creature token onto the battlefield. Text:Put a 3/3 green Elephant creature token onto the battlefield.
K:spMakeToken<>1<>Elephant<>G 3 3 Elephant<>Controller<>G<>Creature;Elephant<>3<>3<>None #K:spMakeToken<>1<>Elephant<>G 3 3 Elephant<>Controller<>G<>Creature;Elephant<>3<>3<>None
A:SP$Token|Cost$2 G|TokenAmount$1|TokenName$Elephant|TokenTypes$Creature,Elephant|TokenColors$Green|TokenPower$3|TokenToughness$3|TokenOwner$Controller
K:Flashback:3 G K:Flashback:3 G
SVar:Rarity:Rare SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/call_of_the_herd.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/call_of_the_herd.jpg

View File

@@ -2,7 +2,8 @@ Name:Carrion Call
ManaCost:3 G ManaCost:3 G
Types:Instant Types:Instant
Text:Put two 1/1 green Insect creature tokens with infect onto the battlefield. Text:Put two 1/1 green Insect creature tokens with infect onto the battlefield.
K:spMakeToken<>2<>Insect<>G 1 1 Insect<>Controller<>G<>Creature;Insect<>1<>1<>Infect #K:spMakeToken<>2<>Insect<>G 1 1 Insect<>Controller<>G<>Creature;Insect<>1<>1<>Infect
A:SP$Token|Cost$3 G|TokenAmount$2|TokenName$Insect|TokenTypes$Creature,Insect|TokenOwner$Controller|TokenColors$Green|TokenPower$1|TokenToughness$1|TokenKeywords$Infect
SVar:Rarity:Uncommon SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/carrion_call.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/carrion_call.jpg
End End

View File

@@ -2,7 +2,8 @@ Name:Chatter of the Squirrel
ManaCost:G ManaCost:G
Types:Sorcery Types:Sorcery
Text:Put a 1/1 green Squirrel creature token onto the battlefield. Text:Put a 1/1 green Squirrel creature token onto the battlefield.
K:spMakeToken<>1<>Squirrel<>G 1 1 Squirrel<>Controller<>G<>Creature;Squirrel<>1<>1<>None #K:spMakeToken<>1<>Squirrel<>G 1 1 Squirrel<>Controller<>G<>Creature;Squirrel<>1<>1<>None
A:SP$Token|Cost$G|TokenAmount$1|TokenName$Squirrel|TokenColors$Green|TokenTypes$Creature,Squirrel|TokenOwner$Controller|TokenPower$1|TokenToughness$1
K:Flashback:1 G K:Flashback:1 G
SVar:Rarity:Common SVar:Rarity:Common
SVar:Picture:http://www.wizards.com/global/images/magic/general/chatter_of_the_squirrel.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/chatter_of_the_squirrel.jpg

View File

@@ -2,7 +2,8 @@ Name:Crush of Wurms
ManaCost:6 G G G ManaCost:6 G G G
Types:Sorcery Types:Sorcery
Text:Put three 6/6 green Wurm creature tokens onto the battlefield. Text:Put three 6/6 green Wurm creature tokens onto the battlefield.
K:spMakeToken<>3<>Wurm<>G 6 6 Wurm<>Controller<>G<>Creature;Wurm<>6<>6<>None #K:spMakeToken<>3<>Wurm<>G 6 6 Wurm<>Controller<>G<>Creature;Wurm<>6<>6<>None
A:SP$Token|Cost$6 G G G|TokenAmount$3|TokenName$Wurm|TokenColors$Green|TokenTypes$Creature,Wurm|TokenOwner$Controller|TokenPower$6|TokenToughness$6
K:Flashback:9 G G G K:Flashback:9 G G G
SVar:Rarity:Rare SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/crush_of_wurms.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/crush_of_wurms.jpg

View File

@@ -2,7 +2,8 @@ Name:Dragon Fodder
ManaCost:1 R ManaCost:1 R
Types:Sorcery Types:Sorcery
Text:Put two 1/1 red Goblin creature tokens onto the battlefield. Text:Put two 1/1 red Goblin creature tokens onto the battlefield.
K:spMakeToken<>2<>Goblin<>R 1 1 Goblin<>Controller<>R<>Creature;Goblin<>1<>1<>None #K:spMakeToken<>2<>Goblin<>R 1 1 Goblin<>Controller<>R<>Creature;Goblin<>1<>1<>None
A:SP$Token|Cost$1 R|TokenAmount$2|TokenName$Goblin|TokenTypes$Creature,Goblin|TokenOwner$Controller|TokenColors$Red|TokenPower$1|TokenToughness$1
SVar:Rarity:Common SVar:Rarity:Common
SVar:Picture:http://www.wizards.com/global/images/magic/general/dragon_fodder.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/dragon_fodder.jpg
End End

View File

@@ -2,7 +2,8 @@ Name:Elephant Ambush
ManaCost:2 G G ManaCost:2 G G
Types:Instant Types:Instant
Text:Put a 3/3 green Elephant creature token onto the battlefield. Text:Put a 3/3 green Elephant creature token onto the battlefield.
K:spMakeToken<>1<>Elephant<>G 3 3 Elephant<>Controller<>G<>Creature;Elephant<>3<>3<>None #K:spMakeToken<>1<>Elephant<>G 3 3 Elephant<>Controller<>G<>Creature;Elephant<>3<>3<>None
A:SP$Token|Cost$2 G G|TokenAmount$1|TokenName$Elephant|TokenTypes$Creature,Elephant|TokenOwner$Controller|TokenColors$Green|TokenPower$3|TokenToughness$3
K:Flashback:6 G G K:Flashback:6 G G
SVar:Rarity:Common SVar:Rarity:Common
SVar:Picture:http://www.wizards.com/global/images/magic/general/elephant_ambush.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/elephant_ambush.jpg

View File

@@ -2,7 +2,8 @@ Name:Empty the Warrens
ManaCost:3 R ManaCost:3 R
Types:Sorcery Types:Sorcery
Text:Put two 1/1 red Goblin creature tokens into play. Text:Put two 1/1 red Goblin creature tokens into play.
K:spMakeToken<>2<>Goblin<>R 1 1 Goblin<>Controller<>R<>Creature;Goblin<>1<>1<>None #K:spMakeToken<>2<>Goblin<>R 1 1 Goblin<>Controller<>R<>Creature;Goblin<>1<>1<>None
A:SP$Token|Cost$3 R|TokenAmount$2|TokenName$Goblin|TokenTypes$Creature,Goblin|TokenOwner$Controller|TokenColors$Red|TokenPower$1|TokenToughness$1
K:Storm K:Storm
SVar:Rarity:Common SVar:Rarity:Common
SVar:Picture:http://www.wizards.com/global/images/magic/general/empty_the_warrens.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/empty_the_warrens.jpg

View File

@@ -2,7 +2,8 @@ Name:Feral Lightning
ManaCost:3 R R R ManaCost:3 R R R
Types:Sorcery Types:Sorcery
Text:Put three 3/1 red Elemental creature tokens with haste into play. Remove them from the game at end of turn. Text:Put three 3/1 red Elemental creature tokens with haste into play. Remove them from the game at end of turn.
K:spMakeToken<>3<>Elemental<>R 3 1 Elemental<>Controller<>R<>Creature;Elemental<>3<>1<>Haste;At the beginning of the end step, exile CARDNAME. #K:spMakeToken<>3<>Elemental<>R 3 1 Elemental<>Controller<>R<>Creature;Elemental<>3<>1<>Haste;At the beginning of the end step, exile CARDNAME.
A:SP$Token|Cost$3 R R R|TokenAmount$3|TokenName$Elemental|TokenTypes$Creature,Elemental|TokenOwner$Controller|TokenColors$Red|TokenPower$3|TokenToughness$1|TokenKeywords$Haste<>At the beginning of the end step, exile CARDNAME.
SVar:PlayMain1:TRUE SVar:PlayMain1:TRUE
SVar:Rarity:Uncommon SVar:Rarity:Uncommon
SVar:Picture:http://resources.wizards.com/magic/cards/sok/en-us/card84373.jpg SVar:Picture:http://resources.wizards.com/magic/cards/sok/en-us/card84373.jpg

View File

@@ -2,7 +2,8 @@ Name:Goblin Offensive
ManaCost:X 1 R R ManaCost:X 1 R R
Types:Sorcery Types:Sorcery
Text:Put X 1/1 red Goblin creature tokens onto the battlefield. Text:Put X 1/1 red Goblin creature tokens onto the battlefield.
K:spMakeToken<>X<>Goblin<>R 1 1 Goblin<>Controller<>R<>Creature;Goblin<>1<>1<>None #K:spMakeToken<>X<>Goblin<>R 1 1 Goblin<>Controller<>R<>Creature;Goblin<>1<>1<>None
A:SP$Token|Cost$X 1 R R|TokenAmount$X|TokenName$Goblin|TokenTypes$Creature,Goblin|TokenOwner$Controller|TokenColors$Red|TokenPower$1|TokenToughness$1
SVar:X:Count$xPaid SVar:X:Count$xPaid
SVar:Rarity:Uncommon SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/goblin_offensive.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/goblin_offensive.jpg

View File

@@ -2,7 +2,8 @@ Name:Goblin Scouts
ManaCost:3 R R ManaCost:3 R R
Types:Sorcery Types:Sorcery
Text:Put three 1/1 red Goblin Scout creature tokens with mountainwalk onto the battlefield. Text:Put three 1/1 red Goblin Scout creature tokens with mountainwalk onto the battlefield.
K:spMakeToken<>3<>Goblin Scout<>R 1 1 Goblin Scout<>Controller<>R<>Creature;Goblin;Scout<>1<>1<>Mountainwalk #K:spMakeToken<>3<>Goblin Scout<>R 1 1 Goblin Scout<>Controller<>R<>Creature;Goblin;Scout<>1<>1<>Mountainwalk
A:SP$Token|Cost$3 R R|TokenAmount$3|TokenName$Goblin Scout|TokenTypes$Creature,Goblin,Scout|TokenOwner$Controller|TokenColors$Green|TokenPower$1|TokenToughness$1|TokenKeywords$Mountainwalk
SVar:Rarity:Uncommon SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/goblin_scouts.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/goblin_scouts.jpg
End End

View File

@@ -2,7 +2,8 @@ Name:Howl of the Night Pack
ManaCost:6 G ManaCost:6 G
Types:Sorcery Types:Sorcery
Text:Put a 2/2 green Wolf creature token onto the battlefield for each Forest you control. Text:Put a 2/2 green Wolf creature token onto the battlefield for each Forest you control.
K:spMakeToken<>X<>Wolf<>G 2 2 Wolf<>Controller<>G<>Creature;Wolf<>2<>2<>None #K:spMakeToken<>X<>Wolf<>G 2 2 Wolf<>Controller<>G<>Creature;Wolf<>2<>2<>None
A:SP$Token|Cost$6 G|TokenAmount$X|TokenName$Wolf|TokenTypes$Creature,Wolf|TokenOwner$Controller|TokenColors$Green|TokenPower$2|TokenToughness$2
SVar:X:Count$TypeYouCtrl.Forest SVar:X:Count$TypeYouCtrl.Forest
SVar:Rarity:Uncommon SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/howl_of_the_night_pack.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/howl_of_the_night_pack.jpg

View File

@@ -2,7 +2,8 @@ Name:Hunting Pack
ManaCost:5 G G ManaCost:5 G G
Types:Instant Types:Instant
Text:Put a 4/4 green Beast creature token onto the battlefield. Text:Put a 4/4 green Beast creature token onto the battlefield.
K:spMakeToken<>1<>Beast<>G 4 4 Beast<>Controller<>G<>Creature;Beast<>4<>4<>None #K:spMakeToken<>1<>Beast<>G 4 4 Beast<>Controller<>G<>Creature;Beast<>4<>4<>None
A:SP$Token|Cost$3 G|TokenAmount$1|TokenName$Beast|TokenTypes$Creature,Beast|TokenOwner$Controller|TokenColors$Green|TokenPower$4|TokenToughness$4
K:Storm K:Storm
SVar:Rarity:Uncommon SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/hunting_pack.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/hunting_pack.jpg

View File

@@ -2,7 +2,8 @@ Name:Icatian Town
ManaCost:5 W ManaCost:5 W
Types:Sorcery Types:Sorcery
Text:Put four 1/1 white Citizen creature tokens onto the battlefield. Text:Put four 1/1 white Citizen creature tokens onto the battlefield.
K:spMakeToken<>4<>Citizen<>W 1 1 Citizen<>Controller<>W<>Creature;Citizen<>1<>1<>None #K:spMakeToken<>4<>Citizen<>W 1 1 Citizen<>Controller<>W<>Creature;Citizen<>1<>1<>None
A:SP$Token|Cost$5 W|TokenAmount$4|TokenName$Citizen|TokenTypes$Creature,Citizen|TokenOwner$Controller|TokenColors$White|TokenPower$1|TokenToughness$1
SVar:Rarity:Uncommon SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/icatian_town.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/icatian_town.jpg
End End

View File

@@ -2,7 +2,8 @@ Name:Join the Ranks
ManaCost:3 W ManaCost:3 W
Types:Instant Types:Instant
Text:Put two 1/1 white Soldier Ally creature tokens onto the battlefield. Text:Put two 1/1 white Soldier Ally creature tokens onto the battlefield.
K:spMakeToken<>2<>Soldier Ally<>W 1 1 Soldier Ally<>Controller<>W<>Creature;Soldier;Ally<>1<>1<>None #K:spMakeToken<>2<>Soldier Ally<>W 1 1 Soldier Ally<>Controller<>W<>Creature;Soldier;Ally<>1<>1<>None
A:SP$Token|Cost$3 W|TokenAmount$2|TokenName$Soldier Ally|TokenTypes$Creature,Soldier,Ally|TokenOwner$Controller|TokenColors$White|TokenPower$1|TokenToughness$1
SVar:PlayMain1:TRUE SVar:PlayMain1:TRUE
SVar:Rarity:Common SVar:Rarity:Common
SVar:Picture:http://www.wizards.com/global/images/magic/general/join_the_ranks.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/join_the_ranks.jpg

View File

@@ -2,7 +2,8 @@ Name:Ordered Migration
ManaCost:3 W U ManaCost:3 W U
Types:Sorcery Types:Sorcery
Text:Domain <20> Put a 1/1 blue Bird creature token with flying onto the battlefield for each basic land type among lands you control. Text:Domain <20> Put a 1/1 blue Bird creature token with flying onto the battlefield for each basic land type among lands you control.
K:spMakeToken<>X<>Bird<>U 1 1 Bird<>Controller<>U<>Creature;Bird<>1<>1<>Flying #K:spMakeToken<>X<>Bird<>U 1 1 Bird<>Controller<>U<>Creature;Bird<>1<>1<>Flying
A:SP$Token|Cost$3 W U|TokenAmount$X|TokenName$Bird|TokenTypes$Creature,Bird|TokenOwner$Controller|TokenColors$Blue|TokenPower$1|TokenToughness$1|TokenKeywords$Flying
SVar:X:Count$Domain SVar:X:Count$Domain
SVar:Rarity:Uncommon SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/ordered_migration.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/ordered_migration.jpg

View File

@@ -2,7 +2,8 @@ Name:Raise the Alarm
ManaCost:1 W ManaCost:1 W
Types:Instant Types:Instant
Text:Put two 1/1 white Soldier creature tokens into play. Text:Put two 1/1 white Soldier creature tokens into play.
K:spMakeToken<>2<>Soldier<>W 1 1 Soldier<>Controller<>W<>Creature;Soldier<>1<>1<>None #K:spMakeToken<>2<>Soldier<>W 1 1 Soldier<>Controller<>W<>Creature;Soldier<>1<>1<>None
A:SP$Token|Cost$1 W|TokenAmount$2|TokenName$Soldier|TokenTypes$Creature,Soldier|TokenOwner$Controller|TokenColors$White|TokenPower$1|TokenToughness$1
SVar:Rarity:Common SVar:Rarity:Common
SVar:Picture:http://resources.wizards.com/magic/cards/mrd/en-us/card48103.jpg SVar:Picture:http://resources.wizards.com/magic/cards/mrd/en-us/card48103.jpg
End End

View File

@@ -2,7 +2,8 @@ Name:Reach of Branches
ManaCost:4 G ManaCost:4 G
Types:Tribal Instant Treefolk Types:Tribal Instant Treefolk
Text:Put a 2/5 green Treefolk Shaman creature token into play. Text:Put a 2/5 green Treefolk Shaman creature token into play.
K:spMakeToken<>1<>Treefolk Shaman<>G 2 5 Treefolk Shaman<>Controller<>G<>Creature;Treefolk;Shaman<>2<>5<>None #K:spMakeToken<>1<>Treefolk Shaman<>G 2 5 Treefolk Shaman<>Controller<>G<>Creature;Treefolk;Shaman<>2<>5<>None
A:SP$Token|Cost$4 G|TokenAmount$1|TokenName$Treefolk Shaman|TokenTypes$Creature,Treefolk,Shaman|TokenOwner$Controller|TokenColors$Green|TokenPower$2|TokenToughness$5
K:WheneverKeyword:EntersBattleField:Type/Forest:Graveyard:MoveFrom-Graveyard-Hand:Self:ASAP:Yes_No:Initiator - OwnedByController:Whenever a Forest enters the battlefield under your control, you may return Reach of Branches from your graveyard to your hand. K:WheneverKeyword:EntersBattleField:Type/Forest:Graveyard:MoveFrom-Graveyard-Hand:Self:ASAP:Yes_No:Initiator - OwnedByController:Whenever a Forest enters the battlefield under your control, you may return Reach of Branches from your graveyard to your hand.
SVar:Rarity:Rare SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/reach_of_branches.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/reach_of_branches.jpg

View File

@@ -2,7 +2,8 @@ Name:Roar of the Wurm
ManaCost:6 G ManaCost:6 G
Types:Sorcery Types:Sorcery
Text:Put a 6/6 green Wurm creature token onto the battlefield. Text:Put a 6/6 green Wurm creature token onto the battlefield.
K:spMakeToken<>1<>Wurm<>G 6 6 Wurm<>Controller<>G<>Creature;Wurm<>6<>6<>None #K:spMakeToken<>1<>Wurm<>G 6 6 Wurm<>Controller<>G<>Creature;Wurm<>6<>6<>None
A:SP$Token|Cost$6 G|TokenAmount$1|TokenName$Wurm|TokenTypes$Creature,Wurm|TokenOwner$Controller|TokenColors$Green|TokenPower$6|TokenToughness$6
K:Flashback:3 G K:Flashback:3 G
SVar:Rarity:Uncommon SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/roar_of_the_wurm.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/roar_of_the_wurm.jpg

View File

@@ -2,7 +2,8 @@ Name:Skittering Invasion
ManaCost:7 ManaCost:7
Types:Tribal Sorcery Eldrazi Types:Tribal Sorcery Eldrazi
Text:Put five 0/1 colorless Eldrazi Spawn creature tokens onto the battlefield. They have "Sacrifice this creature: Add 1 to your mana pool." Text:Put five 0/1 colorless Eldrazi Spawn creature tokens onto the battlefield. They have "Sacrifice this creature: Add 1 to your mana pool."
K:spMakeToken<>5<>Eldrazi Spawn<>C 0 1 Eldrazi Spawn<>Controller<>""<>Creature;Eldrazi;Spawn<>0<>1<>Sacrifice CARDNAME: Add 1 to your mana pool. #K:spMakeToken<>5<>Eldrazi Spawn<>C 0 1 Eldrazi Spawn<>Controller<>""<>Creature;Eldrazi;Spawn<>0<>1<>Sacrifice CARDNAME: Add 1 to your mana pool.
A:SP$Token|Cost$7|TokenAmount$5|TokenName$Eldrazi Spawn|TokenTypes$Creature,Eldrazi,Spawn|TokenOwner$Controller|TokenColors$Green|TokenPower$0|TokenToughness$1|TokenKeywords$Sacrifice CARDNAME: Add 1 to your mana pool.
SVar:Rarity:Uncommon SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/skittering_invasion.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/skittering_invasion.jpg
End End

View File

@@ -2,7 +2,8 @@ Name:Sosuke's Summons
ManaCost:2 G ManaCost:2 G
Types:Sorcery Types:Sorcery
Text:Put two 1/1 green Snake creature tokens onto the battlefield.\r\nWhenever a nontoken Snake enters the battlefield under your control, you may return Sosuke's Summons from your graveyard to your hand. Text:Put two 1/1 green Snake creature tokens onto the battlefield.\r\nWhenever a nontoken Snake enters the battlefield under your control, you may return Sosuke's Summons from your graveyard to your hand.
K:spMakeToken<>2<>Snake<>G 1 1 Snake<>Controller<>G<>Creature;Snake<>1<>1<>None #K:spMakeToken<>2<>Snake<>G 1 1 Snake<>Controller<>G<>Creature;Snake<>1<>1<>None
A:SP$Token|Cost$2 G|TokenAmount$2|TokenName$Snake|TokenTypes$Creature,Snake|TokenOwner$Controller|TokenColors$Green|TokenPower$1|TokenToughness$1
SVar:Rarity:Uncommon SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/sosukes_summons.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/sosukes_summons.jpg
End End

View File

@@ -2,7 +2,8 @@ Name:Sound the Call
ManaCost:2 G ManaCost:2 G
Types:Sorcery Types:Sorcery
Text:Put a 1/1 green Wolf creature token onto the battlefield. It has "This creature gets +1/+1 for each card named Sound the Call in each graveyard." Text:Put a 1/1 green Wolf creature token onto the battlefield. It has "This creature gets +1/+1 for each card named Sound the Call in each graveyard."
K:spMakeToken<>1<>Wolf<>G 1 1 Wolf<>Controller<>G<>Creature;Wolf<>1<>1<>This creature gets +1/+1 for each card named Sound the Call in each graveyard. #K:spMakeToken<>1<>Wolf<>G 1 1 Wolf<>Controller<>G<>Creature;Wolf<>1<>1<>This creature gets +1/+1 for each card named Sound the Call in each graveyard.
A:SP$Token|Cost$2 G|TokenAmount$1|TokenName$Wolf|TokenTypes$Creature,Wolf|TokenOwner$Controller|TokenColors$Green|TokenPower$1|TokenToughness$1|TokenKeywords$This creature gets +1/+1 for each card named Sound the Call in each graveyard.
SVar:Rarity:Common SVar:Rarity:Common
SVar:Picture:http://www.wizards.com/global/images/magic/general/sound_the_call.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/sound_the_call.jpg
End End

View File

@@ -2,7 +2,8 @@ Name:Spectral Procession
ManaCost:2/W 2/W 2/W ManaCost:2/W 2/W 2/W
Types:Sorcery Types:Sorcery
Text:Put three 1/1 white Spirit creature tokens with flying into play. Text:Put three 1/1 white Spirit creature tokens with flying into play.
K:spMakeToken<>3<>Spirit<>W 1 1 Spirit<>Controller<>W<>Creature;Spirit<>1<>1<>Flying #K:spMakeToken<>3<>Spirit<>W 1 1 Spirit<>Controller<>W<>Creature;Spirit<>1<>1<>Flying
A:SP$Token|Cost$2/W 2/W 2/W|TokenAmount$3|TokenName$Spirit|TokenTypes$Creature,Spirit|TokenOwner$Controller|TokenColors$White|TokenPower$1|TokenToughness$1|TokenKeywords$Flying
SVar:Rarity:Uncommon SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/spectral_procession.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/spectral_procession.jpg
End End

View File

@@ -2,7 +2,8 @@ Name:Spontaneous Generation
ManaCost:3 G ManaCost:3 G
Types:Sorcery Types:Sorcery
Text:Put a 1/1 green Saproling creature token onto the battlefield for each card in your hand. Text:Put a 1/1 green Saproling creature token onto the battlefield for each card in your hand.
K:spMakeToken<>X<>Saproling<>G 1 1 Saproling<>Controller<>G<>Creature;Saproling<>1<>1<>None #K:spMakeToken<>X<>Saproling<>G 1 1 Saproling<>Controller<>G<>Creature;Saproling<>1<>1<>None
A:SP$Token|Cost$3 G|TokenAmount$X|TokenName$Saproling|TokenTypes$Creature,Saproling|TokenOwner$Controller|TokenColors$Green|TokenPower$1|TokenToughness$1
SVar:X:Count$InYourHand SVar:X:Count$InYourHand
SVar:Rarity:Rare SVar:Rarity:Rare
SVar:Picture:http://www.wizards.com/global/images/magic/general/spontaneous_generation.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/spontaneous_generation.jpg

View File

@@ -2,7 +2,8 @@ Name:Spore Burst
ManaCost:3 G ManaCost:3 G
Types:Sorcery Types:Sorcery
Text:Domain <20> Put a 1/1 green Saproling creature token onto the battlefield for each basic land type among lands you control. Text:Domain <20> Put a 1/1 green Saproling creature token onto the battlefield for each basic land type among lands you control.
K:spMakeToken<>X<>Saproling<>G 1 1 Saproling<>Controller<>G<>Creature;Saproling<>1<>1<>None #K:spMakeToken<>X<>Saproling<>G 1 1 Saproling<>Controller<>G<>Creature;Saproling<>1<>1<>None
A:SP$Token|Cost$3 G|TokenAmount$X|TokenName$Saproling|TokenTypes$Creature,Saproling|TokenOwner$Controller|TokenColors$Green|TokenPower$1|TokenToughness$1
SVar:X:Count$Domain SVar:X:Count$Domain
SVar:Rarity:Uncommon SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/spore_burst.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/spore_burst.jpg

View File

@@ -2,7 +2,8 @@ Name:Sprout
ManaCost:G ManaCost:G
Types:Instant Types:Instant
Text:Put a 1/1 green Saproling creature token onto the battlefield. Text:Put a 1/1 green Saproling creature token onto the battlefield.
K:spMakeToken<>1<>Saproling<>G 1 1 Saproling<>Controller<>G<>Creature;Saproling<>1<>1<>None #K:spMakeToken<>1<>Saproling<>G 1 1 Saproling<>Controller<>G<>Creature;Saproling<>1<>1<>None
A:SP$Token|Cost$2 G|TokenAmount$1|TokenName$Saproling|TokenTypes$Creature,Saproling|TokenOwner$Controller|TokenColors$Green|TokenPower$1|TokenToughness$1
SVar:Rarity:Common SVar:Rarity:Common
SVar:Picture:http://www.wizards.com/global/images/magic/general/sprout.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/sprout.jpg
End End

View File

@@ -2,7 +2,8 @@ Name:Storm Herd
ManaCost:8 W W ManaCost:8 W W
Types:Sorcery Types:Sorcery
Text:Put X 1/1 white Pegasus creature tokens with flying into play, where X is your life total. Text:Put X 1/1 white Pegasus creature tokens with flying into play, where X is your life total.
K:spMakeToken<>X<>Pegasus<>W 1 1 Pegasus<>Controller<>W<>Creature;Pegasus<>1<>1<>None #K:spMakeToken<>X<>Pegasus<>W 1 1 Pegasus<>Controller<>W<>Creature;Pegasus<>1<>1<>None
A:SP$Token|Cost$8 W W|TokenAmount$X|TokenName$Pegasus|TokenTypes$Creature,Pegasus|TokenOwner$Controller|TokenColors$White|TokenPower$1|TokenToughness$1
SVar:X:Count$YourLifeTotal SVar:X:Count$YourLifeTotal
SVar:Rarity:Rare SVar:Rarity:Rare
SVar:Picture:http://resources.wizards.com/magic/cards/gpt/en-us/card96968.jpg SVar:Picture:http://resources.wizards.com/magic/cards/gpt/en-us/card96968.jpg

View File

@@ -2,7 +2,8 @@ Name:Tidal Wave
ManaCost:2 U ManaCost:2 U
Types:Instant Types:Instant
Text:Put a 5/5 blue Wall creature token with defender onto the battlefield. Sacrifice it at the beginning of the next end step. Text:Put a 5/5 blue Wall creature token with defender onto the battlefield. Sacrifice it at the beginning of the next end step.
K:spMakeToken<>1<>Wall<>U 5 5 Wall<>Controller<>U<>Creature;Wall<>3<>1<>Defender;At the beginning of the end step, sacrifice CARDNAME. #K:spMakeToken<>1<>Wall<>U 5 5 Wall<>Controller<>U<>Creature;Wall<>3<>1<>Defender;At the beginning of the end step, sacrifice CARDNAME.
A:SP$Token|Cost$2 U|TokenAmount$1|TokenName$Wall|TokenTypes$Creature,Wall|TokenOwner$Controller|TokenColors$Green|TokenPower$5|TokenToughness$5|TokenKeywords$Defender<>At the beginning of the end step, sacrifice CARDNAME.
SVar:RemAIDeck:True SVar:RemAIDeck:True
SVar:Rarity:Uncommon SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/tidal_wave.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/tidal_wave.jpg

View File

@@ -2,7 +2,8 @@ Name:Waylay
ManaCost:2 W ManaCost:2 W
Types:Instant Types:Instant
Text:Put three 2/2 white Knight creature tokens onto the battlefield. Exile them at the beginning of the next cleanup step. Text:Put three 2/2 white Knight creature tokens onto the battlefield. Exile them at the beginning of the next cleanup step.
K:spMakeToken<>3<>Knight<>W 2 2 Knight<>Controller<>W<>Creature;Knight<>2<>2<>At the beginning of the end step, exile CARDNAME. #K:spMakeToken<>3<>Knight<>W 2 2 Knight<>Controller<>W<>Creature;Knight<>2<>2<>At the beginning of the end step, exile CARDNAME.
A:SP$Token|Cost$2 W|TokenAmount$3|TokenName$Knight|TokenTypes$Creature,Knight|TokenOwner$Controller|TokenColors$White|TokenPower$2|TokenToughness$2|TokenKeywords$At the beginning of the end step, exile CARDNAME.
SVar:RemAIDeck:True SVar:RemAIDeck:True
SVar:Rarity:Uncommon SVar:Rarity:Uncommon
SVar:Picture:http://www.wizards.com/global/images/magic/general/waylay.jpg SVar:Picture:http://www.wizards.com/global/images/magic/general/waylay.jpg

View File

@@ -296,6 +296,40 @@ public class AbilityFactory {
} }
} }
if(API.equals("Token")){
AbilityFactory_Token AFT = new AbilityFactory_Token();
String numTokens,numPower,numToughness;
String[] keywords;
if(!mapParams.get("TokenAmount").matches("[0-9][0-9]?")) //It's an X-value.
numTokens = getHostCard().getSVar(mapParams.get("TokenAmount"));
else
numTokens = mapParams.get("TokenAmount");
if(!mapParams.get("TokenPower").matches("[0-9][0-9]?"))
numPower = getHostCard().getSVar(mapParams.get("TokenPower"));
else
numPower = mapParams.get("TokenPower");
if(!mapParams.get("TokenToughness").matches("[0-9][0-9]?"))
numToughness = getHostCard().getSVar(mapParams.get("TokenToughness"));
else
numToughness = mapParams.get("TokenToughness");
if(mapParams.containsKey("TokenKeywords")) {
keywords = mapParams.get("TokenKeywords").split("<>");
}
else {
keywords = new String[0];
}
if(isAb)
SA = AFT.getAbility(this, numTokens, mapParams.get("TokenName"), mapParams.get("TokenTypes").split(","), mapParams.get("TokenOwner"), mapParams.get("TokenColors").split(","), numPower, numToughness, keywords );
if(isSp)
SA = AFT.getSpell(this, numTokens, mapParams.get("TokenName"), mapParams.get("TokenTypes").split(","), mapParams.get("TokenOwner"), mapParams.get("TokenColors").split(","), numPower, numToughness, keywords);
}
// ********************************************* // *********************************************
// set universal properties of the SpellAbility // set universal properties of the SpellAbility
if (hasSpDesc) if (hasSpDesc)

View File

@@ -0,0 +1,208 @@
package forge;
public class AbilityFactory_Token extends AbilityFactory {
private AbilityFactory AF = null;
private String tokenAmount;
private String tokenName;
private String[] tokenTypes;
private String tokenOwner;
private String[] tokenColors;
private String[] tokenKeywords;
private String tokenPower;
private String tokenToughness;
public SpellAbility getAbility(final AbilityFactory af,final String numTokens,final String name,final String[] types,final String owner,final String[] colors,final String power,final String toughness,final String[] keywords)
{
AF = af;
tokenAmount = numTokens;
tokenName = name;
tokenTypes = types;
tokenOwner = owner;
tokenColors = colors;
tokenPower = power;
tokenToughness = toughness;
tokenKeywords = keywords;
final SpellAbility abToken = new Ability_Activated(AF.getHostCard(),AF.getAbCost(),AF.getAbTgt())
{
private static final long serialVersionUID = 8460074843405764620L;
@Override
public boolean canPlay() {
return super.canPlay();
}
@Override
public boolean canPlayAI() {
return true;
}
@Override
public void resolve() {
doResolve(this);
AF.getHostCard().setAbilityUsed(AF.getHostCard().getAbilityUsed() + 1);
}
@Override
public String getStackDescription() {
return doStackDescription();
}
};
return abToken;
}
public SpellAbility getSpell(final AbilityFactory af,final String numTokens,final String name,final String[] types,final String owner,final String[] colors,final String power,final String toughness,final String[] keywords)
{
AF = af;
tokenAmount = numTokens;
tokenName = name;
tokenTypes = types;
tokenOwner = owner;
tokenColors = colors;
tokenPower = power;
tokenToughness = toughness;
tokenKeywords = keywords;
final SpellAbility spToken = new Spell(AF.getHostCard(),AF.getAbCost(),AF.getAbTgt())
{
private static final long serialVersionUID = -8041427947613029670L;
@Override
public boolean canPlay() {
return super.canPlay();
}
@Override
public boolean canPlayAI() {
return true;
}
@Override
public void resolve() {
doResolve(this);
}
@Override
public String getStackDescription() {
return doStackDescription();
}
};
return spToken;
}
private String doStackDescription() {
int finalPower,finalToughness,finalAmount;
if(tokenPower.matches("[0-9][0-9]?")) {
finalPower = Integer.parseInt(tokenPower);
}
else {
finalPower = CardFactoryUtil.xCount(AF.getHostCard(), tokenPower);
}
if(tokenToughness.matches("[0-9][0-9]?")) {
finalToughness = Integer.parseInt(tokenToughness);
}
else {
finalToughness = CardFactoryUtil.xCount(AF.getHostCard(), tokenToughness);
}
if(tokenAmount.matches("[0-9][0-9]?")) {
finalAmount = Integer.parseInt(tokenAmount);
}
else {
finalAmount = CardFactoryUtil.xCount(AF.getHostCard(),tokenAmount);
}
StringBuilder sb = new StringBuilder();
sb.append(AF.getHostCard().getName());
sb.append(" - Put ").append(finalAmount).append(" ").append(finalPower).append("/").append(finalToughness).append(" ").append(tokenName).append(" tokens onto the battlefield");
if(tokenOwner.equals("Opponent")) {
sb.append(" under your opponent's control.");
}
else {
sb.append(".");
}
return sb.toString();
}
private void doResolve(SpellAbility sa) {
String imageName = "";
Player controller;
String cost = "";
//Construct colors
String colorDesc = "";
for(String col : tokenColors) {
if(col.equals("White")) {
colorDesc += "W";
}
else if(col.equals("Blue")) {
colorDesc += "U";
}
else if(col.equals("Black")) {
colorDesc += "B";
}
else if(col.equals("Red")) {
colorDesc += "R";
}
else if(col.equals("Green")) {
colorDesc += "G";
}
else if(col.equals("Colorless")) {
colorDesc = "C";
}
}
imageName += colorDesc + " " + tokenPower + " " + tokenToughness + " " + tokenName;
System.out.println("AF_Token imageName = " + imageName);
for(char c : colorDesc.toCharArray()) {
cost += c + ' ';
}
cost = colorDesc.replace('C', '1').trim();
if(tokenOwner.equals("Controller")) {
controller = AF.getHostCard().getController();
}
else {
controller = AF.getHostCard().getController().getOpponent();
}
int finalPower = 0;
int finalToughness = 0;
int finalAmount = 0;
if(tokenPower.matches("[0-9][0-9]?")) {
finalPower = Integer.parseInt(tokenPower);
}
else {
finalPower = CardFactoryUtil.xCount(AF.getHostCard(), tokenPower);
}
if(tokenToughness.matches("[0-9][0-9]?")) {
finalToughness = Integer.parseInt(tokenToughness);
}
else {
finalToughness = CardFactoryUtil.xCount(AF.getHostCard(), tokenToughness);
}
if(tokenAmount.matches("[0-9][0-9]?")) {
finalAmount = Integer.parseInt(tokenAmount);
}
else {
finalAmount = CardFactoryUtil.xCount(AF.getHostCard(),tokenAmount);
}
for(int i=0;i<finalAmount;i++) {
CardFactoryUtil.makeToken(tokenName, imageName, controller, cost, tokenTypes, finalPower, finalToughness, tokenKeywords);
}
}
}