Co-authored-by: tool4EvEr <tool4EvEr@192.168.0.59>
This commit is contained in:
tool4ever
2022-09-13 03:53:24 +00:00
committed by GitHub
parent abba95edb9
commit b340f2b27b
25 changed files with 50 additions and 62 deletions

View File

@@ -55,13 +55,14 @@ public abstract class DamageAiBase extends SpellAbilityAi {
final Game game = comp.getGame();
Player enemy = comp.getWeakestOpponent();
boolean dmgByCardsInHand = false;
Card hostcard = sa.getHostCard();
if ("X".equals(sa.getParam("NumDmg")) && sa.getHostCard() != null && sa.hasSVar(sa.getParam("NumDmg")) &&
if ("X".equals(sa.getParam("NumDmg")) && hostcard != null && sa.hasSVar(sa.getParam("NumDmg")) &&
sa.getSVar(sa.getParam("NumDmg")).equals("TargetedPlayer$CardsInHand")) {
dmgByCardsInHand = true;
}
// Not sure if type choice implemented for the AI yet but it should at least recognize this spell hits harder on larger enemy hand size
if ("Blood Oath".equals(sa.getHostCard().getName())) {
if ("Blood Oath".equals(hostcard.getName())) {
dmgByCardsInHand = true;
}
@@ -73,13 +74,12 @@ public abstract class DamageAiBase extends SpellAbilityAi {
}
// If the opponent will gain life (ex. Fiery Justice), not beneficial unless life gain is harmful or ignored
if ("OpponentGainLife".equals(sa.getParam("AILogic")) && ComputerUtil.lifegainPositive(enemy, sa.getHostCard())) {
if ("OpponentGainLife".equals(sa.getParam("AILogic")) && ComputerUtil.lifegainPositive(enemy, hostcard)) {
return false;
}
// Benefits hitting players?
// If has triggered ability on dealing damage to an opponent, go for it!
Card hostcard = sa.getHostCard();
for (Trigger trig : hostcard.getTriggers()) {
if (trig.getMode() == TriggerType.DamageDone) {
if ("Opponent".equals(trig.getParam("ValidTarget"))
@@ -101,9 +101,9 @@ public abstract class DamageAiBase extends SpellAbilityAi {
}
if (!noPrevention) {
restDamage = ComputerUtilCombat.predictDamageTo(enemy, restDamage, sa.getHostCard(), false);
restDamage = ComputerUtilCombat.predictDamageTo(enemy, restDamage, hostcard, false);
} else {
restDamage = enemy.staticReplaceDamage(restDamage, sa.getHostCard(), false);
restDamage = enemy.staticReplaceDamage(restDamage, hostcard, false);
}
if (restDamage == 0) {

View File

@@ -783,7 +783,7 @@ public class DamageDealAi extends DamageAiBase {
}
// if opponent will gain life (ex. Fiery Justice), don't target only enemy player unless life gain is harmful or ignored
if ("OpponentGainLife".equals(logic) && tcs.size() == 1 && tcs.contains(enemy) && ComputerUtil.lifegainPositive(enemy, source)){
if ("OpponentGainLife".equals(logic) && tcs.size() == 1 && tcs.contains(enemy) && ComputerUtil.lifegainPositive(enemy, source)) {
sa.resetTargets();
return false;
}

View File

@@ -37,11 +37,11 @@ public class LifeSetEffect extends SpellAbilityEffect {
for (final Player p : players.threadSafeIterable()) {
if (tgt == null || p.canBeTargetedBy(sa)) {
if (!redistribute) {
p.setLife(lifeAmount, sa.getHostCard());
p.setLife(lifeAmount, sa);
} else {
List<Integer> validChoices = getDistribution(players, true, lifetotals);
int life = sa.getActivatingPlayer().getController().chooseNumber(sa, Localizer.getInstance().getMessage("lblLifeTotal") + ": " + p, validChoices, p);
p.setLife(life, sa.getHostCard());
p.setLife(life, sa);
lifetotals.remove((Integer) life);
players.remove(p);
}

View File

@@ -458,14 +458,14 @@ public class Player extends GameEntity implements Comparable<Player> {
return isOpponentOf(otherPlayer);
}
public final boolean setLife(final int newLife, final Card source) {
public final boolean setLife(final int newLife, final SpellAbility sa) {
boolean change = false;
// rule 119.5
if (life > newLife) {
change = loseLife(life - newLife, false, false) > 0;
}
else if (newLife > life) {
change = gainLife(newLife - life, source);
change = gainLife(newLife - life, sa == null ? null : sa.getHostCard(), sa);
}
else { // life == newLife
change = false;
@@ -487,9 +487,6 @@ public class Player extends GameEntity implements Comparable<Player> {
return life;
}
public final boolean gainLife(int lifeGain, final Card source) {
return gainLife(lifeGain, source, null);
}
public final boolean gainLife(int lifeGain, final Card source, final SpellAbility sa) {
if (!canGainLife()) {
return false;

View File

@@ -100,7 +100,7 @@ public class ReplaceDamage extends ReplacementEffect {
//Lava Burst and Whippoorwill check
SpellAbility cause = (SpellAbility) runParams.get(AbilityKey.Cause);
GameEntity affected = (GameEntity) runParams.get(AbilityKey.Affected);
if (((cause != null) && (cause.hasParam("NoRedirection")) || (affected.hasKeyword("Damage that would be dealt to CARDNAME can't be redirected.")))) {
if ((cause != null && cause.hasParam("NoRedirection") || affected.hasKeyword("Damage that would be dealt to CARDNAME can't be redirected."))) {
return false;
}
// check for DamageRedirection, the Thing where the damage is redirected to must be a creature or planeswalker or a player

View File

@@ -177,7 +177,7 @@ public class AbilityManaPart implements java.io.Serializable {
player.getGame().getTriggerHandler().runTrigger(TriggerType.TapsForMana, runParams, false);
if (source.isLand() && root.isManaAbility() && root.getPayCosts() != null && root.getPayCosts().hasTapCost()) {
player.setTappedLandForManaThisTurn(true);
root.getActivatingPlayer().setTappedLandForManaThisTurn(true);
}
}

View File

@@ -1,11 +1,11 @@
Name:Acidic Dagger
ManaCost:4
Types:Artifact
A:AB$ Effect | Cost$ 4 T | Name$ Acidic Dagger Effect | ValidTgts$ Creature | TgtPrompt$ Select target creature | Triggers$ TrigDam,TrigLeave | RememberObjects$ Targeted | ImprintCards$ Self | ActivationPhases$ Upkeep->Declare Attackers | ActivationFirstCombat$ True | SpellDescription$ Whenever target creature deals combat damage to a non-Wall creature this turn, destroy that non-Wall creature. When the targeted creature leaves the battlefield this turn, sacrifice CARDNAME. Activate only before blockers are declared.
A:AB$ Effect | Cost$ 4 T | ValidTgts$ Creature | TgtPrompt$ Select target creature | Triggers$ TrigDam,TrigLeave | RememberObjects$ Targeted | ActivationPhases$ Upkeep->Declare Attackers | ActivationFirstCombat$ True | SpellDescription$ Whenever target creature deals combat damage to a non-Wall creature this turn, destroy that non-Wall creature. When the targeted creature leaves the battlefield this turn, sacrifice CARDNAME. Activate only before blockers are declared.
SVar:TrigDam:Mode$ DamageDone | ValidSource$ Creature.IsRemembered | ValidTarget$ Creature.nonWall | CombatDamage$ True | TriggerZones$ Command | Execute$ TrigDestroy | TriggerDescription$ Whenever targeted creature deals combat damage to a non-Wall creature this turn, destroy that non-Wall creature.
SVar:TrigLeave:Mode$ ChangesZone | ValidCard$ Creature.IsRemembered | Origin$ Battlefield | Destination$ Any | Execute$ TrigSac | TriggerZones$ Command | TriggerDescription$ When the targeted creature leaves the battlefield this turn, sacrifice Acidic Dagger.
SVar:TrigLeave:Mode$ ChangesZone | ValidCard$ Creature.IsRemembered | Origin$ Battlefield | Destination$ Any | Execute$ TrigSac | TriggerZones$ Command | TriggerDescription$ When the targeted creature leaves the battlefield this turn, sacrifice EFFECTSOURCE.
SVar:TrigDestroy:DB$ Destroy | Defined$ TriggeredTargetLKICopy
SVar:TrigSac:DB$ SacrificeAll | Defined$ Imprinted | SubAbility$ ExileEffect
SVar:TrigSac:DB$ SacrificeAll | Defined$ EffectSource | SubAbility$ ExileEffect
SVar:ExileEffect:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile
AI:RemoveDeck:All
Oracle:{4}, {T}: Whenever target creature deals combat damage to a non-Wall creature this turn, destroy that non-Wall creature. When the targeted creature leaves the battlefield this turn, sacrifice Acidic Dagger. Activate only before blockers are declared.

View File

@@ -2,6 +2,6 @@ Name:Chandra's Pyreling
ManaCost:1 R
Types:Creature Elemental Lizard
PT:1/3
T:Mode$ DamageDone | ValidSource$ Card.YouCtrl | ValidTarget$ Opponent | CombatDamage$ False | TriggerZones$ Battlefield | Execute$ TrigPump | TriggerDescription$ Whenever a source you control deals noncombat damage to an opponent, CARDNAME gets +1/+0 and gains double strike until end of turn. (It deals both first-strike and regular combat damage.)
T:Mode$ DamageDone | ValidSource$ Card.YouCtrl,Emblem.YouCtrl | ValidTarget$ Opponent | CombatDamage$ False | TriggerZones$ Battlefield | Execute$ TrigPump | TriggerDescription$ Whenever a source you control deals noncombat damage to an opponent, CARDNAME gets +1/+0 and gains double strike until end of turn. (It deals both first-strike and regular combat damage.)
SVar:TrigPump:DB$ Pump | Defined$ Self | NumAtt$ 1 | KW$ Double Strike
Oracle:Whenever a source you control deals noncombat damage to an opponent, Chandra's Pyreling gets +1/+0 and gains double strike until end of turn. (It deals both first-strike and regular combat damage.)

View File

@@ -2,12 +2,8 @@ Name:Constricting Sliver
ManaCost:5 W
Types:Creature Sliver
PT:3/3
S:Mode$ Continuous | Affected$ Creature.Sliver+YouCtrl | AddTrigger$ ConstrictingTrig | AddSVar$ ConstrictingSliverExile & ConstrictingEffect & ConstrictingComeBack & ConstrictingTrigReturn & ConstrictingExileSelf | Description$ Sliver creatures you control have "When this creature enters the battlefield, you may exile target creature an opponent controls until this creature leaves the battlefield."
SVar:ConstrictingTrig:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ ConstrictingSliverExile | TriggerDescription$ When CARDNAME enters the battlefield, you may exile target creature an opponent controls until CARDNAME leaves the battlefield.
SVar:ConstrictingSliverExile:DB$ ChangeZone | Origin$ Battlefield | Destination$ Exile | RememberChanged$ True | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Select target creature an opponent controls | ConditionPresent$ Card.Self | SubAbility$ ConstrictingEffect
SVar:ConstrictingEffect:DB$ Effect | Triggers$ ConstrictingComeBack | RememberObjects$ Remembered | ImprintCards$ Self | ConditionPresent$ Card.Self | Duration$ Permanent
SVar:ConstrictingComeBack:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.IsImprinted | Execute$ ConstrictingTrigReturn | TriggerZones$ Command | TriggerController$ TriggeredCardController | Static$ True | TriggerDescription$ That permanent is exiled until this creature leaves the battlefield.
SVar:ConstrictingTrigReturn:DB$ ChangeZoneAll | Origin$ Exile | Destination$ Battlefield | ChangeType$ Card.IsRemembered | SubAbility$ ConstrictingExileSelf
SVar:ConstrictingExileSelf:DB$ ChangeZone | Origin$ Command | Destination$ Exile | Defined$ Self
S:Mode$ Continuous | Affected$ Creature.Sliver+YouCtrl | AddTrigger$ ConstrictingTrig | AddSVar$ ConstrictingSliverExile | Description$ Sliver creatures you control have "When this creature enters the battlefield, you may exile target creature an opponent controls until this creature leaves the battlefield."
SVar:ConstrictingTrig:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | OptionalDecider$ You | ValidCard$ Card.Self | Execute$ ConstrictingSliverExile | TriggerDescription$ When CARDNAME enters the battlefield, you may exile target creature an opponent controls until CARDNAME leaves the battlefield.
SVar:ConstrictingSliverExile:DB$ ChangeZone | Origin$ Battlefield | Destination$ Exile | ValidTgts$ Creature.OppCtrl | TgtPrompt$ Select target creature an opponent controls | ConditionPresent$ Card.Self | Duration$ UntilHostLeavesPlay
SVar:PlayMain1:TRUE
Oracle:Sliver creatures you control have "When this creature enters the battlefield, you may exile target creature an opponent controls until this creature leaves the battlefield."

View File

@@ -1,9 +1,8 @@
Name:Crush Underfoot
ManaCost:1 R
Types:Tribal Instant Giant
A:SP$ ChooseCard | Cost$ 1 R | Defined$ You | Mandatory$ True | Choices$ Creature.Giant+YouCtrl | ChoiceTitle$ Choose a Giant creature you control | RememberChosen$ True | SubAbility$ DBDmg | SpellDescription$ Choose a Giant creature you control. It deals damage equal to its power to target creature.
SVar:DBDmg:DB$ DealDamage | NumDmg$ X | DamageSource$ Remembered | ValidTgts$ Creature | SubAbility$ DBCleanup
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
SVar:X:Remembered$CardPower
A:SP$ ChooseCard | Cost$ 1 R | Defined$ You | Mandatory$ True | Choices$ Creature.Giant+YouCtrl | ChoiceTitle$ Choose a Giant creature you control | SubAbility$ DBDmg | SpellDescription$ Choose a Giant creature you control. It deals damage equal to its power to target creature.
SVar:DBDmg:DB$ DealDamage | NumDmg$ X | DamageSource$ ChosenCard | ValidTgts$ Creature
SVar:X:ChosenCard$CardPower
AI:RemoveDeck:Random
Oracle:Choose a Giant creature you control. It deals damage equal to its power to target creature.

View File

@@ -4,6 +4,6 @@ Types:Enchantment Aura
K:Enchant Land
A:SP$ Attach | Cost$ 3 G | ValidTgts$ Land | TgtPrompt$ Select target land | AILogic$ Pump
T:Mode$ TapsForMana | ValidCard$ Card.EnchantedBy | TriggerZones$ Battlefield | Execute$ TrigMana | Static$ True | TriggerDescription$ Whenever enchanted land is tapped for mana, its controller adds an additional two mana in any combination of colors.
SVar:TrigMana:DB$ Mana | Produced$ Combo Any | Amount$ 2
SVar:TrigMana:DB$ Mana | Produced$ Combo Any | Amount$ 2 | Defined$ TriggeredCardController
AI:RemoveDeck:All
Oracle:Enchant land\nWhenever enchanted land is tapped for mana, its controller adds an additional two mana in any combination of colors.

View File

@@ -2,7 +2,7 @@ Name:Electryte
ManaCost:3 R R
Types:Creature Trilobite Beast
PT:3/3
T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigDmgBlockers | TriggerDescription$ Whenever CARDNAME deals combat damage to defending player, it deals damage equal to its power to each blocking creature.
T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player.TriggeredDefendingPlayer | CombatDamage$ True | Execute$ TrigDmgBlockers | TriggerDescription$ Whenever CARDNAME deals combat damage to defending player, it deals damage equal to its power to each blocking creature.
SVar:TrigDmgBlockers:DB$ DamageAll | ValidCards$ Creature.blocking | NumDmg$ X | ValidDescription$ each blocking creature
SVar:X:Count$CardPower
SVar:MustBeBlocked:True

View File

@@ -1,7 +1,7 @@
Name:Glyph of Life
ManaCost:W
Types:Instant
A:SP$ Effect | ValidTgts$ Creature.Wall | TgtPrompt$ Select target Wall creature | Triggers$ TrigDamage | RememberObjects$ Targeted | SpellDescription$ Choose target Wall creature. Whenever that creature is dealt damage by an attacking creature this turn, you gain that much life.
A:SP$ Effect | ValidTgts$ Creature.Wall | TgtPrompt$ Select target Wall creature | Triggers$ TrigDamage | RememberObjects$ Targeted | ExileOnMoved$ Battlefield | SpellDescription$ Choose target Wall creature. Whenever that creature is dealt damage by an attacking creature this turn, you gain that much life.
SVar:TrigDamage:Mode$ DamageDone | ValidSource$ Creature.attacking | ValidTarget$ Creature.IsRemembered | Execute$ TrigGainLife | TriggerDescription$ Whenever an attacking creature deals damage to this creature, you gain that much life.
SVar:TrigGainLife:DB$ GainLife | LifeAmount$ X | Defined$ You
SVar:X:TriggerCount$DamageAmount

View File

@@ -4,8 +4,8 @@ Types:Creature Wolf
PT:2/2
K:First Strike
A:AB$ Pump | Cost$ T | NumAtt$ +2 | KW$ First Strike | ValidTgts$ Creature.Dwarf | TgtPrompt$ Select target dwarf creature | ActivationPhases$ BeginCombat->EndCombat | SubAbility$ EliteGuardEffect | SpellDescription$ Target Dwarf creature gets +2/+0 and gains first strike until end of turn. When that creature leaves the battlefield this turn, sacrifice CARDNAME. Activate only during combat.
SVar:EliteGuardEffect:DB$ Effect | Name$ Heart Wolf Effect | Triggers$ LostTheGuarded | RememberObjects$ Targeted | ImprintCards$ Self
SVar:LostTheGuarded:Mode$ ChangesZone | ValidCard$ Card.IsRemembered | Origin$ Battlefield | Destination$ Any | Execute$ EliteDefence | TriggerDescription$ When the targeted creature leaves the battlefield this turn, sacrifice Heart Wolf.
SVar:EliteDefence:DB$ SacrificeAll | Defined$ Imprinted | SubAbility$ ExileEffect
SVar:EliteGuardEffect:DB$ Effect | Triggers$ LostTheGuarded | RememberObjects$ Targeted
SVar:LostTheGuarded:Mode$ ChangesZone | ValidCard$ Card.IsRemembered | Origin$ Battlefield | Destination$ Any | Execute$ EliteDefence | TriggerDescription$ When the targeted creature leaves the battlefield this turn, sacrifice EFFECTSOURCE.
SVar:EliteDefence:DB$ SacrificeAll | Defined$ EffectSource | SubAbility$ ExileEffect
SVar:ExileEffect:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile
Oracle:First strike\n{T}: Target Dwarf creature gets +2/+0 and gains first strike until end of turn. When that creature leaves the battlefield this turn, sacrifice Heart Wolf. Activate only during combat.

View File

@@ -3,8 +3,8 @@ ManaCost:3 W
Types:Creature Human Soldier
PT:2/2
A:AB$ Pump | Cost$ T | NumAtt$ +2 | NumDef$ +2 | ValidTgts$ Creature | TgtPrompt$ Select target creature | ActivationPhases$ BeginCombat->EndCombat | SubAbility$ EliteGuardEffect | SpellDescription$ Target creature gets +2/+2 until end of turn. When that creature leaves the battlefield this turn, sacrifice CARDNAME. Activate only during combat.
SVar:EliteGuardEffect:DB$ Effect | Name$ Elite Guard Escort | Triggers$ LostTheGuarded | RememberObjects$ Targeted | ImprintCards$ Self
SVar:LostTheGuarded:Mode$ ChangesZone | ValidCard$ Card.IsRemembered | Origin$ Battlefield | Destination$ Any | Execute$ EliteDefence | TriggerDescription$ When the targeted creature leaves the battlefield this turn, sacrifice Kjeldoran Elite Guard.
SVar:EliteDefence:DB$ SacrificeAll | Defined$ Imprinted | SubAbility$ ExileEffect
SVar:EliteGuardEffect:DB$ Effect | Name$ Elite Guard Escort | Triggers$ LostTheGuarded | RememberObjects$ Targeted
SVar:LostTheGuarded:Mode$ ChangesZone | ValidCard$ Card.IsRemembered | Origin$ Battlefield | Destination$ Any | Execute$ EliteDefence | TriggerDescription$ When the targeted creature leaves the battlefield this turn, sacrifice EFFECTSOURCE.
SVar:EliteDefence:DB$ SacrificeAll | Defined$ EffectSource | SubAbility$ ExileEffect
SVar:ExileEffect:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile
Oracle:{T}: Target creature gets +2/+2 until end of turn. When that creature leaves the battlefield this turn, sacrifice Kjeldoran Elite Guard. Activate only during combat.

View File

@@ -3,8 +3,8 @@ ManaCost:1 W
Types:Creature Human Soldier
PT:1/1
A:AB$ Pump | Cost$ T | NumAtt$ +1 | NumDef$ +1 | ValidTgts$ Creature | TgtPrompt$ Select target creature | ActivationPhases$ BeginCombat->EndCombat | IsPresent$ Land.Snow+DefenderCtrl | PresentCompare$ EQ0 | SubAbility$ KjeldoranGuardEffect | SpellDescription$ Target creature gets +1/+1 until end of turn. When that creature leaves the battlefield this turn, sacrifice CARDNAME. Activate only during combat and only if defending player controls no snow lands.
SVar:KjeldoranGuardEffect:DB$ Effect | Name$ Kjeldoran Guard Effect | Triggers$ TrigSacGuard | RememberObjects$ Targeted | ImprintCards$ Self
SVar:TrigSacGuard:Mode$ ChangesZone | ValidCard$ Card.IsRemembered | Origin$ Battlefield | Destination$ Any | Execute$ EliteDefence | TriggerDescription$ When the targeted creature leaves the battlefield this turn, sacrifice Kjeldoran Elite Guard.
SVar:EliteDefence:DB$ SacrificeAll | Defined$ Imprinted | SubAbility$ ExileEffect
SVar:KjeldoranGuardEffect:DB$ Effect | Triggers$ TrigSacGuard | RememberObjects$ Targeted
SVar:TrigSacGuard:Mode$ ChangesZone | ValidCard$ Card.IsRemembered | Origin$ Battlefield | Destination$ Any | Execute$ EliteDefence | TriggerDescription$ When the targeted creature leaves the battlefield this turn, sacrifice EFFECTSOURCE.
SVar:EliteDefence:DB$ SacrificeAll | Defined$ EffectSource | SubAbility$ ExileEffect
SVar:ExileEffect:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile
Oracle:{T}: Target creature gets +1/+1 until end of turn. When that creature leaves the battlefield this turn, sacrifice Kjeldoran Guard. Activate only during combat and only if defending player controls no snow lands.

View File

@@ -4,6 +4,6 @@ Types:Enchantment Aura
K:Flash
K:Enchant creature
A:SP$ Attach | Cost$ 1 R | ValidTgts$ Creature | AITgts$ Card.powerGE1 | AILogic$ Pump
T:Mode$ DamageDone | ValidSource$ Card.AttachedBy | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigDestroy | OptionalDecider$ You | TriggerDescription$ Whenever enchanted creature deals combat damage to defending player, you may destroy target artifact that player controls.
T:Mode$ DamageDone | ValidSource$ Card.AttachedBy | ValidTarget$ Player.TriggeredDefendingPlayer | CombatDamage$ True | Execute$ TrigDestroy | OptionalDecider$ You | TriggerDescription$ Whenever enchanted creature deals combat damage to defending player, you may destroy target artifact that player controls.
SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Artifact.ControlledBy TriggeredDefendingPlayer | TgtPrompt$ Select target artifact
Oracle:Flash\nEnchant creature\nWhenever enchanted creature deals combat damage to defending player, you may destroy target artifact that player controls.

View File

@@ -3,7 +3,7 @@ ManaCost:2 G G
Types:Enchantment
K:MayEffectFromOpeningHand:FromHand
SVar:FromHand:DB$ ChangeZone | Defined$ Self | Origin$ Hand | Destination$ Battlefield | SpellDescription$ If CARDNAME is in your opening hand, you may begin the game with it on the battlefield.
T:Mode$ TapsForMana | ValidCard$ Creature | Execute$ TrigMana | TriggerZones$ Battlefield | Static$ True | TriggerDescription$ Whenever you tap a creature for mana, add an additional {G}.
T:Mode$ TapsForMana | ValidCard$ Creature | Activator$ You | Execute$ TrigMana | TriggerZones$ Battlefield | Static$ True | TriggerDescription$ Whenever you tap a creature for mana, add an additional {G}.
SVar:TrigMana:DB$ Mana | Produced$ G
A:AB$ PutCounterAll | Cost$ 6 G G | ValidCards$ Creature.YouCtrl | CounterType$ P1P1 | CounterNum$ 1 | AILogic$ AtOppEOT | SpellDescription$ Put a +1/+1 counter on each creature you control.
DeckHas:Ability$Counters

View File

@@ -7,5 +7,5 @@ A:AB$ GainControl | Cost$ T | ValidTgts$ Creature | TgtPrompt$ Select target cre
SVar:DBEffect:DB$ Effect | RememberObjects$ ParentTarget | ForgetOnMoved$ Battlefield | Triggers$ LeavesPlay,Untap | Duration$ UntilHostLeavesPlay
SVar:LeavesPlay:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.EffectSource | Execute$ DBDestroy | TriggerDescription$ When EFFECTSOURCE leaves the battlefield, or becomes untapped, destroy that creature. It can't be regenerated.
SVar:Untap:Mode$ Untaps | ValidCard$ Card.EffectSource | Execute$ DBDestroy | Secondary$ True | TriggerDescription$ When EFFECTSOURCE leaves the battlefield, or becomes untapped, destroy that creature. It can't be regenerated.
SVar:DBDestroy:DB$ Destroy | Defined$ Remembered | NoRegen$ True
SVar:DBDestroy:DB$ Destroy | Defined$ RememberedLKI | NoRegen$ True
Oracle:Merieke Ri Berit doesn't untap during your untap step.\n{T}: Gain control of target creature for as long as you control Merieke Ri Berit. When Merieke Ri Berit leaves the battlefield or becomes untapped, destroy that creature. It can't be regenerated.

View File

@@ -4,11 +4,11 @@ Types:Creature Illusion Horse
PT:1/1
K:Flying
A:AB$ Pump | Cost$ T | ValidTgts$ Creature.YouCtrl+toughnessLE2 | TgtPrompt$ Select target creature you control with toughness 2 or less | NumAtt$ +1 | NumDef$ +1 | KW$ Flying | SubAbility$ PhantasmalMountEffect | SpellDescription$ Target creature you control with toughness 2 or less gets +1/+1 and gains flying until end of turn. When CARDNAME leaves the battlefield this turn, sacrifice that creature. When the creature leaves the battlefield this turn, sacrifice CARDNAME.
SVar:PhantasmalMountEffect:DB$ Effect | Name$ Phantasmal Mount Effect | Triggers$ LostTheMount,LostTheTarget | RememberObjects$ Targeted | ImprintCards$ Self
SVar:LostTheMount:Mode$ ChangesZone | ValidCard$ Card.IsRemembered | Origin$ Battlefield | Destination$ Any | Execute$ SacMount | TriggerDescription$ When the targeted creature leaves the battlefield this turn, sacrifice Phantasmal Mount.
SVar:SacMount:DB$ SacrificeAll | Defined$ Imprinted | SubAbility$ ExileEffect
SVar:LostTheTarget:Mode$ ChangesZone | ValidCard$ Card.IsImprinted | Origin$ Battlefield | Destination$ Any | Execute$ SacTarget | TriggerDescription$ When Phantasmal Mount leaves the battlefield this turn, sacrifice the targeted creature.
SVar:SacTarget:DB$ SacrificeAll | Defined$ Remembered | SubAbility$ ExileEffect
SVar:PhantasmalMountEffect:DB$ Effect | Triggers$ LostTheMount,LostTheTarget | RememberObjects$ Targeted
SVar:LostTheMount:Mode$ ChangesZone | ValidCard$ Card.IsRemembered | Origin$ Battlefield | Destination$ Any | Execute$ SacMount | TriggerDescription$ When the targeted creature leaves the battlefield this turn, sacrifice EFFECTSOURCE.
SVar:SacMount:DB$ SacrificeAll | Defined$ EffectSource | SubAbility$ ExileEffect
SVar:LostTheTarget:Mode$ ChangesZone | ValidCard$ Card.EffectSource | Origin$ Battlefield | Destination$ Any | Execute$ SacTarget | TriggerDescription$ When EFFECTSOURCE leaves the battlefield this turn, sacrifice the targeted creature.
SVar:SacTarget:DB$ SacrificeAll | Defined$ RememberedLKI | SubAbility$ ExileEffect
SVar:ExileEffect:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile
AI:RemoveDeck:All
AI:RemoveDeck:Random

View File

@@ -1,7 +1,7 @@
Name:Quest for Pure Flame
ManaCost:R
Types:Enchantment
T:Mode$ DamageDone | ValidSource$ Card.YouCtrl | ValidTarget$ Opponent | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigPutCounter | TriggerDescription$ Whenever a source you control deals damage to an opponent, you may put a quest counter on CARDNAME.
T:Mode$ DamageDone | ValidSource$ Card.YouCtrl,Emblem.YouCtrl | ValidTarget$ Opponent | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigPutCounter | TriggerDescription$ Whenever a source you control deals damage to an opponent, you may put a quest counter on CARDNAME.
SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ QUEST | CounterNum$ 1
A:AB$ Effect | Name$ Pure Flame Effect | Cost$ SubCounter<4/QUEST> Sac<1/CARDNAME> | ReplacementEffects$ DamageEvent | SpellDescription$ If any source you control would deal damage to a permanent or player this turn, it deals double that damage to that permanent or player instead.
SVar:DamageEvent:Event$ DamageDone | ValidSource$ Card.YouCtrl,Emblem.YouCtrl | ValidTarget$ Permanent,Player | ReplaceWith$ DmgTwice | Description$ If any source you control would deal damage to a permanent or player this turn, it deals double that damage to that permanent or player instead.

View File

@@ -4,7 +4,7 @@ Types:Artifact
A:AB$ Pump | Cost$ 3 T | NumAtt$ +2 | ValidTgts$ Creature.attacking | TgtPrompt$ Select target attacking creature | SubAbility$ RuneswordEffect | SpellDescription$ Target attacking creature gets +2/+0 until end of turn. When that creature leaves the battlefield this turn, sacrifice CARDNAME. If the creature deals damage to a creature this turn, the creature dealt damage can't be regenerated this turn. If a creature dealt damage by the targeted creature would die this turn, exile that creature instead.
SVar:RuneswordEffect:DB$ Effect | Name$ Runesword Effect | Triggers$ TrigSacRunesword,TrigNoregen | ReplacementEffects$ RuneswordRep | RememberObjects$ Targeted | ImprintCards$ Self
SVar:TrigSacRunesword:Mode$ ChangesZone | ValidCard$ Card.IsRemembered | Origin$ Battlefield | Destination$ Any | Execute$ RuneswordSac | TriggerDescription$ When the targeted creature leaves the battlefield this turn, sacrifice Runesword.
SVar:RuneswordSac:DB$ SacrificeAll | Defined$ Imprinted | SubAbility$ ExileEffect
SVar:RuneswordSac:DB$ SacrificeAll | Defined$ ImprintedLKI | SubAbility$ ExileEffect
SVar:ExileEffect:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile
SVar:TrigNoregen:Mode$ DamageDone | ValidSource$ Card.IsRemembered | ValidTarget$ Creature | Execute$ PumpNogen | Static$ True | TriggerDescription$ If the creature deals damage to a creature this turn, the creature dealt damage can't be regenerated this turn.
SVar:PumpNogen:DB$ Pump | KW$ HIDDEN CARDNAME can't be regenerated. | Defined$ TriggeredTarget

View File

@@ -1,7 +1,7 @@
Name:Talon of Pain
ManaCost:4
Types:Artifact
T:Mode$ DamageDone | ValidSource$ Card.Other+YouCtrl | ValidTarget$ Opponent | TriggerZones$ Battlefield | Execute$ TalonPutCounter | TriggerDescription$ Whenever a source you control other than CARDNAME deals damage to an opponent, put a charge counter on CARDNAME.
T:Mode$ DamageDone | ValidSource$ Card.Other+YouCtrl,Emblem.YouCtrl | ValidTarget$ Opponent | TriggerZones$ Battlefield | Execute$ TalonPutCounter | TriggerDescription$ Whenever a source you control other than CARDNAME deals damage to an opponent, put a charge counter on CARDNAME.
SVar:TalonPutCounter:DB$ PutCounter | CounterType$ CHARGE | CounterNum$ 1
A:AB$ DealDamage | Cost$ X T SubCounter<X/CHARGE> | ValidTgts$ Creature,Player,Planeswalker | TgtPrompt$ Select any target | NumDmg$ X | SpellDescription$ CARDNAME deals X damage to any target.
SVar:X:Count$xPaid

View File

@@ -2,11 +2,9 @@ Name:Tamiyo, Field Researcher
ManaCost:1 G W U
Types:Legendary Planeswalker Tamiyo
Loyalty:4
A:AB$ Effect | Cost$ AddCounter<1/LOYALTY> | Planeswalker$ True | ValidTgts$ Creature | TargetMin$ 0 | TargetMax$ 2 | TgtPrompt$ Select target creature | Triggers$ TrigDamage,TrigChange | Duration$ UntilYourNextTurn | RememberObjects$ Targeted | SpellDescription$ Choose up to two target creatures. Until your next turn, whenever either of those creatures deals combat damage, you draw a card.
A:AB$ Effect | Cost$ AddCounter<1/LOYALTY> | Planeswalker$ True | ValidTgts$ Creature | TargetMin$ 0 | TargetMax$ 2 | TgtPrompt$ Select target creature | Triggers$ TrigDamage | ForgetOnMoved$ Battlefield | Duration$ UntilYourNextTurn | RememberObjects$ Targeted | SpellDescription$ Choose up to two target creatures. Until your next turn, whenever either of those creatures deals combat damage, you draw a card.
SVar:TrigDamage:Mode$ DamageDealtOnce | CombatDamage$ True | ValidSource$ Creature.IsRemembered | Execute$ TrigDrawCard | TriggerDescription$ Whenever a targeted creature of Tamiyo, Field Researcher deals combat damage, you draw a card.
SVar:TrigDrawCard:DB$ Draw | NumCards$ 1 | Defined$ You
SVar:TrigChange:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | Static$ True | ValidCard$ Card.IsRemembered | Execute$ TrigForget
SVar:TrigForget:DB$ Pump | ForgetObjects$ TriggeredCard
A:AB$ Tap | Cost$ SubCounter<2/LOYALTY> | Planeswalker$ True | ValidTgts$ Permanent.nonLand | TargetMin$ 0 | TargetMax$ 2 | TgtPrompt$ Select target nonland permanent | SubAbility$ DBPump | SpellDescription$ Tap up to two target nonland permanents. They don't untap during their controller's next untap step.
SVar:DBPump:DB$ Pump | Defined$ Targeted | Duration$ Permanent | KW$ HIDDEN This card doesn't untap during your next untap step.
A:AB$ Effect | Cost$ SubCounter<7/LOYALTY> | Planeswalker$ True | Ultimate$ True | Name$ Emblem - Tamiyo, Field Researcher | Image$ emblem_tamiyo_field_researcher | StaticAbilities$ Omniscience | Stackable$ False | Duration$ Permanent | AILogic$ Always | SubAbility$ DBDraw | SpellDescription$ Draw three cards. You get an emblem with "You may cast spells from your hand without paying their mana costs."

View File

@@ -1,11 +1,9 @@
Name:War Barge
ManaCost:4
Types:Artifact
A:AB$ Pump | Cost$ 3 | ValidTgts$ Creature | TgtPrompt$ Select target creature | KW$ Islandwalk | RememberTargets$ True | SpellDescription$ Target creature gains islandwalk until end of turn.
T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Battlefield | Destination$ Any | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME leaves the battlefield this turn, destroy that creature. A creature destroyed this way can't be regenerated.
SVar:TrigDestroy:DB$ DestroyAll | ValidCards$ Card.IsRemembered | NoRegen$ True
T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ Player | Execute$ TrigClearRemembered | Static$ True | Secondary$ True | TriggerDescription$ Clear Remembered at the end of any turn.
SVar:TrigClearRemembered:DB$ Cleanup | ClearRemembered$ True
A:AB$ Pump | Cost$ 3 | ValidTgts$ Creature | TgtPrompt$ Select target creature | KW$ Islandwalk | SubAbility$ DelTrig | SpellDescription$ Target creature gains islandwalk until end of turn. When CARDNAME leaves the battlefield this turn, destroy that creature. A creature destroyed this way can't be regenerated.
SVar:DelTrig:DB$ DelayedTrigger | Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Battlefield | Destination$ Any | Execute$ TrigDestroy | ThisTurn$ True | RememberObjects$ Targeted | TriggerDescription$ When CARDNAME leaves the battlefield this turn, destroy that creature. A creature destroyed this way can't be regenerated.
SVar:TrigDestroy:DB$ Destroy | Defined$ DelayTriggerRememberedLKI | NoRegen$ True
AI:RemoveDeck:All
AI:RemoveDeck:Random
Oracle:{3}: Target creature gains islandwalk until end of turn. When War Barge leaves the battlefield this turn, destroy that creature. A creature destroyed this way can't be regenerated. (A creature with islandwalk can't be blocked as long as defending player controls an Island.)