Merge remote-tracking branch 'core/master'

# Conflicts:
#	forge-gui-mobile/src/forge/Forge.java
This commit is contained in:
Anthony Calosa
2022-02-15 11:45:41 +08:00
42 changed files with 257 additions and 30 deletions

View File

@@ -26,6 +26,7 @@ import com.google.common.collect.Lists;
import forge.ai.ComputerUtilCard;
import forge.ai.ComputerUtilCombat;
import forge.ai.SpecialCardAi;
import forge.ai.SpellAbilityAi;
import forge.game.Game;
import forge.game.ability.AbilityUtils;
@@ -296,6 +297,13 @@ public class ControlGainAi extends SpellAbilityAi {
@Override
public boolean chkAIDrawback(SpellAbility sa, final Player ai) {
final Game game = ai.getGame();
// Special card logic that is processed elsewhere
if (sa.getParam("AILogic").equals("DonateTargetPerm")) {
// Donate step 2 - target a donatable permanent.
return SpecialCardAi.Donate.considerDonatingPermanent(ai, sa);
}
if (!sa.usesTargeting()) {
if (sa.hasParam("AllValid")) {
CardCollectionView tgtCards = CardLists.filterControlledBy(game.getCardsIn(ZoneType.Battlefield), ai.getOpponents());

View File

@@ -451,9 +451,6 @@ public class PumpAi extends PumpAiBase {
} else {
return false;
}
} else if (sa.getParam("AILogic").equals("DonateTargetPerm")) {
// Donate step 2 - target a donatable permanent.
return SpecialCardAi.Donate.considerDonatingPermanent(ai, sa);
} else if (sa.getParam("AILogic").equals("SacOneEach")) {
// each player sacrifices one permanent, e.g. Vaevictis, Asmadi the Dire - grab the worst for allied and
// the best for opponents

View File

@@ -51,7 +51,7 @@ public class Deck extends DeckBase implements Iterable<Entry<DeckSection, CardPo
private String lastCardArtPreferenceUsed = "";
private Boolean lastCardArtOptimisationOptionUsed = null;
private boolean includeCardsFromUnspecifiedSet = false;
private UnplayableAICards unplayableAI = null;
private transient UnplayableAICards unplayableAI = null;
public Deck() {
this("");

View File

@@ -1853,7 +1853,7 @@ public class AbilityUtils {
// Count$TriggeredManaSpent
if (sq[0].equals("TriggeredManaSpent")) {
final SpellAbility root = (SpellAbility) sa.getRootAbility().getTriggeringObject(AbilityKey.SpellAbility);
return root.getTotalManaSpent();
return root == null ? 0 : root.getTotalManaSpent();
}
// Count$Adamant.<Color>.<True>.<False>

View File

@@ -1,10 +1,8 @@
Name:Donate
ManaCost:2 U
Types:Sorcery
A:SP$ Pump | Cost$ 2 U | ValidTgts$ Player | TgtPrompt$ Select target player | SubAbility$ D1 | AILogic$ DonateTargetPlayer | RememberObjects$ Targeted | SpellDescription$ Target player gains control of target permanent you control. | StackDescription$ None
SVar:D1:DB$ Pump | ValidTgts$ Permanent.YouCtrl | TgtPrompt$ Select target permanent you control | SubAbility$ D2 | AILogic$ DonateTargetPerm | StackDescription$ None
SVar:D2:DB$ GainControl | Defined$ Targeted | NewController$ Remembered | SubAbility$ D3
SVar:D3:DB$ Cleanup | ClearRemembered$ True
A:SP$ Pump | ValidTgts$ Player | TgtPrompt$ Select target player | SubAbility$ DBGiveControl | AILogic$ DonateTargetPlayer | SpellDescription$ Target player gains control of target permanent you control. | StackDescription$ None
SVar:DBGiveControl:DB$ GainControl | ValidTgts$ Permanent.YouCtrl | TgtPrompt$ Select target permanent you control | Defined$ Targeted | NewController$ ParentTarget | AILogic$ DonateTargetPerm
AI:RemoveDeck:Random
SVar:DoNotDiscardIfAble:TRUE
Oracle:Target player gains control of target permanent you control.

View File

@@ -0,0 +1,9 @@
Name:Akki Ronin
ManaCost:1 R
Types:Creature Goblin Samurai
PT:1/3
T:Mode$ Attacks | ValidCard$ Samurai.YouCtrl,Warrior.YouCtrl | Alone$ True | Execute$ TrigDraw | TriggerZones$ Battlefield | TriggerDescription$ Whenever a Samurai or Warrior you control attacks alone, you may discard a card. If you do, draw a card.
SVar:TrigDraw:AB$ Draw | Cost$ Discard<1/Card> | NumCards$ 1
DeckHas:Ability$Discard
DeckHints:Type$Samurai|Warrior
Oracle:Whenever a Samurai or Warrior you control attacks alone, you may discard a card. If you do, draw a card.

View File

@@ -0,0 +1,7 @@
Name:Ambitious Assault
ManaCost:2 R
Types:Instant
A:SP$ PumpAll | Cost$ 2 R | ValidCards$ Creature.YouCtrl | NumAtt$ +2 | SubAbility$ DBDraw | SpellDescription$ Creatures you control get +2/+0 until end of turn. If you control a modified creature, draw a card. (Equipment, Auras you control, and counters are modifications.)
SVar:DBDraw:DB$ Draw | NumCards$ 1 | ConditionPresent$ Creature.YouCtrl+modified | ConditionCompare$ GE1
DeckHints:Type$Equipment|Aura & Ability$Counters
Oracle:Creatures you control get +2/+0 until end of turn. If you control a modified creature, draw a card. (Equipment, Auras you control, and counters are modifications.)

View File

@@ -0,0 +1,11 @@
Name:Ascendant Acolyte
ManaCost:4 G
Types:Creature Human Monk
PT:1/1
K:etbCounter:P1P1:X:no Condition:CARDNAME enters the battlefield with a +1/+1 counter on it for each +1/+1 counter among other creatures you control.
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | Execute$ TrigDouble | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of your upkeep, double the number of +1/+1 counters on CARDNAME.
SVar:TrigDouble:DB$ MultiplyCounter | Defined$ Self | CounterType$ P1P1
SVar:X:Count$TotalCounters_P1P1_Creature.YouCtrl+Other
SVar:NeedsToPlay:Creature.YouCtrl+counters_GE1_P1P1
DeckHas:Ability$Counters
Oracle:Ascendant Acolyte enters the battlefield with a +1/+1 counter on it for each +1/+1 counter among other creatures you control.\nAt the beginning of your upkeep, double the number of +1/+1 counters on Ascendant Acolyte.

View File

@@ -0,0 +1,11 @@
Name:Crackling Emergence
ManaCost:1 R
Types:Enchantment Aura
K:Enchant land you control
A:SP$ Attach | Cost$ 1 R | ValidTgts$ Land.YouCtrl | TgtPrompt$ Select target land you control | AILogic$ Animate
S:Mode$ Continuous | Affected$ Land.EnchantedBy | AddType$ Creature & Spirit | SetColor$ Red | SetPower$ 3 | SetToughness$ 3 | AddKeyword$ Haste | Description$ Enchanted land is a 3/3 red Spirit creature with haste. It's still a land.
R:Event$ Destroy | ValidCard$ Card.EnchantedBy | ReplaceWith$ CracklingEgress | Description$ If enchanted land would be destroyed, instead sacrifice CARDNAME and that land gains indestructible until end of turn.
SVar:CracklingEgress:DB$ Sacrifice | Defined$ Card.Self | SubAbility$ DBPump
SVar:DBPump:DB$ Pump | Defined$ Enchanted | KW$ Indestructible
DeckHas:Ability$Sacrifice & Type$Spirit
Oracle:Enchant land you control\nEnchanted land is a 3/3 red Spirit creature with haste. It's still a land.\nIf enchanted land would be destroyed, instead sacrifice Crackling Emergence and that land gains indestructible until end of turn.

View File

@@ -0,0 +1,12 @@
Name:Dragonspark Reactor
ManaCost:1 R
Types:Artifact
T:Mode$ ChangesZone | ValidCard$ Card.Self,Artifact.Other+YouCtrl | Destination$ Battlefield | Execute$ TrigCounter | TriggerDescription$ Whenever CARDNAME or another artifact enters the battlefield under your control, put a charge counter on CARDNAME.
SVar:TrigCounter:DB$ PutCounter | CounterType$ CHARGE | CounterNum$ 1
A:AB$ DealDamage | Cost$ 4 Sac<1/CARDNAME> | ValidTgts$ Player | TgtPrompt$ Select target player | NumDmg$ X | SubAbility$ DBDamage | SpellDescription$ It deals damage equal to the number of charge counters on it to target player and that much damage to up to one target creature.
SVar:DBDamage:DB$ DealDamage | ValidTgts$ Creature | TgtPrompt$ Select up to one target creature | TargetMin$ 0 | TargetMax$ 1 | NumDmg$ X
SVar:X:Count$CardCounters.CHARGE
SVar:BuffedBy:Artifact
DeckHas:Ability$Counters
DeckNeeds:Type$Artifact
Oracle:Whenever Dragonspark Reactor or another artifact enters the battlefield under your control, put a charge counter on Dragonspark Reactor.\n{4}, Sacrifice Dragonspark Reactor: It deals damage equal to the number of charge counters on it to target player and that much damage to up to one target creature.

View File

@@ -0,0 +1,13 @@
Name:Experimental Synthesizer
ManaCost:R
Types:Artifact
T:Mode$ ChangesZone | ValidCard$ Card.Self | Destination$ Battlefield | Execute$ TrigDig | TriggerDescription$ When CARDNAME enters or leaves the battlefield, exile the top card of your library. Until end of turn, you may play that card.
T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Battlefield | Execute$ TrigDig | Secondary$ True | TriggerDescription$ When CARDNAME enters or leaves the battlefield, exile the top card of your library. Until end of turn, you may play that card.
SVar:TrigDig:DB$ Dig | DigNum$ 1 | ChangeNum$ All | DestinationZone$ Exile | RememberChanged$ True | SubAbility$ DBEffect
SVar:DBEffect:DB$ Effect | RememberObjects$ RememberedCard | StaticAbilities$ Play | SubAbility$ DBCleanup | ExileOnMoved$ Exile
SVar:Play:Mode$ Continuous | MayPlay$ True | EffectZone$ Command | Affected$ Card.IsRemembered | AffectedZone$ Exile | Description$ You may play the remembered card.
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
A:AB$ Token | Cost$ 2 R Sac<1/CARDNAME> | TokenScript$ w_2_2_samurai_vigilance | SorcerySpeed$ True | SpellDescription$ Create a 2/2 white Samurai creature token with vigilance. Activate only as a sorcery.
DeckHas:Ability$Token & Type$Samurai & Keyword$Vigilance
SVar:SacMe:4
Oracle:When Experimental Synthesizer enters or leaves the battlefield, exile the top card of your library. Until end of turn, you may play that card.\n{2}{R}, Sacrifice Experimental Synthesizer: Create a 2/2 white Samurai creature token with vigilance. Activate only as a sorcery.

View File

@@ -0,0 +1,7 @@
Name:Explosive Entry
ManaCost:1 R
Types:Sorcery
A:SP$ Destroy | Cost$ 1 R | ValidTgts$ Artifact | TgtPrompt$ Select up to one target artifact | TargetMin$ 0 | TargetMax$ 1 | SubAbility$ DBCounter | SpellDescription$ Destroy up to one target artifact. Put a +1/+1 counter on up to one target creature.
SVar:DBCounter:DB$ PutCounter | ValidTgts$ Creature | TgtPrompt$ Select up to one target creature | TargetMin$ 0 | TargetMax$ 1 | CounterType$ P1P1 | CounterNum$ 1
DeckHas:Ability$Counters
Oracle:Destroy up to one target artifact. Put a +1/+1 counter on up to one target creature.

View File

@@ -0,0 +1,10 @@
Name:Gift of Wrath
ManaCost:3 R
Types:Enchantment Aura
K:Enchant artifact or creature
A:SP$ Attach | Cost$ 3 R | ValidTgts$ Artifact,Creature | TgtPrompt$ Select target artifact or creature | AITgts$ Creature,Vehicle | AILogic$ Pump
S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddPower$ 2 | AddToughness$ 2 | AddKeyword$ Menace | Description$ As long as enchanted permanent is a creature, it gets +2/+2 and has menace. (It can't be blocked except by two or more creatures.)
T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Battlefield | Execute$ TrigToken | TriggerDescription$ When CARDNAME leaves the battlefield, create a 2/2 red Spirit creature token with menace.
SVar:TrigToken:DB$ Token | TokenScript$ r_2_2_spirit_menace
DeckHas:Ability$Token & Type$Spirit & Keyword$Menace
Oracle:Enchant artifact or creature\nAs long as enchanted permanent is a creature, it gets +2/+2 and has menace. (It can't be blocked except by two or more creatures.)\nWhen Gift of Wrath leaves the battlefield, create a 2/2 red Spirit creature token with menace.

View File

@@ -0,0 +1,12 @@
Name:Go-Shintai of Boundless Vigor
ManaCost:1 G
Types:Legendary Enchantment Creature Shrine
PT:1/1
K:Trample
T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigImmediateTrig | TriggerDescription$ At the beginning of your end step, you may pay {1}. When you do, put a +1/+1 counter on target Shrine for each Shrine you control.
SVar:TrigImmediateTrig:AB$ ImmediateTrigger | Cost$ 1 | Execute$ TrigPutCounter | SpellDescription$ Put a +1/+1 counter on target Shrine for each Shrine you control.
SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Shrine | TgtPrompt$ Select target Shrine | CounterType$ P1P1 | CounterNum$ X
SVar:X:Count$TypeYouCtrl.Shrine
DeckHas:Ability$Counters
DeckNeeds:Type$Shrine
Oracle:Trample\nAt the beginning of your end step, you may pay {1}. When you do, put a +1/+1 counter on target Shrine for each Shrine you control.

View File

@@ -0,0 +1,10 @@
Name:Greasefang, Okiba Boss
ManaCost:1 W B
Types:Legendary Creature Rat Pilot
PT:4/3
T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigReturn | TriggerDescription$ At the beginning of combat on your turn, return target Vehicle card from your graveyard to the battlefield. It gains haste. Return it to its owner's hand at the beginning of your next end step.
SVar:TrigReturn:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | TgtPrompt$ Select target Vehicle card in your graveyard | ValidTgts$ Vehicle.YouOwn | AnimateSubAbility$ Animate
SVar:Animate:DB$ Animate | Keywords$ Haste | Defined$ Remembered | Duration$ Permanent | AtEOT$ Hand
DeckHas:Ability$Graveyard
DeckNeeds:Type$Vehicle
Oracle:At the beginning of combat on your turn, return target Vehicle card from your graveyard to the battlefield. It gains haste. Return it to its owner's hand at the beginning of your next end step.

View File

@@ -0,0 +1,9 @@
Name:Heir of the Ancient Fang
ManaCost:2 G
Types:Creature Snake Samurai
PT:2/3
K:etbCounter:P1P1:1:CheckSVar$ Mod:CARDNAME enters the battlefield with a +1/+1 counter on it if you control a modified creature. (Equipment, Auras you control, and counters are modifications.)
SVar:Mod:Count$Valid Creature.YouCtrl+modified
DeckHas:Ability$Counters
DeckHints:Type$Aura|Equipment & Ability$Counters
Oracle:Heir of the Ancient Fang enters the battlefield with a +1/+1 counter on it if you control a modified creature. (Equipment, Auras you control, and counters are modifications.)

View File

@@ -0,0 +1,8 @@
Name:Ironhoof Boar
ManaCost:5 R
Types:Artifact Creature Boar
PT:5/4
K:Trample
K:Haste
A:AB$ Pump | PrecostDesc$ Channel — | Cost$ 1 R Discard<1/CARDNAME> | ActivationZone$ Hand | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumAtt$ 3 | NumDef$ 1 | KW$ Trample | SpellDescription$ Target creature gets +3/+1 and gains trample until end of turn.
Oracle:Trample, haste\nChannel — {1}{R}, Discard Ironhoof Boar: Target creature gets +3/+1 and gains trample until end of turn.

View File

@@ -0,0 +1,9 @@
Name:Kami of Industry
ManaCost:4 R
Types:Creature Spirit
PT:3/6
T:Mode$ ChangesZone | ValidCard$ Card.Self | Destination$ Battlefield | Execute$ TrigReturn | TriggerDescription$ When CARDNAME enters the battlefield, return target artifact card with mana value 3 or less from your graveyard to the battlefield. It gains haste. Sacrifice it at the beginning of the next end step.
SVar:TrigReturn:DB$ ChangeZone | ValidTgts$ Artifact.YouCtrl+cmcLE3 | TgtPrompt$ Select target artifact card with mana value 3 or less in your graveyard | Origin$ Graveyard | Destination$ Battlefield | SubAbility$ DBAnimate
SVar:DBAnimate:DB$ Animate | Keywords$ Haste | Defined$ Targeted | Duration$ Permanent | AtEOT$ Sacrifice
DeckHints:Type$Artifact
Oracle:When Kami of Industry enters the battlefield, return target artifact card with mana value 3 or less from your graveyard to the battlefield. It gains haste. Sacrifice it at the beginning of the next end step.

View File

@@ -0,0 +1,7 @@
Name:Kami's Flare
ManaCost:1 R
Types:Instant
A:SP$ DealDamage | Cost$ 1 R | ValidTgts$ Creature,Planeswalker | TgtPrompt$ Select target creature or planeswalker | NumDmg$ 3 | SubAbility$ DBDamage | SpellDescription$ CARDNAME deals 3 damage to target creature or planeswalker. CARDNAME also deals 2 damage to that permanent's controller if you control a modified creature. (Equipment, Auras you control, and counters are modifications.)
SVar:DBDamage:DB$ DealDamage | Defined$ TargetedController | NumDmg$ 2 | ConditionPresent$ Creature.YouCtrl+modified | ConditionCompare$ GE1 | StackDescription$ Deals 2 damage to {p:TargetedController} if {p:You} controls a modified creature.
DeckHints:Type$Equipment|Aura & Ability$Counters
Oracle:Kami's Flare deals 3 damage to target creature or planeswalker. Kami's Flare also deals 2 damage to that permanent's controller if you control a modified creature. (Equipment, Auras you control, and counters are modifications.)

View File

@@ -0,0 +1,10 @@
Name:Komainu Battle Armor
ManaCost:2 R
Types:Artifact Creature Equipment Dog
PT:2/2
K:Menace
K:Reconfigure:4
S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddPower$ 2 | AddToughness$ 2 | AddKeyword$ Menace | Description$ Equipped creature gets +2/+2 and has menace.
T:Mode$ DamageDone | ValidSource$ Card.Self,Creature.EquippedBy | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigGoad | TriggerDescription$ Whenever CARDNAME or equipped creature deals combat damage to a player, goad each creature that player controls.
SVar:TrigGoad:DB$ Goad | Defined$ Valid Creature.ControlledBy Player.TriggeredTarget
Oracle:Menace\nEquipped creature gets +2/+2 and has menace.\nWhenever Komainu Battle Armor or equipped creature deals combat damage to a player, goad each creature that player controls.\nReconfigure {4} ({4}: Attach to target creature you control; or unattach from a creature. Reconfigure only as a sorcery. While attached, this isn't a creature.)

View File

@@ -0,0 +1,8 @@
Name:Moonsnare Specialist
ManaCost:3 U
Types:Creature Human Ninja
PT:2/2
K:Ninjutsu:2 U
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigReturn | TriggerDescription$ When CARDNAME enters the battlefield, return up to one target creature to its owner's hand.
SVar:TrigReturn:DB$ ChangeZone | ValidTgts$ Creature | TargetMin$ 0 | TargetMax$ 1 | Origin$ Battlefield | Destination$ Hand | TgtPrompt$ Select up to one target creature
Oracle:Ninjutsu {2}{U} ({2}{U}, Return an unblocked attacker you control to hand: Put this card onto the battlefield from your hand tapped and attacking.)\nWhen Moonsnare Specialist enters the battlefield, return up to one target creature to its owner's hand.

View File

@@ -0,0 +1,10 @@
Name:Replication Specialist
ManaCost:4 U
Types:Creature Moonfolk Artificer
PT:3/4
K:Flying
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Artifact.nonToken+YouCtrl | TriggerZones$ Battlefield | Execute$ TrigCopy | TriggerDescription$ Whenever a nontoken artifact enters the battlefield under your control, you may pay {1}{U}. If you do, create a token that's a copy of that artifact.
SVar:TrigCopy:AB$ CopyPermanent | Cost$ 1 U | Defined$ TriggeredCard
DeckNeeds:Type$Artifact
DeckHas:Ability$Token
Oracle:Flying\nWhenever a nontoken artifact enters the battlefield under your control, you may pay {1}{U}. If you do, create a token that's a copy of that artifact.

View File

@@ -0,0 +1,8 @@
Name:Scrapyard Steelbreaker
ManaCost:3 R
Types:Artifact Creature Human Warrior
PT:3/4
A:AB$ Pump | Cost$ 1 Sac<1/Artifact.Other/another artifact> | NumAtt$ 2 | NumDef$ 1 | SpellDescription$ CARDNAME gets +2/+1 until end of turn.
DeckHas:Ability$Sacrifice
DeckHints:Type$Artifact
Oracle:{1}, Sacrifice another artifact: Scrapyard Steelbreaker gets +2/+1 until end of turn.

View File

@@ -0,0 +1,6 @@
Name:Seismic Wave
ManaCost:2 R
Types:Instant
A:SP$ DealDamage | Cost$ 2 R | ValidTgts$ Creature,Player,Planeswalker | TgtPrompt$ Select any target | NumDmg$ 2 | SubAbility$ DBDamage | SpellDescription$ CARDNAME deals 2 damage to any target and 1 damage to each nonartifact creature target opponent controls.
SVar:DBDamage:DB$ DamageAll | ValidTgts$ Opponent | TgtPrompt$ Select target opponent | NumDmg$ 1 | ValidCards$ Creature.nonArtifact | ValidDescription$ each nonartifact creature target opponent controls.
Oracle:Seismic Wave deals 2 damage to any target and 1 damage to each nonartifact creature target opponent controls.

View File

@@ -0,0 +1,12 @@
Name:Thundering Raiju
ManaCost:2 R R
Types:Creature Spirit
PT:3/3
K:Haste
T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigCounter | TriggerDescription$ Whenever CARDNAME attacks, put a +1/+1 counter on target creature you control. Then CARDNAME deals X damage to each opponent, where X is the number of modified creatures you control other than CARDNAME. (Equipment, Auras you control, and counters are modifications.)
SVar:TrigCounter:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBDamage
SVar:DBDamage:DB$ DamageAll | ValidPlayers$ Opponent | NumDmg$ X
SVar:X:Count$Valid Creature.Other+YouCtrl+modified
DeckHas:Ability$Counters
DeckHints:Type$Equipment|Aura & Ability$Counters
Oracle:Haste\nWhenever Thundering Raiju attacks, put a +1/+1 counter on target creature you control. Then Thundering Raiju deals X damage to each opponent, where X is the number of modified creatures you control other than Thundering Raiju. (Equipment, Auras you control, and counters are modifications.)

View File

@@ -0,0 +1,9 @@
Name:Towashi Songshaper
ManaCost:1 R
Types:Artifact Creature Human Artificer
PT:2/2
T:Mode$ ChangesZone | ValidCard$ Artifact.YouCtrl+Other | Destination$ Battlefield | TriggerZones$ Battlefield | Execute$ TrigPump | TriggerDescription$ Whenever another artifact enters the battlefield under your control, CARDNAME gets +1/+0 until end of turn.
SVar:TrigPump:DB$ Pump | NumAtt$ 1
SVar:BuffedBy:Artifact
DeckHints:Type$Artifact
Oracle:Whenever another artifact enters the battlefield under your control, Towashi Songshaper gets +1/+0 until end of turn.

View File

@@ -0,0 +1,8 @@
Name:Universal Surveillance
ManaCost:X U U U
Types:Sorcery
K:Improvise
A:SP$ Draw | Cost$ X U U U | NumCards$ X | SpellDescription$ Draw X cards.
SVar:X:Count$xPaid
DeckHints:Type$Artifact
Oracle:Improvise (Your artifacts can help cast this spell. Each artifact you tap after you're done activating mana abilities pays for {1}.)\nDraw X cards.

View File

@@ -0,0 +1,8 @@
Name:Virus Beetle
ManaCost:1 B
Types:Artifact Creature Insect
PT:1/1
T:Mode$ ChangesZone | ValidCard$ Card.Self | Destination$ Battlefield | Execute$ TrigDiscard | TriggerDescription$ When CARDNAME enters the battlefield, each opponent discards a card.
SVar:TrigDiscard:DB$ Discard | Defined$ Opponent | NumCards$ 1 | Mode$ TgtChoose
DeckHas:Ability$Discard
Oracle:When Virus Beetle enters the battlefield, each opponent discards a card.

View File

@@ -0,0 +1,10 @@
Name:Yoshimaru, Ever Faithful
ManaCost:W
Types:Legendary Creature Dog
PT:1/1
K:Partner
T:Mode$ ChangesZone | ValidCard$ Card.Legendary+Other+YouCtrl | Destination$ Battlefield | TriggerZones$ Battlefield | Execute$ TrigCounter | TriggerDescription$ Whenever another legendary permanent enters the battlefield under your control, put a +1/+1 counter on CARDNAME.
SVar:TrigCounter:DB$ PutCounter | CounterType$ P1P1 | CounterNum$ 1
DeckHas:Ability$Counters
DeckNeeds:Type$Legendary
Oracle:Whenever another legendary permanent enters the battlefield under your control, put a +1/+1 counter on Yoshimaru, Ever Faithful.\nPartner (You can have two commanders if both have partner.)

View File

@@ -5,7 +5,7 @@ Name=2016 Heroes of the Realm
Code2=HTR
MciCode=htr
Type=Funny
ScryfallCode=htr16
ScryfallCode=HTR16
[cards]
1 M Chandra, Gremlin Wrangler @Kari Christensen

View File

@@ -12,3 +12,4 @@ ScryfallCode=HTR18
2 M Optimus Prime, Inspiring Leader @Steve Argyle
3 M Sol, Advocate Eternal @Randy Vargas
4 M The Legend of Arena @Olena Richards
4† M The Legend of Arena @Noah Bradley

View File

@@ -3,5 +3,5 @@ Name:Brawl
Order:101
Type:Casual
Subtype:Commander
Sets:ZNR, KHM, STX, AFR, MID, VOW
Sets:ZNR, KHM, STX, AFR, MID, VOW, NEO
Banned:Omnath, Locus of Creation; Pithing Needle

View File

@@ -4,5 +4,5 @@ Type:Digital
Subtype:Arena
Effective:2019-11-21
Order:142
Sets:XLN, RIX, DOM, M19, GRN, G18, RNA, WAR, M20, ELD, HA1, THB, HA2, IKO, HA3, M21, JMP, AKR, ANB, ZNR, KLR, KHM, HA4, STX, STA, HA5, AFR, J21, MID, VOW, Y22
Sets:XLN, RIX, DOM, M19, GRN, G18, RNA, WAR, M20, ELD, HA1, THB, HA2, IKO, HA3, M21, JMP, AKR, ANB, ZNR, KLR, KHM, HA4, STX, STA, HA5, AFR, J21, MID, VOW, Y22, NEO
Banned:Agent of Treachery; Brainstorm; Channel; Counterspell; Dark Ritual; Demonic Tutor; Field of the Dead; Fires of Invention; Lightning Bolt; Memory Lapse; Natural Order; Nexus of Fate; Oko, Thief of Crowns; Once Upon a Time; Swords to Plowshares; Thassa's Oracle; Tibalt's Trickery; Time Warp; Uro, Titan of Nature's Wrath; Veil of Summer; Wilderness Reclamation; Winota, Joiner of Forces

View File

@@ -3,5 +3,5 @@ Name:Legacy
Order:105
Subtype:Legacy
Type:Sanctioned
Sets:7ED, 9ED, ORI, M14, M15, 6ED, 8ED, M11, 3ED, M10, M12, 10E, M13, G18, M21, M20, M19, 5ED, 2ED, 4ED, LEB, LEA, 5DN, SOM, KTK, THS, DIS, JOU, MOR, TMP, SOI, FEM, USG, ALL, ROE, EXO, TSP, LRW, TOR, ALA, RIX, DGM, DKA, MBS, AER, RNA, GTC, CSP, HML, NPH, OGW, ZNR, EMN, UDS, SHM, BNG, SOK, EVE, INV, THB, DOM, NMS, VIS, WAR, GRN, PCY, SCG, MRD, XLN, ONS, IKO, MMQ, CHK, ULG, AKH, MIR, ISD, AVR, KLD, APC, RTR, WWK, PLC, HOU, LEG, AFR, ARN, ICE, STX, LGN, ARB, KHM, CFX, TSB, ZEN, ELD, JUD, GPT, BFZ, BOK, DTK, FRF, FUT, WTH, ODY, RAV, ATQ, DRK, PLS, STH, DST, TD2, HA1, ME4, HA3, HA2, HA5, HA4, MED, ANB, ME3, KLR, PZ2, ANA, PRM, PZ1, AJMP, ME2, TD1, TD0, TPR, VMA, AKR, MBP, PZEN, PGTW, PL21, PFUT, PWAR, PAL01, PJUD, PAL00, PTKDF, PWOR, PWP12, PSTH, POGW, PFRF, PG07, PSUS, PUST, J18, PWP10, PAL02, PAL03, PWP11, J19, PGRN, PM10, PDP14, PRTR, PMPS06, PBNG, PJ21, G09, PNPH, PM15, PAL06, G08, PDST, J20, PMBS, PMPS07, PEXO, PDOM, PONS, PRW2, PMPS11, PMPS, PM19, PWWK, PCEL, PAL04, PAL05, PMPS10, PDTK, PALP, F10, F04, PMOR, PAL99, PEMN, PCNS, PPLC, PRAV, PPP1, PI14, PXLN, PF20, PTSP, F05, F11, PSCG, PBOOK, F07, F13, PODY, PM12, P08, PSS1, P2HG, P09, PTOR, PDP13, F12, F06, PALA, PXTC, F02, F16, PHOU, PSOM, PI13, PCON, PDGM, PIDW, PMRD, PRNA, P9ED, PHEL, F17, F03, PURL, F15, F01, PWOS, PPC1, PBOK, PTMP, PS19, PS18, PF19, PGPT, PCHK, FNM, F14, PISD, PAKH, PDP15, PRIX, PS15, PPCY, OLGC, OVNT, PLGN, PS14, P03, PDTP, PM14, FS, PPLS, MPR, PKTK, PS16, PRWK, PS17, PBFZ, PSS2, PINV, G03, P8ED, PARL, P04, P10, PSDC, JGP, G99, WW, P11, P05, PDIS, PROE, PDP10, F08, P10E, PELP, PMH1, P07, P5DN, PGRU, SHC, PM11, P06, PUSG, PCMP, PULG, F09, PUDS, PARB, DRC94, PMPS09, PORI, J12, G06, PMMQ, G07, J13, PMPS08, PM20, PSOI, PJSE, G05, G11, PNAT, PSOK, PEVE, PRED, G10, G04, PSHM, PPRO, PAPC, PJJT, ARENA, PKLD, G00, J14, PLGM, P15A, PCSP, PWPN, PJAS, PWP21, PWP09, PDKA, PNEM, PPTK, J15, G01, PG08, PLRW, PMEI, PM13, PHJ, PGTC, J17, PRES, PWCQ, PJOU, PDP12, PAER, PAVR, PTHS, G02, J16, PSUM, PGPX, UGF, PSS3, MM2, MM3, MB1, FMB1, A25, 2XM, MMA, PLIST, CHR, EMA, IMA, TSR, UMA, PUMA, E02, DPA, ATH, MD1, GK1, GK2, CST, BRB, BTD, DKM, FVE, V17, V13, STA, MPS_RNA, V16, SLD, V12, CC1, MPS_GRN, DRB, FVR, SS3, SS1, MPS_AKH, FVL, V15, MPS_KLD, ZNE, PDS, SS2, PD3, SLU, V14, PD2, EXP, MPS_WAR, DDQ, DDE, GS1, DDS, DDU, DD1, DDL, DDF, DDP, DD2, DDR, DDH, DDT, DDK, DDG, DDC, DDM, DDJ, DDO, GVL, JVC, DDI, DVD, DDN, EVG, DDD, C18, C19, C21, C20, C13, CMA, C14, C15, KHC, ZNC, AFC, C17, C16, COM, CM1, CM2, PO2, S99, W16, W17, S00, PTK, CP3, POR, CP1, CP2, CMR, MH2, H1R, CNS, BBD, MH1, CN2, JMP, PCA, GNT, ARC, GN2, PC2, E01, HOP, PLG20, PLG21, CC2, MID, MIC, VOW, VOC
Sets:7ED, 9ED, ORI, M14, M15, 6ED, 8ED, M11, 3ED, M10, M12, 10E, M13, G18, M21, M20, M19, 5ED, 2ED, 4ED, LEB, LEA, 5DN, SOM, KTK, THS, DIS, JOU, MOR, TMP, SOI, FEM, USG, ALL, ROE, EXO, TSP, LRW, TOR, ALA, RIX, DGM, DKA, MBS, AER, RNA, GTC, CSP, HML, NPH, OGW, ZNR, EMN, UDS, SHM, BNG, SOK, EVE, INV, THB, DOM, NMS, VIS, WAR, GRN, PCY, SCG, MRD, XLN, ONS, IKO, MMQ, CHK, ULG, AKH, MIR, ISD, AVR, KLD, APC, RTR, WWK, PLC, HOU, LEG, AFR, ARN, ICE, STX, LGN, ARB, KHM, CFX, TSB, ZEN, ELD, JUD, GPT, BFZ, BOK, DTK, FRF, FUT, WTH, ODY, RAV, ATQ, DRK, PLS, STH, DST, TD2, HA1, ME4, HA3, HA2, HA5, HA4, MED, ANB, ME3, KLR, PZ2, ANA, PRM, PZ1, AJMP, ME2, TD1, TD0, TPR, VMA, AKR, MBP, PZEN, PGTW, PL21, PFUT, PWAR, PAL01, PJUD, PAL00, PTKDF, PWOR, PWP12, PSTH, POGW, PFRF, PG07, PSUS, PUST, J18, PWP10, PAL02, PAL03, PWP11, J19, PGRN, PM10, PDP14, PRTR, PMPS06, PBNG, PJ21, G09, PNPH, PM15, PAL06, G08, PDST, J20, PMBS, PMPS07, PEXO, PDOM, PONS, PRW2, PMPS11, PMPS, PM19, PWWK, PCEL, PAL04, PAL05, PMPS10, PDTK, PALP, F10, F04, PMOR, PAL99, PEMN, PCNS, PPLC, PRAV, PPP1, PI14, PXLN, PF20, PTSP, F05, F11, PSCG, PBOOK, F07, F13, PODY, PM12, P08, PSS1, P2HG, P09, PTOR, PDP13, F12, F06, PALA, PXTC, F02, F16, PHOU, PSOM, PI13, PCON, PDGM, PIDW, PMRD, PRNA, P9ED, PHEL, F17, F03, PURL, F15, F01, PWOS, PPC1, PBOK, PTMP, PS19, PS18, PF19, PGPT, PCHK, FNM, F14, PISD, PAKH, PDP15, PRIX, PS15, PPCY, OLGC, OVNT, PLGN, PS14, P03, PDTP, PM14, FS, PPLS, MPR, PKTK, PS16, PRWK, PS17, PBFZ, PSS2, PINV, G03, P8ED, PARL, P04, P10, PSDC, JGP, G99, WW, P11, P05, PDIS, PROE, PDP10, F08, P10E, PELP, PMH1, P07, P5DN, PGRU, SHC, PM11, P06, PUSG, PCMP, PULG, F09, PUDS, PARB, DRC94, PMPS09, PORI, J12, G06, PMMQ, G07, J13, PMPS08, PM20, PSOI, PJSE, G05, G11, PNAT, PSOK, PEVE, PRED, G10, G04, PSHM, PPRO, PAPC, PJJT, ARENA, PKLD, G00, J14, PLGM, P15A, PCSP, PWPN, PJAS, PWP21, PWP09, PDKA, PNEM, PPTK, J15, G01, PG08, PLRW, PMEI, PM13, PHJ, PGTC, J17, PRES, PWCQ, PJOU, PDP12, PAER, PAVR, PTHS, G02, J16, PSUM, PGPX, UGF, PSS3, MM2, MM3, MB1, FMB1, A25, 2XM, MMA, PLIST, CHR, EMA, IMA, TSR, UMA, PUMA, E02, DPA, ATH, MD1, GK1, GK2, CST, BRB, BTD, DKM, FVE, V17, V13, STA, MPS_RNA, V16, SLD, V12, CC1, MPS_GRN, DRB, FVR, SS3, SS1, MPS_AKH, FVL, V15, MPS_KLD, ZNE, PDS, SS2, PD3, SLU, V14, PD2, EXP, MPS_WAR, DDQ, DDE, GS1, DDS, DDU, DD1, DDL, DDF, DDP, DD2, DDR, DDH, DDT, DDK, DDG, DDC, DDM, DDJ, DDO, GVL, JVC, DDI, DVD, DDN, EVG, DDD, C18, C19, C21, C20, C13, CMA, C14, C15, KHC, ZNC, AFC, C17, C16, COM, CM1, CM2, PO2, S99, W16, W17, S00, PTK, CP3, POR, CP1, CP2, CMR, MH2, H1R, CNS, BBD, MH1, CN2, JMP, PCA, GNT, ARC, GN2, PC2, E01, HOP, PLG20, PLG21, CC2, MID, MIC, VOW, VOC, NEO, NEC
Banned:Adriana's Valor; Advantageous Proclamation; Arcum's Astrolabe; Assemble the Rank and Vile; Backup Plan; Brago's Favor; Deathrite Shaman; Double Stroke; Dreadhorde Arcanist; Echoing Boon; Emissary's Ploy; Gitaxian Probe; Hired Heist; Hold the Perimeter; Hymn of the Wilds; Immediate Action; Incendiary Dissent; Iterative Analysis; Lurrus of the Dream-Den; Muzzio's Preparations; Natural Unity; Oko, Thief of Crowns; Power Play; Ragavan, Nimble Pilferer; Secret Summoning; Secrets of Paradise; Sentinel Dispatch; Sovereign's Realm; Summoner's Bond; Underworld Breach; Unexpected Potential; Weight Advantage; Worldknit; Amulet of Quoz; Bronze Tablet; Contract from Below; Darkpact; Demonic Attorney; Jeweled Bird; Rebirth; Tempest Efreet; Timmerian Fiends; Ancestral Recall; Balance; Bazaar of Baghdad; Black Lotus; Channel; Chaos Orb; Demonic Consultation; Demonic Tutor; Dig Through Time; Earthcraft; Falling Star; Fastbond; Flash; Frantic Search; Goblin Recruiter; Gush; Hermit Druid; Imperial Seal; Library of Alexandria; Mana Crypt; Mana Drain; Mana Vault; Memory Jar; Mental Misstep; Mind Twist; Mind's Desire; Mishra's Workshop; Mox Emerald; Mox Jet; Mox Pearl; Mox Ruby; Mox Sapphire; Mystical Tutor; Necropotence; Oath of Druids; Sensei's Divining Top; Shahrazad; Skullclamp; Sol Ring; Strip Mine; Survival of the Fittest; Time Vault; Time Walk; Timetwister; Tinker; Tolarian Academy; Treasure Cruise; Vampiric Tutor; Wheel of Fortune; Windfall; Wrenn and Six; Yawgmoth's Bargain; Yawgmoth's Will; Zirda, the Dawnwaker; Cleanse; Crusade; Imprison; Invoke Prejudice; Jihad; Pradesh Gypsies; Stone-Throwing Devils

View File

@@ -3,5 +3,5 @@ Name:Modern
Order:103
Subtype:Modern
Type:Sanctioned
Sets:8ED, MRD, DST, 5DN, CHK, BOK, SOK, 9ED, RAV, GPT, DIS, CSP, TSP, TSB, TSR, PLC, FUT, 10E, LRW, EVE, SHM, MOR, ALA, CFX, ARB, M10, ZEN, WWK, ROE, M11, SOM, MBS, NPH, M12, ISD, DKA, AVR, M13, RTR, GTC, DGM, M14, THS, BNG, JOU, M15, KTK, FRF, DTK, MMA, MM2, MM3, ORI, BFZ, OGW, SOI, EMN, KLD, AER, AKH, W16, W17, HOU, XLN, RIX, DOM, M19, G18, GRN, RNA, WAR, MH1, M20, ELD, THB, IKO, M21, ZNR, KHM, STX, MH2, AFR, MID, VOW
Sets:8ED, MRD, DST, 5DN, CHK, BOK, SOK, 9ED, RAV, GPT, DIS, CSP, TSP, TSB, TSR, PLC, FUT, 10E, LRW, EVE, SHM, MOR, ALA, CFX, ARB, M10, ZEN, WWK, ROE, M11, SOM, MBS, NPH, M12, ISD, DKA, AVR, M13, RTR, GTC, DGM, M14, THS, BNG, JOU, M15, KTK, FRF, DTK, MMA, MM2, MM3, ORI, BFZ, OGW, SOI, EMN, KLD, AER, AKH, W16, W17, HOU, XLN, RIX, DOM, M19, G18, GRN, RNA, WAR, MH1, M20, ELD, THB, IKO, M21, ZNR, KHM, STX, MH2, AFR, MID, VOW, NEO
Banned:Ancient Den; Arcum's Astrolabe; Birthing Pod; Blazing Shoal; Bridge from Below; Chrome Mox; Cloudpost; Dark Depths; Deathrite Shaman; Dig Through Time; Dread Return; Eye of Ugin; Faithless Looting; Field of the Dead; Gitaxian Probe; Glimpse of Nature; Golgari Grave-Troll; Great Furnace; Green Sun's Zenith; Hogaak, Arisen Necropolis; Hypergenesis; Krark-Clan Ironworks; Mental Misstep; Mox Opal; Mycosynth Lattice; Mystic Sanctuary; Oko, Thief of Crowns; Once Upon A Time; Ponder; Preordain; Punishing Fire; Rite of Flame; Seat of the Synod; Second Sunrise; Seething Song; Sensei's Divining Top; Simian Spirit Guide; Skullclamp; Splinter Twin; Summer Bloom; Tibalt's Trickery; Treasure Cruise; Tree of Tales; Umezawa's Jitte; Uro, Titan of Nature's Wrath; Vault of Whispers

View File

@@ -3,5 +3,5 @@ Name:Pioneer
Order:102
Subtype:Pioneer
Type:Sanctioned
Sets:RTR, GTC, DGM, M14, THS, BNG, JOU, M15, KTK, FRF, DTK, ORI, BFZ, OGW, SOI, EMN, KLD, AER, AKH, HOU, XLN, RIX, DOM, M19, G18, GRN, RNA, WAR, M20, ELD, THB, IKO, M21, ZNR, KHM, STX, AFR, MID, VOW
Sets:RTR, GTC, DGM, M14, THS, BNG, JOU, M15, KTK, FRF, DTK, ORI, BFZ, OGW, SOI, EMN, KLD, AER, AKH, HOU, XLN, RIX, DOM, M19, G18, GRN, RNA, WAR, M20, ELD, THB, IKO, M21, ZNR, KHM, STX, AFR, MID, VOW, NEO
Banned:Balustrade Spy; Bloodstained Mire; Felidar Guardian; Field of the Dead; Flooded Strand; Inverter of Truth; Kethis, the Hidden Hand; Leyline of Abundance; Nexus of Fate; Oko, Thief of Crowns; Once Upon a Time; Polluted Delta; Smuggler's Copter; Teferi, Time Raveler; Undercity Informer; Underworld Breach; Uro, Titan of Nature's Wrath; Veil of Summer; Walking Ballista; Wilderness Reclamation; Windswept Heath; Wooded Foothills

View File

@@ -3,5 +3,5 @@ Name:Standard
Order:101
Subtype:Standard
Type:Sanctioned
Sets:ZNR, KHM, STX, AFR, MID, VOW
Sets:ZNR, KHM, STX, AFR, MID, VOW, NEO
Banned:Alrund's Epiphany; Divide by Zero; Faceless Haven; Omnath, Locus of Creation

View File

@@ -3,6 +3,6 @@ Name:Vintage
Order:104
Subtype:Vintage
Type:Sanctioned
Sets:7ED, 9ED, ORI, M14, M15, 6ED, 8ED, M11, 3ED, M10, M12, 10E, M13, G18, M21, M20, M19, 5ED, 2ED, 4ED, LEB, LEA, 5DN, SOM, KTK, THS, DIS, JOU, MOR, TMP, SOI, FEM, USG, ALL, ROE, EXO, TSP, LRW, TOR, ALA, RIX, DGM, DKA, MBS, AER, RNA, GTC, CSP, HML, NPH, OGW, ZNR, EMN, UDS, SHM, BNG, SOK, EVE, INV, THB, DOM, NMS, VIS, WAR, GRN, PCY, SCG, MRD, XLN, ONS, IKO, MMQ, CHK, ULG, AKH, MIR, ISD, AVR, KLD, APC, RTR, WWK, PLC, HOU, LEG, AFR, ARN, ICE, STX, LGN, ARB, KHM, CFX, TSB, ZEN, ELD, JUD, GPT, BFZ, BOK, DTK, FRF, FUT, WTH, ODY, RAV, ATQ, DRK, PLS, STH, DST, TD2, HA1, ME4, HA3, HA2, HA5, HA4, MED, ANB, ME3, KLR, PZ2, ANA, PRM, PZ1, AJMP, ME2, TD1, TD0, TPR, VMA, AKR, MBP, PZEN, PGTW, PL21, PFUT, PWAR, PAL01, PJUD, PAL00, PTKDF, PWOR, PWP12, PSTH, POGW, PFRF, PG07, PSUS, PUST, J18, PWP10, PAL02, PAL03, PWP11, J19, PGRN, PM10, PDP14, PRTR, PMPS06, PBNG, PJ21, G09, PNPH, PM15, PAL06, G08, PDST, J20, PMBS, PMPS07, PEXO, PDOM, PONS, PRW2, PMPS11, PMPS, PM19, PWWK, PCEL, PAL04, PAL05, PMPS10, PDTK, PALP, F10, F04, PMOR, PAL99, PEMN, PCNS, PPLC, PRAV, PPP1, PI14, PXLN, PF20, PTSP, F05, F11, PSCG, PBOOK, F07, F13, PODY, PM12, P08, PSS1, P2HG, P09, PTOR, PDP13, F12, F06, PALA, PXTC, F02, F16, PHOU, PSOM, PI13, PCON, PDGM, PIDW, PMRD, PRNA, P9ED, PHEL, F17, F03, PURL, F15, F01, PWOS, PPC1, PBOK, PTMP, PS19, PS18, PF19, PGPT, PCHK, FNM, F14, PISD, PAKH, PDP15, PRIX, PS15, PPCY, OLGC, OVNT, PLGN, PS14, P03, PDTP, PM14, FS, PPLS, MPR, PKTK, PS16, PRWK, PS17, PBFZ, PSS2, PINV, G03, P8ED, PARL, P04, P10, PSDC, JGP, G99, WW, P11, P05, PDIS, PROE, PDP10, F08, P10E, PELP, PMH1, P07, P5DN, PGRU, SHC, PM11, P06, PUSG, PCMP, PULG, F09, PUDS, PARB, DRC94, PMPS09, PORI, J12, G06, PMMQ, G07, J13, PMPS08, PM20, PSOI, PJSE, G05, G11, PNAT, PSOK, PEVE, PRED, G10, G04, PSHM, PPRO, PAPC, PJJT, ARENA, PKLD, G00, J14, PLGM, P15A, PCSP, PWPN, PJAS, PWP21, PWP09, PDKA, PNEM, PPTK, J15, G01, PG08, PLRW, PMEI, PM13, PHJ, PGTC, J17, PRES, PWCQ, PJOU, PDP12, PAER, PAVR, PTHS, G02, J16, PSUM, PGPX, UGF, PSS3, MM2, MM3, MB1, FMB1, A25, 2XM, MMA, PLIST, CHR, EMA, IMA, TSR, UMA, PUMA, E02, DPA, ATH, MD1, GK1, GK2, CST, BRB, BTD, DKM, FVE, V17, V13, STA, MPS_RNA, V16, SLD, V12, CC1, MPS_GRN, DRB, FVR, SS3, SS1, MPS_AKH, FVL, V15, MPS_KLD, ZNE, PDS, SS2, PD3, SLU, V14, PD2, EXP, MPS_WAR, DDQ, DDE, GS1, DDS, DDU, DD1, DDL, DDF, DDP, DD2, DDR, DDH, DDT, DDK, DDG, DDC, DDM, DDJ, DDO, GVL, JVC, DDI, DVD, DDN, EVG, DDD, C18, C19, C21, C20, C13, CMA, C14, C15, KHC, ZNC, AFC, C17, C16, COM, CM1, CM2, PO2, S99, W16, W17, S00, PTK, CP3, POR, CP1, CP2, CMR, MH2, H1R, CNS, BBD, MH1, CN2, JMP, PCA, GNT, ARC, GN2, PC2, E01, HOP, PLG20, PLG21, CC2, MID, MIC, VOW, VOC
Sets:7ED, 9ED, ORI, M14, M15, 6ED, 8ED, M11, 3ED, M10, M12, 10E, M13, G18, M21, M20, M19, 5ED, 2ED, 4ED, LEB, LEA, 5DN, SOM, KTK, THS, DIS, JOU, MOR, TMP, SOI, FEM, USG, ALL, ROE, EXO, TSP, LRW, TOR, ALA, RIX, DGM, DKA, MBS, AER, RNA, GTC, CSP, HML, NPH, OGW, ZNR, EMN, UDS, SHM, BNG, SOK, EVE, INV, THB, DOM, NMS, VIS, WAR, GRN, PCY, SCG, MRD, XLN, ONS, IKO, MMQ, CHK, ULG, AKH, MIR, ISD, AVR, KLD, APC, RTR, WWK, PLC, HOU, LEG, AFR, ARN, ICE, STX, LGN, ARB, KHM, CFX, TSB, ZEN, ELD, JUD, GPT, BFZ, BOK, DTK, FRF, FUT, WTH, ODY, RAV, ATQ, DRK, PLS, STH, DST, TD2, HA1, ME4, HA3, HA2, HA5, HA4, MED, ANB, ME3, KLR, PZ2, ANA, PRM, PZ1, AJMP, ME2, TD1, TD0, TPR, VMA, AKR, MBP, PZEN, PGTW, PL21, PFUT, PWAR, PAL01, PJUD, PAL00, PTKDF, PWOR, PWP12, PSTH, POGW, PFRF, PG07, PSUS, PUST, J18, PWP10, PAL02, PAL03, PWP11, J19, PGRN, PM10, PDP14, PRTR, PMPS06, PBNG, PJ21, G09, PNPH, PM15, PAL06, G08, PDST, J20, PMBS, PMPS07, PEXO, PDOM, PONS, PRW2, PMPS11, PMPS, PM19, PWWK, PCEL, PAL04, PAL05, PMPS10, PDTK, PALP, F10, F04, PMOR, PAL99, PEMN, PCNS, PPLC, PRAV, PPP1, PI14, PXLN, PF20, PTSP, F05, F11, PSCG, PBOOK, F07, F13, PODY, PM12, P08, PSS1, P2HG, P09, PTOR, PDP13, F12, F06, PALA, PXTC, F02, F16, PHOU, PSOM, PI13, PCON, PDGM, PIDW, PMRD, PRNA, P9ED, PHEL, F17, F03, PURL, F15, F01, PWOS, PPC1, PBOK, PTMP, PS19, PS18, PF19, PGPT, PCHK, FNM, F14, PISD, PAKH, PDP15, PRIX, PS15, PPCY, OLGC, OVNT, PLGN, PS14, P03, PDTP, PM14, FS, PPLS, MPR, PKTK, PS16, PRWK, PS17, PBFZ, PSS2, PINV, G03, P8ED, PARL, P04, P10, PSDC, JGP, G99, WW, P11, P05, PDIS, PROE, PDP10, F08, P10E, PELP, PMH1, P07, P5DN, PGRU, SHC, PM11, P06, PUSG, PCMP, PULG, F09, PUDS, PARB, DRC94, PMPS09, PORI, J12, G06, PMMQ, G07, J13, PMPS08, PM20, PSOI, PJSE, G05, G11, PNAT, PSOK, PEVE, PRED, G10, G04, PSHM, PPRO, PAPC, PJJT, ARENA, PKLD, G00, J14, PLGM, P15A, PCSP, PWPN, PJAS, PWP21, PWP09, PDKA, PNEM, PPTK, J15, G01, PG08, PLRW, PMEI, PM13, PHJ, PGTC, J17, PRES, PWCQ, PJOU, PDP12, PAER, PAVR, PTHS, G02, J16, PSUM, PGPX, UGF, PSS3, MM2, MM3, MB1, FMB1, A25, 2XM, MMA, PLIST, CHR, EMA, IMA, TSR, UMA, PUMA, E02, DPA, ATH, MD1, GK1, GK2, CST, BRB, BTD, DKM, FVE, V17, V13, STA, MPS_RNA, V16, SLD, V12, CC1, MPS_GRN, DRB, FVR, SS3, SS1, MPS_AKH, FVL, V15, MPS_KLD, ZNE, PDS, SS2, PD3, SLU, V14, PD2, EXP, MPS_WAR, DDQ, DDE, GS1, DDS, DDU, DD1, DDL, DDF, DDP, DD2, DDR, DDH, DDT, DDK, DDG, DDC, DDM, DDJ, DDO, GVL, JVC, DDI, DVD, DDN, EVG, DDD, C18, C19, C21, C20, C13, CMA, C14, C15, KHC, ZNC, AFC, C17, C16, COM, CM1, CM2, PO2, S99, W16, W17, S00, PTK, CP3, POR, CP1, CP2, CMR, MH2, H1R, CNS, BBD, MH1, CN2, JMP, PCA, GNT, ARC, GN2, PC2, E01, HOP, PLG20, PLG21, CC2, MID, MIC, VOW, VOC, NEO, NEC
Banned:Adriana's Valor; Advantageous Proclamation; Assemble the Rank and Vile; Backup Plan; Brago's Favor; Double Stroke; Echoing Boon; Emissary's Ploy; Hired Heist; Hold the Perimeter; Hymn of the Wilds; Immediate Action; Incendiary Dissent; Iterative Analysis; Muzzio's Preparations; Natural Unity; Power Play; Secret Summoning; Secrets of Paradise; Sentinel Dispatch; Sovereign's Realm; Summoner's Bond; Unexpected Potential; Weight Advantage; Worldknit; Amulet of Quoz; Bronze Tablet; Contract from Below; Darkpact; Demonic Attorney; Jeweled Bird; Rebirth; Tempest Efreet; Timmerian Fiends; Chaos Orb; Falling Star; Shahrazad; Cleanse; Crusade; Imprison; Invoke Prejudice; Jihad; Pradesh Gypsies; Stone-Throwing Devils
Restricted:Ancestral Recall; Balance; Black Lotus; Brainstorm; Chalice of the Void; Channel; Demonic Consultation; Demonic Tutor; Dig Through Time; Flash; Gitaxian Probe; Golgari Grave-Troll; Gush; Imperial Seal; Karn, the Great Creator; Library of Alexandria; Lion's Eye Diamond; Lodestone Golem; Lotus Petal; Mana Crypt; Mana Vault; Memory Jar; Mental Misstep; Merchant Scroll; Mind's Desire; Monastery Mentor; Mox Emerald; Mox Jet; Mox Pearl; Mox Ruby; Mox Sapphire; Mystic Forge; Mystical Tutor; Narset, Parter of Veils; Necropotence; Ponder; Sol Ring; Strip Mine; Thorn of Amethyst; Time Vault; Time Walk; Timetwister; Tinker; Tolarian Academy; Treasure Cruise; Trinisphere; Vampiric Tutor; Wheel of Fortune; Windfall; Yawgmoth's Will

View File

@@ -1,4 +1,4 @@
language.name=Deutsch (DE)
language.name=Deutsch (DE)
#SplashScreen.java
splash.loading.examining-cards=Lade Karten, durchsuche Verzeichnis
splash.loading.cards-folders=Lade Karten aus Verzeichnissen
@@ -1044,8 +1044,8 @@ nlShowMatchBackground=Zeige Bilder im Spielfeldhintergrund.
nlTheme=Wähle ein Thema um die Bildschirmanzeigen anzupassen.
nlVibrateAfterLongPress=Aktiviert Vibration bei langem Druck, z.B. beim Zoomen.
nlVibrateWhenLosingLife=Aktiviert Vibration bei Lebenspunktverlust.
lblShowDraftRankingOverlay=Show Draft Ranking
nlShowDraftRankingOverlay=Shows the card ranking in Draft Editor.
lblShowDraftRankingOverlay=Zeige das Draft-Ranking
nlShowDraftRankingOverlay=Zeige das Karen-Ranking im Draft-Editor.
lblBorderMaskOption=Rand-Masken-Option
nlBorderMaskOption=Wendet die gewählte Option auf die Kartenbilder an (Im Zweifel wähle Beschneiden/Crop).
lblEnableRoundBorder=Aktiviere Maske mit runden Ränder
@@ -2469,8 +2469,8 @@ lblWinGameOnlyPlaing=Gewinne ein Spiel mit nur
lblNLands={0} Land/Ländern
#AgainstAllOdds.java
lblAgainstAllOdds=Against all Odds
lblAgainstIndividual=versus {0} individual players
lblAgainstTeam=versus {0} players in a team
lblAgainstIndividual=gegen {0} einzelne Spieler
lblAgainstTeam=gegen {0} Spieler in einem Team
#MatchWinStreak.java
lblMatchWinStreak=Gewinnsträhne Begegnung
lblWinNMatchesInARow=Gewinne {0} Begegnungen nacheinander

View File

@@ -1045,8 +1045,8 @@ nlShowMatchBackground=在战场显示背景图片,否则显示背景纹理。
nlTheme=设置显示的组件使用的外观主题。
nlVibrateAfterLongPress=启用长按触发震动,例如长按缩放卡牌图片。
nlVibrateWhenLosingLife=启用当玩家在游戏中失去生命或收到伤害时震动。
lblShowDraftRankingOverlay=Show Draft Ranking
nlShowDraftRankingOverlay=Shows the card ranking in Draft Editor.
lblShowDraftRankingOverlay=显示轮抓评分
nlShowDraftRankingOverlay=在轮抓编辑器中显示牌张的评分。
lblBorderMaskOption=边框遮罩选项
nlBorderMaskOption=将选定的边框选项应用于卡图如果你不清楚该功能的作用请选Crop
lblEnableRoundBorder=启用圆角边框掩码
@@ -1841,7 +1841,7 @@ lblSelectCreatureWithTotalPowerLessOrEqualTo=选择一些生物其力量只和
lblTotalPowerNum=总力量:{0}
lblCancelChooseConfirm=取消选择?
#ChooseCardNameEffect.java
lblChooseCardDraft=Choose a card to draft
lblChooseCardDraft=选择一张要取出的牌
lblChooseACardName=选择一个牌名
lblChooseASpecificCard=选择一个{0}牌名
lblPlayerPickedChosen={0}选取了{1}
@@ -2467,9 +2467,9 @@ lblManaScrewed=法术力枯竭
lblWinGameOnlyPlaing=赢得一局游戏胜利时只使用过
lblNLands={0}个地
#AgainstAllOdds.java
lblAgainstAllOdds=Against all Odds
lblAgainstIndividual=versus {0} individual players
lblAgainstTeam=versus {0} players in a team
lblAgainstAllOdds=克服一切困难
lblAgainstIndividual=与{0}个玩家进行对抗
lblAgainstTeam=与有{0}个玩家的团队对抗
#MatchWinStreak.java
lblMatchWinStreak=比赛连胜
lblWinNMatchesInARow=连续赢得{0}场比赛

View File

@@ -60,13 +60,13 @@ public class GauntletIO {
xStream.allowTypeHierarchy(String.class);
xStream.allowTypeHierarchy(EnumMap.class);
xStream.allowTypeHierarchy(ArrayList.class);
xStream.allowTypeHierarchy(PaperCard.class);
xStream.allowTypeHierarchy(CardPool.class);
xStream.allowTypeHierarchy(SortedSet.class);
xStream.allowTypeHierarchy(Deck.class);
xStream.allowTypeHierarchy(TreeMap.class);
xStream.allowTypeHierarchy(List.class);
xStream.allowTypeHierarchy(DeckSection.class);
xStream.omitField(Deck.class, "unplayableAI");
// allow any type from the same package
xStream.allowTypesByWildcard(new String[] {
GauntletIO.class.getPackage().getName()+".*",

View File

@@ -1278,7 +1278,6 @@ public class PlayerControllerHuman extends PlayerController implements IGameCont
// TODO JAVA 8 use getOrDefault
for (Card c : player.getAllCards()) {
// Changeling are all creature types, they are not interesting for
// counting creature types
if (c.hasStartOfKeyword(Keyword.CHANGELING.toString())) {