...
 
Commits (23)
......@@ -2989,14 +2989,23 @@ public class ComputerUtil {
if (sa.hasParam("AITgts")) {
CardCollection list;
if (sa.getParam("AITgts").equals("BetterThanSource")) {
int value = ComputerUtilCard.evaluateCreature(source);
if (source.isEnchanted()) {
for (Card enc : source.getEnchantedBy()) {
if (enc.getController().equals(ai)) {
value += 100; // is 100 per AI's own aura enough?
String aiTgts = sa.getParam("AITgts");
if (aiTgts.startsWith("BetterThan")) {
int value = 0;
if (aiTgts.endsWith("Source")) {
value = ComputerUtilCard.evaluateCreature(source);
if (source.isEnchanted()) {
for (Card enc : source.getEnchantedBy()) {
if (enc.getController().equals(ai)) {
value += 100; // is 100 per AI's own aura enough?
}
}
}
} else if (aiTgts.contains("EvalRating.")) {
value = AbilityUtils.calculateAmount(source, aiTgts.substring(aiTgts.indexOf(".") + 1), sa);
} else {
System.err.println("Warning: Unspecified AI target evaluation rating for SA " + sa);
value = ComputerUtilCard.evaluateCreature(source);
}
final int totalValue = value;
list = CardLists.filter(srcList, new Predicate<Card>() {
......
......@@ -7,5 +7,5 @@ SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Se
AI:RemoveDeck:Random
DeckHas:Ability$Counters
A:AB$ Draw | Cost$ AddCounter<1/LOYALTY> | Planeswalker$ True | NumCards$ 1 | Defined$ You | SpellDescription$ Draw a card.
A:AB$ PumpAll | Cost$ SubCounter<7/LOYALTY> | ValidCards$ Creature.YouCtrl | KW$ HIDDEN Unblockable | SpellDescription$ Creatures you control can't be blocked this turn.
A:AB$ PumpAll | Cost$ SubCounter<7/LOYALTY> | Planeswalker$ True | Ultimate$ True | ValidCards$ Creature.YouCtrl | KW$ HIDDEN Unblockable | SpellDescription$ Creatures you control can't be blocked this turn.
Oracle:Whenever you draw your second card each turn, put a +1/+1 counter on target creature you control.\n[+1]: Draw a card.\n[-7]: Creatures you control can't be blocked this turn.
......@@ -3,7 +3,7 @@ ManaCost:1 R
Types:Creature Human Artificer
PT:2/1
K:Haste
T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | CheckSVar$ X | SVarCompare$ GE1 | References$ X | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Lieutenant - at the beginning of combat on your turn, if you control your commander, create a 1/1 colorless Thopter artifact creature token with flying. That token gains haste until end of turn.
T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | CheckSVar$ X | SVarCompare$ GE1 | References$ X | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Lieutenant — At the beginning of combat on your turn, if you control your commander, create a 1/1 colorless Thopter artifact creature token with flying. That token gains haste until end of turn.
SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_1_1_a_thopter_flying | TokenOwner$ You | RememberTokens$ True | LegacyImage$ c 1 1 a thopter flying c18 | SubAbility$ DBPump
SVar:DBPump:DB$ Pump | Defined$ Remembered | KW$ Haste | SubAbility$ DBCleanup
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
......
......@@ -3,7 +3,7 @@ ManaCost:2 U
Types:Creature Drake
PT:2/2
K:Flying
T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | TriggerZones$ Battlefield | IsPresent$ Card.IsCommander+YouOwn+YouCtrl | Execute$ TrigDraw | TriggerDescription$ At the beginning of combat on your turn, if you control your commander, draw a card.
T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | TriggerZones$ Battlefield | IsPresent$ Card.IsCommander+YouOwn+YouCtrl | Execute$ TrigDraw | TriggerDescription$ Lieutenant — At the beginning of combat on your turn, if you control your commander, draw a card.
SVar:TrigDraw:DB$ Draw | Defined$ You | NumCards$ 1
AI:RemoveDeck:Random
Oracle:Flying\nLieutenant — At the beginning of combat on your turn, if you control your commander, draw a card.
......@@ -3,7 +3,7 @@ ManaCost:4 G
Types:Creature Rhino
PT:4/4
K:Trample
T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | TriggerZones$ Battlefield | IsPresent$ Card.IsCommander+YouOwn+YouCtrl | Execute$ TrigPutCounter | TriggerDescription$ At the beginning of combat on your turn, if you control your commander, put a +1/+1 counter on each creature you control.
T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | TriggerZones$ Battlefield | IsPresent$ Card.IsCommander+YouOwn+YouCtrl | Execute$ TrigPutCounter | TriggerDescription$ Lieutenant — At the beginning of combat on your turn, if you control your commander, put a +1/+1 counter on each creature you control.
SVar:TrigPutCounter:DB$ PutCounterAll | ValidCards$ Creature.YouCtrl | CounterType$ P1P1 | CounterNum$ 1
DeckHints:Ability$IsCommander
Oracle:Trample\nLieutenant — At the beginning of combat on your turn, if you control your commander, put a +1/+1 counter on each creature you control.
......@@ -3,6 +3,6 @@ ManaCost:2 B
Types:Creature Zombie
PT:3/1
K:Menace
T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | TriggerZones$ Battlefield | IsPresent$ Card.IsCommander+YouOwn+YouCtrl | Execute$ TrigLoseLife | TriggerDescription$ At the beginning of combat on your turn, if you control your commander, each opponent loses 3 life.
T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | TriggerZones$ Battlefield | IsPresent$ Card.IsCommander+YouOwn+YouCtrl | Execute$ TrigLoseLife | TriggerDescription$ Lieutenant — At the beginning of combat on your turn, if you control your commander, each opponent loses 3 life.
SVar:TrigLoseLife:DB$ LoseLife | Defined$ Player.Opponent | LifeAmount$ 3
Oracle:Menace\nLieutenant — At the beginning of combat on your turn, if you control your commander, each opponent loses 3 life.
......@@ -3,7 +3,7 @@ ManaCost:3 W
Types:Creature Unicorn
PT:3/4
K:Vigilance
T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | CheckSVar$ X | SVarCompare$ GE1 | References$ X | TriggerZones$ Battlefield | Execute$ PreventEffect | TriggerDescription$ At the beginning of combat on your turn, if you control your commander, prevent all combat damage that would be dealt to creatures you control this turn.
T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | CheckSVar$ X | SVarCompare$ GE1 | References$ X | TriggerZones$ Battlefield | Execute$ PreventEffect | TriggerDescription$ Lieutenant — At the beginning of combat on your turn, if you control your commander, prevent all combat damage that would be dealt to creatures you control this turn.
SVar:PreventEffect:DB$ Effect | ReplacementEffects$ RPrevent | References$ RPrevent | ValidTgts$ You | Description$ Prevent all combat damage that would be dealt to creatures you control this turn.
SVar:RPrevent:Event$ DamageDone | Prevent$ True | IsCombat$ True | ActiveZones$ Command | ValidTarget$ Creature.YouCtrl | Description$ Prevent all combat damage that would be dealt to creatures you control this turn.
S:Mode$ Continuous | Affected$ Creature.Other+YouCtrl | AddKeyword$ Vigilance | Description$ Other creatures you control gain vigilance until end of turn.
......
......@@ -2,7 +2,7 @@ Name:Transmogrifying Wand
ManaCost:3
Types:Artifact
K:etbCounter:CHARGE:3
A:AB$ Destroy | Cost$ 1 T SubCounter<1/CHARGE> | ValidTgts$ Creature | TgtPrompt$ Select target creature | SorcerySpeed$ True | SubAbility$ OxToken | SpellDescription$ Destroy target creature.
A:AB$ Destroy | Cost$ 1 T SubCounter<1/CHARGE> | ValidTgts$ Creature | AITgts$ BetterThanEvalRating.130 | TgtPrompt$ Select target creature | SorcerySpeed$ True | SubAbility$ OxToken | SpellDescription$ Destroy target creature.
SVar:OxToken:DB$Token | TokenAmount$ 1 | TokenScript$ w_2_4_ox | TokenOwner$ TargetedController | LegacyImage$ w 2 4 ox | SpellDescription$ Its controller creates a 2/4 white Ox creature token. Activate this ability only any time you could cast a sorcery.
SVar:Picture:http://www.wizards.com/global/images/magic/general/transmogrifying_wand.jpg
Oracle:Transmogrifying Wand enters the battlefield with three charge counters on it.\n{1}, {T}, Remove a charge counter from Transmogrifying Wand: Destroy target creature. Its controller creates a 2/4 white Ox creature token. Activate this ability only any time you could cast a sorcery.
Name:Astral Drift
ManaCost:2 W
Types:Enchantment
K:Cycling:2 W
T:Mode$ Cycled | ValidCard$ Card.Self | Execute$ TrigExile | OptionalDecider$ You | TriggerDescription$ Whenever you cycle CARDNAME or cycle another card while CARDNAME is on the battlefield, you may exile target creature. If you do, return that card to the battlefield under its owner's control at the beginning of the next end step.
T:Mode$ Cycled | ValidCard$ Card.Other+YouOwn | Execute$ TrigExile | OptionalDecider$ You | TriggerZones$ Battlefield | Secondary$ True | TriggerDescription$ Whenever you cycle CARDNAME or cycle another card while CARDNAME is on the battlefield, you may exile target creature. If you do, return that card to the battlefield under its owner's control at the beginning of the next end step.
SVar:TrigExile:DB$ ChangeZone | Origin$ Battlefield | Destination$ Exile | ValidTgts$ Creature | RememberChanged$ True | TgtPrompt$ Select target creature | SubAbility$ DelTrig | SpellDescription$ Exile target creature. Return that card to the battlefield under its owner's control at end of turn.
SVar:DelTrig:DB$ DelayedTrigger | Mode$ Phase | Phase$ End of Turn | Execute$ TrigReturn | RememberObjects$ Remembered | TriggerDescription$ Return exiled card to the battlefield. | SubAbility$ DBCleanup
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
SVar:TrigReturn:DB$ ChangeZone | Defined$ DelayTriggerRemembered | Origin$ Exile | Destination$ Battlefield
Oracle:Whenever you cycle Astral Drift or cycle another card while Astral Drift is on the battlefield, you may exile target creature. If you do, return that card to the battlefield under its owner's control at the beginning of the next end step.\nCycling {2}{W} ({2}{W}, Discard this card: Draw a card.)
Name:Dregscape Sliver
ManaCost:1 B
Types:Creature Sliver
PT:2/2
S:Mode$ Continuous | Affected$ Creature.Sliver+YouCtrl | AffectedZone$ Graveyard | AddKeyword$ Unearth:2 | Description$ Each Sliver creature card in your graveyard has unearth {2}.
SVar:PlayMain1:TRUE
K:Unearth:2
Oracle:Each Sliver creature card in your graveyard has unearth {2}.\nUnearth {2} ({2}: Return this card from your graveyard to the battlefield. It gains haste. Exile it at the beginning of the next end step or if it would leave the battlefield. Unearth only as a sorcery.)
\ No newline at end of file
Name:Force of Virtue
ManaCost:2 W W
Types:Enchantment
K:Flash
S:Mode$ Continuous | Affected$ Creature.YouCtrl | AddPower$ 1 | AddToughness$ 1 | Description$ Creatures you control get +1/+1.
SVar:AltCost:Cost$ ExileFromHand<1/Card.White> | OpponentTurn$ True | Description$ If it's not your turn, you may exile a white card from your hand rather than pay this spell's mana cost.
SVar:BuffedBy:Creature
AI:RemoveDeck:All
Oracle:If it's not your turn, you may exile a white card from your hand rather than pay this spell's mana cost.\nFlash\nCreatures you control get +1/+1.
Name:Goblin Engineer
ManaCost:1 R
Types:Creature Goblin Artificer
PT:1/2
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Self | Execute$ TrigChange | OptionalDecider$ You | TriggerDescription$ When CARDNAME enters the battlefield, you may search your library for an artifact card, put it into your graveyard, then shuffle your library.
SVar:TrigChange:DB$ChangeZone | Origin$ Library | Destination$ Graveyard | ChangeType$ Artifact | ChangeNum$ 1 | ShuffleNonMandatory$ True
A:AB$ ChangeZone | Cost$ R T Sac<1/Artifact> | TgtPrompt$ Choose target artifact card with converted mana cost 3 or less from your graveyard | ValidTgts$ Artifact.cmcLE3+YouCtrl | Origin$ Graveyard | Destination$ Battlefield | SpellDescription$ Return target artifact card with converted mana cost 3 or less from your graveyard to the battlefield.
Oracle:When Goblin Engineer enters the battlefield, you may search your library for an artifact card, put it into your graveyard, then shuffle your library.\n{R}, {T}, Sacrifice an artifact: Return target artifact card with converted mana cost 3 or less from your graveyard to the battlefield.
Name:Good-Fortune Unicorn
ManaCost:1 G W
Types:Creature Unicorn
PT:2/2
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.YouCtrl+Other | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Whenever another creature enters the battlefield under your control, put a +1/+1 counter on that creature.
SVar:TrigPutCounter:DB$PutCounter | Defined$ TriggeredCardLKICopy | CounterType$ P1P1 | CounterNum$ 1
Oracle:Whenever another creature enters the battlefield under your control, put a +1/+1 counter on that creature.
\ No newline at end of file
Name:Lavabelly Sliver
ManaCost:1 R W
Types:Creature Sliver
PT:2/2
S:Mode$ Continuous | Affected$ Creature.Sliver+YouCtrl | AddTrigger$ ChangesZone | AddSVar$ LavabellyTrigDamage & LavabellyGainLife | Description$ Sliver creatures you control have "When this creature enters the battlefield, it deals 1 damage to target player or planeswalker and you gain 1 life."
SVar:ChangesZone:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ LavabellyTrigDamage | TriggerDescription$ When this creature enters the battlefield, it deals 1 damage to target player or planeswalker and you gain 1 life.
SVar:LavabellyTrigDamage:DB$ DealDamage | ValidTgts$ Player,Planeswalker | TgtPrompt$ Select target player or planeswalker to damage | NumDmg$ 1 | SubAbility$ LavabellyGainLife
SVar:LavabellyGainLife:DB$ GainLife | LifeAmount$ 1 | Defined$ You
Oracle:Sliver creatures you control have "When this creature enters the battlefield, it deals 1 damage to target player or planeswalker and you gain 1 life."
\ No newline at end of file
Name:Planebound Accomplice
ManaCost:2 R
Types:Creature Human Wizard
PT:1/3
A:AB$ ChangeZone | Cost$ R | Origin$ Hand | Destination$ Battlefield | ChangeType$ Planeswalker.YouOwn | RememberChanged$ True | Optional$ True | SubAbility$ DBPump | AILogic$ BeforeCombat | SpellDescription$ You may put a planeswalker card from your hand onto the battlefield. Sacrifice it at the beginning of the next end step.
SVar:DBPump:DB$ Pump | Defined$ Remembered | AtEOT$ Sacrifice | SubAbility$ DBCleanup
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
AI:RemoveDeck:Random
Oracle:{R}: You may put a planeswalker card from your hand onto the battlefield. Sacrifice it at the beginning of the next end step.
Name:Ranger-Captain of Eos
ManaCost:1 W W
Types:Creature Human Soldier
PT:3/3
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Self | OptionalDecider$ You | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters the battlefield, you may search your library for a creature card with converted mana cost 1 or less, reveal that card, reveal it, put it into your hand, then shuffle your library.
SVar:TrigChange:DB$ChangeZone | Origin$ Library | Destination$ Hand | ChangeType$ Creature.cmcLE1 | ChangeNum$ 1 | ShuffleNonMandatory$ True
A:AB$ Effect | Cost$ Sac<1/CARDNAME> | Defined$ Player.nonCreature | StaticAbilities$ STCantBeCast | SpellDescription$ Your opponents can't cast noncreature spells this turn.
SVar:STCantBeCast:Mode$ CantBeCast | ValidCard$ Card.nonCreature | Caster$ Opponent | Description$ Your opponents can't cast noncreature spells this turn.
Oracle:When Ranger-Captain of Eos enters the battlefield, you may search your library for a creature card with converted mana cost 1 or less, reveal it, put it into your hand, then shuffle your library.\nSacrifice Ranger-Captain of Eos: Your opponents can't cast noncreature spells this turn.
Name:Scour All Possibilities
ManaCost:1 U
Types:Sorcery
K:Flashback:4 U
A:SP$ Scry | Cost$ 1 U | ScryNum$ 2 | SpellDescription$ Scry 2, then draw a card. (To scry 2, look at the top two cards of your library, then put any number of them on the bottom of your library and the rest on top in any order.) | SubAbility$ DBDraw
A:SP$ Scry | Cost$ 1 U | ScryNum$ 2 | SubAbility$ DBDraw | SpellDescription$ Scry 2, then draw a card.
SVar:DBDraw:DB$Draw | NumCards$ 1
SVar:Picture:http://mythicspoiler.com/mh1/cards/scourallpossibilities.jpg
Oracle:Scry 2, then draw a card. (To scry 2, look at the top two cards of your library, then put any number of them on the bottom of your library and the rest on top in any order.)\nFlashback {4}{U} (You may cast this card from your graveyard for its flashback cost. Then exile it.)
K:Flashback:4 U
Oracle:Scry 2, then draw a card.\nFlashback {4}{U} (You may cast this card from your graveyard for its flashback cost. Then exile it.)
Name:Scrapyard Recombiner
ManaCost:3
Types:Artifact Creature Construct
PT:0/0
K:Modular:2
DeckHas:Ability$Counters
A:AB$ ChangeZone | Cost$ T Sac<1/Artifact> | Origin$ Library | Destination$ Hand | ChangeType$ Card.Construct | ChangeNum$ 1 | SpellDescription$ Search your library for a Construct card, reveal it, put it into your hand, then shuffle your library.
AI:RemoveDeck:Random
Oracle:Modular 2 (This creature enters the battlefield with two +1/+1 counters on it. When it dies, you may put its +1/+1 counters on target artifact creature.)\n{T}, Sacrifice an artifact: Search your library for a Construct card, reveal it, put it into your hand, then shuffle your library.
Name:Tempered Sliver
ManaCost:2 G
Types:Creature Sliver
PT:2/2
S:Mode$ Continuous | Affected$ Creature.Sliver+YouCtrl | AddTrigger$ DamageDone | AddSVar$ TemperedSliverPutCounter | Description$ Sliver creatures you control have "Whenever this creature deals combat damage to a player, put a +1/+1 counter on it."
SVar:DamageDone:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | CombatDamage$ True | Execute$ TemperedSliverPutCounter | TriggerZones$ Battlefield | TriggerDescription$ Whenever this creature deals combat damage to a player, put a +1/+1 counter on it.
SVar:TemperedSliverPutCounter:DB$PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1
SVar:PlayMain1:TRUE
SVar:BuffedBy:Sliver
Oracle:Sliver creatures you control have "Whenever this creature deals combat damage to a player, put a +1/+1 counter on it."
\ No newline at end of file
Name:The First Sliver
ManaCost:W U B R G
Types:Legendary Creature Sliver
PT:7/7
K:Cascade
S:Mode$ Continuous | Affected$ Card.Sliver+YouCtrl | AffectedZone$ Stack | AddKeyword$ Cascade | Description$ Sliver spells you cast have cascade.
SVar:PlayMain1:TRUE
Oracle:Cascade (When you cast this spell, exile cards from the top of your library until you exile a nonland card that costs less. You may cast it without paying its mana cost. Put the exiled cards on the bottom of your library in a random order.)\nSliver spells you cast have cascade.
\ No newline at end of file
......@@ -10,9 +10,11 @@ Type=Other
1 M Morophon, the Boundless
3 R Astral Drift
5 U Dismantling Blow
10 R Force of Virtue
13 R Giver of Runes
14 C Impostor of the Sixth Pride
19 C Martyr's Soul
21 M Ranger-Captain of Eos
26 M Serra the Benevolent
36 C Wall of One Thousand Cuts
38 U Wing Shards
......@@ -21,40 +23,55 @@ Type=Other
48 U Exclude
50 U Fact or Fiction
52 R Force of Negation
55 C Man-o'-War
63 C Pondering Mage
64 C Prohibit
67 C Scour All Possibilities
71 C Stream of Thought
75 M Urza, Lord High Artificer
80 R Cabal Therapist
84 U Crypt Rats
87 C Diabolic Edict
88 U Dregscape Sliver
92 R Force of Despair
95 C Headless Specter
112 U Undead Augur
114 C Venomous Changling
114 C Venomous Changeling
118 R Blazing Chant
122 U Firebolt
123 C Fists of Flame
128 R Goblin Engineer
129 U Goblin Matron
131 C Goblin War Party
134 C Lava Dart
140 R Planebound Accomplice
145 M Seasoned Pyromancer
161 R Deep Forest Hermit
162 C Elvish Fury
164 R Force of Vigor
174 C Nimble Mongoose
175 U Regrowth
178 C Savage Swipe
179 U Scale Up
180 C Spore Frog
183 U Tempered Sliver
194 U Abominable Treefolk
196 R Collected Conjuring
198 U Etchings of the Chosen
200 M The First Sliver
201 U Good-Fortune Unicorn
203 R Ice-Fang Coatl
207 U Lavabelly Sliver
208 R Lightning Skelemental
209 U Munitions Expert
215 U Thundering Djinn
227 R Scrapyard Recombiner
238 R Fiery Islet
243 R Nurturing Peatland
244 R Prismatic Vista
246 R Silent Clearing
247 R Sunbaked Canyon
248 R Waterlogged Grove
249 R Waterlogged Grove
250 L Snow-Covered Plains
251 L Snow-Covered Island
252 L Snow-Covered Swamp
......