Merge branch 'classLevelStatic' into 'master'

Class: use Static Ability to follow CR

See merge request core-developers/forge!5115
This commit is contained in:
Hans Mackowiak
2021-07-27 04:59:51 +00:00
38 changed files with 192 additions and 215 deletions

View File

@@ -21,6 +21,13 @@ public class ClassLevelUpEffect extends SpellAbilityEffect {
final int level = host.getClassLevel() + 1;
host.setClassLevel(level);
// need to run static ability to get Trigger online
game.getAction().checkStaticAbilities();
// Re-register triggers for target card
game.getTriggerHandler().clearActiveTriggers(host, null);
game.getTriggerHandler().registerActiveTrigger(host, false);
// Run ClassLevelGained trigger
final Map<AbilityKey, Object> runParams = AbilityKey.mapFromCard(host);
runParams.put(AbilityKey.ClassLevel, level);

View File

@@ -34,7 +34,6 @@ import org.apache.commons.lang3.tuple.Pair;
import com.esotericsoftware.minlog.Log;
import com.google.common.base.Predicates;
import com.google.common.base.Strings;
import com.google.common.collect.HashBasedTable;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
@@ -2040,8 +2039,6 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
} else if (inst.getKeyword().equals(Keyword.COMPANION)) {
sbLong.append("Companion — ");
sbLong.append(((Companion)inst).getDescription());
} else if (keyword.endsWith(".") && !keyword.startsWith("Haunt")) {
sbLong.append(keyword).append("\r\n");
} else if (keyword.startsWith("Presence") || keyword.startsWith("MayFlash")) {
// Pseudo keywords, only print Reminder
sbLong.append(inst.getReminderText());
@@ -2139,7 +2136,8 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
|| keyword.startsWith("Amplify") || keyword.startsWith("Ninjutsu") || keyword.startsWith("Adapt")
|| keyword.startsWith("Transfigure") || keyword.startsWith("Aura swap")
|| keyword.startsWith("Cycling") || keyword.startsWith("TypeCycling")
|| keyword.startsWith("Encore") || keyword.startsWith("Mutate") || keyword.startsWith("Dungeon")) {
|| keyword.startsWith("Encore") || keyword.startsWith("Mutate") || keyword.startsWith("Dungeon")
|| keyword.startsWith("Class") || keyword.startsWith("Saga")) {
// keyword parsing takes care of adding a proper description
} else if (keyword.startsWith("CantBeBlockedByAmount")) {
sbLong.append(getName()).append(" can't be blocked ");
@@ -2158,15 +2156,9 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
// need to get SpellDescription from Svar
String desc = AbilityFactory.getMapParams(getSVar(k[1])).get("SpellDescription");
sbLong.append(desc);
} else if (keyword.startsWith("Saga")) {
String[] k = keyword.split(":");
String desc = "(As this Saga enters and after your draw step, "
+ " add a lore counter. Sacrifice after " + Strings.repeat("I", Integer.valueOf(k[1])) + ".)";
sbLong.append(desc);
} else if (keyword.startsWith("Class")) {
sbLong.append("(Gain the next level as a sorcery to add its ability.)");
}
else {
} else if (keyword.endsWith(".") && !keyword.startsWith("Haunt")) {
sbLong.append(keyword).append("\r\n");
} else {
if ((i != 0) && (sb.length() != 0)) {
sb.append(", ");
}
@@ -2241,6 +2233,14 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
return TextUtil.fastReplace(result, "CARDNAME", CardTranslation.getTranslatedName(state.getName()));
}
if (type.hasSubtype("Class")) {
sb.append("(Gain the next level as a sorcery to add its ability.)").append(linebreak);
}
if (type.hasSubtype("Saga")) {
sb.append("(As this Saga enters and after your draw step, add a lore counter. Sacrifice after ");
sb.append(TextUtil.toRoman(getFinalChapterNr())).append(".)").append(linebreak);
}
if (monstrous) {
sb.append("Monstrous\r\n");
}
@@ -2304,8 +2304,10 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
if (!trig.isSecondary() && !trig.isClassAbility()) {
boolean disabled = false;
// Disable text of other rooms
if (type.isDungeon() && !trig.getOverridingAbility().getParam("RoomName").equals(getCurrentRoom())) {
disabled = true;
if (type.isDungeon()) {
disabled = !trig.getOverridingAbility().getParam("RoomName").equals(getCurrentRoom());
} else {
disabled = getGame() != null && !trig.requirementsCheck(getGame());
}
String trigStr = trig.replaceAbilityText(trig.toString(), state);
if (disabled) sb.append(grayTag);
@@ -2323,7 +2325,11 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
if (!stAb.isSecondary() && !stAb.isClassAbility()) {
final String stAbD = stAb.toString();
if (!stAbD.equals("")) {
sb.append(stAbD).append(linebreak);
boolean disabled = getGame() != null && !stAb.checkConditions();
if (disabled) sb.append(grayTag);
sb.append(stAbD);
if (disabled) sb.append(endTag);
sb.append(linebreak);
}
}
}
@@ -2408,22 +2414,7 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
// Currently the maximum levels of all Class cards are all 3
for (int level = 1; level <= 3; ++level) {
boolean disabled = level > getClassLevel() && isInZone(ZoneType.Battlefield);
for (final Trigger trig : state.getTriggers()) {
if (trig.isClassLevelNAbility(level) && !trig.isSecondary()) {
if (disabled) sb.append(grayTag);
sb.append(trig.toString());
if (disabled) sb.append(endTag);
sb.append(linebreak);
}
}
for (final ReplacementEffect re : state.getReplacementEffects()) {
if (re.isClassLevelNAbility(level) && !re.isSecondary()) {
if (disabled) sb.append(grayTag);
sb.append(re.getDescription());
if (disabled) sb.append(endTag);
sb.append(linebreak);
}
}
// Class second part is a static ability that grants the other abilities
for (final StaticAbility st : state.getStaticAbilities()) {
if (st.isClassLevelNAbility(level) && !st.isSecondary()) {
if (disabled) sb.append(grayTag);

View File

@@ -2601,23 +2601,17 @@ public class CardFactoryUtil {
inst.addSpellAbility(sa);
} else if (keyword.startsWith("Class")) {
final String[] k = keyword.split(":");
final String[] costs = k[2].split(",");
if (costs.length != Integer.valueOf(k[1]) - 1) {
throw new RuntimeException("Class max differ from cost amount");
}
final int level = Integer.valueOf(k[1]);
for (int i = 0; i < costs.length; ++i) {
final String cost = costs[i];
final StringBuilder sbClass = new StringBuilder();
sbClass.append("AB$ ClassLevelUp | Cost$ ").append(cost);
sbClass.append(" | ClassLevel$ EQ").append(i + 1);
sbClass.append(" | SorcerySpeed$ True");
sbClass.append(" | StackDescription$ SpellDescription | SpellDescription$ Level ").append(i + 2);
final StringBuilder sbClass = new StringBuilder();
sbClass.append("AB$ ClassLevelUp | Cost$ ").append(k[2]);
sbClass.append(" | ClassLevel$ EQ").append(level - 1);
sbClass.append(" | SorcerySpeed$ True");
sbClass.append(" | StackDescription$ SpellDescription | SpellDescription$ Level ").append(level);
final SpellAbility sa = AbilityFactory.getAbility(sbClass.toString(), card);
sa.setIntrinsic(intrinsic);
inst.addSpellAbility(sa);
}
final SpellAbility sa = AbilityFactory.getAbility(sbClass.toString(), card);
sa.setIntrinsic(intrinsic);
inst.addSpellAbility(sa);
} else if (keyword.startsWith("Dash")) {
final String[] k = keyword.split(":");
final Cost dashCost = new Cost(k[1], false);
@@ -3368,6 +3362,38 @@ public class CardFactoryUtil {
svars.put("CipherTrigger", trig);
svars.put("PlayEncoded", ab);
} else if (keyword.startsWith("Class")) {
final String[] k = keyword.split(":");
final String level = k[1];
final String params = k[3];
// get Description from CardTraits
StringBuilder desc = new StringBuilder();
boolean descAdded = false;
Map<String, String> mapParams = AbilityFactory.getMapParams(params);
if (mapParams.containsKey("AddTrigger")) {
for (String s : mapParams.get("AddTrigger").split(" & ")) {
if (descAdded) {
desc.append("\r\n");
}
desc.append(AbilityFactory.getMapParams(state.getSVar(s)).get("TriggerDescription"));
descAdded = true;
}
}
if (mapParams.containsKey("AddStaticAbility")) {
for (String s : mapParams.get("AddStaticAbility").split(" & ")) {
if (descAdded) {
desc.append("\r\n");
}
desc.append(AbilityFactory.getMapParams(state.getSVar(s)).get("Description"));
descAdded = true;
}
}
effect = "Mode$ Continuous | Affected$ Card.Self | ClassLevel$ " + level + " | " + params;
if (descAdded) {
effect += " | Description$ " + desc.toString();
}
} else if (keyword.startsWith("Dash")) {
effect = "Mode$ Continuous | Affected$ Card.Self+dashed | AddKeyword$ Haste";
} else if (keyword.equals("Defender")) {

View File

@@ -456,7 +456,7 @@ public class StaticAbility extends CardTraitBase implements IIdentifiable, Clone
*/
public final boolean checkConditions() {
final Player controller = getHostCard().getController();
final Game game = controller.getGame();
final Game game = getHostCard().getGame();
final PhaseHandler ph = game.getPhaseHandler();
if (getHostCard().isPhasedOut()) {

View File

@@ -1,10 +1,11 @@
Name:Barbarian Class
ManaCost:R
Types:Enchantment Class
K:Class:3:1 R,2 R
S:Mode$ Continuous | ClassLevel$ 1 | Affected$ You | AddKeyword$ If you would roll one or more dice, instead roll that many dice plus one and ignore the lowest roll. | Description$ If you would roll one or more dice, instead roll that many dice plus one and ignore the lowest roll.
T:Mode$ RolledDieOnce | ClassLevel$ 2 | TriggerZones$ Battlefield | ValidPlayer$ You | Execute$ TrigPump | TriggerDescription$ Whenever you roll one or more dice, target creature you control gets +2/+0 and gains menace until end of turn.
S:Mode$ Continuous | Affected$ You | AddKeyword$ If you would roll one or more dice, instead roll that many dice plus one and ignore the lowest roll. | Description$ If you would roll one or more dice, instead roll that many dice plus one and ignore the lowest roll.
K:Class:2:1 R:AddTrigger$ TriggerRoll
SVar:TriggerRoll:Mode$ RolledDieOnce | TriggerZones$ Battlefield | ValidPlayer$ You | Execute$ TrigPump | Secondary$ True | TriggerDescription$ Whenever you roll one or more dice, target creature you control gets +2/+0 and gains menace until end of turn.
SVar:TrigPump:DB$ Pump | ValidTgts$ Creature.YouCtrl | NumAtt$ 2 | KW$ Menace
S:Mode$ Continuous | ClassLevel$ 3 | EffectZone$ Battlefield | Affected$ Creature.YouCtrl | AddKeyword$ Haste | Description$ Creatures you control have haste.
K:Class:3:2 R:AddStaticAbility$ SHaste
SVar:SHaste:Mode$ Continuous | EffectZone$ Battlefield | Affected$ Creature.YouCtrl | AddKeyword$ Haste | Secondary$ True | Description$ Creatures you control have haste.
SVar:PlayMain1:TRUE
Oracle:(Gain the next level as a sorcery to add its ability.)\nIf you would roll one or more dice, instead roll that many dice plus one and ignore the lowest roll.\n{1}{R}: Level 2\nWhenever you roll one or more dice, target creature you control gets +2/+0 and gains menace until end of turn.\n{2}{R}: Level 3\nCreatures you control have haste.

View File

@@ -1,12 +1,12 @@
Name:Bard Class
ManaCost:R G
Types:Enchantment Class
K:Class:3:R G,3 R G
R:Event$ Moved | ClassLevel$ 1 | ActiveZones$ Battlefield | ValidCard$ Creature.Legendary+YouCtrl | ReplaceWith$ EtbAddCounter | Destination$ Battlefield | Description$ Legendary creatures you control enter the battlefield with an additional +1/+1 counter on them.
SVar:EtbAddCounter:DB$ PutCounter | ETB$ True | Defined$ ReplacedCard | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ ToBattlefield
SVar:ToBattlefield:DB$ InternalEtbReplacement
S:Mode$ ReduceCost | ClassLevel$ 2 | ValidCard$ Legendary | Type$ Spell | Activator$ You | Amount$ 1 | Color$ R G | Description$ Legendary spells you cast cost {R}{G} less to cast. This effect reduces only the amount of colored mana you pay.
T:Mode$ SpellCast | ClassLevel$ 3 | ValidCard$ Legendary | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigImpulsiveDraw | TriggerDescription$ Whenever you cast a legendary spell, exile the top two cards of your library. You may play them this turn.
K:ETBReplacement:Other:AddExtraCounter:Mandatory:Battlefield:Creature.Legendary+YouCtrl+Other
SVar:AddExtraCounter:DB$ PutCounter | ETB$ True | Defined$ ReplacedCard | CounterType$ P1P1 | CounterNum$ 1 | SpellDescription$ Legendary creatures you control enter the battlefield with an additional +1/+1 counter on them.
K:Class:2:R G:AddStaticAbility$ SReduceCost
SVar:SReduceCost:Mode$ ReduceCost | ValidCard$ Legendary | Type$ Spell | Activator$ You | Amount$ 1 | Color$ R G | Secondary$ True | Description$ Legendary spells you cast cost {R}{G} less to cast. This effect reduces only the amount of colored mana you pay.
K:Class:3:3 R G:AddTrigger$ TriggerCast
SVar:TriggerCast:Mode$ SpellCast | ValidCard$ Legendary | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigImpulsiveDraw | Secondary$ True | TriggerDescription$ Whenever you cast a legendary spell, exile the top two cards of your library. You may play them this turn.
SVar:TrigImpulsiveDraw:DB$ Dig | Defined$ TriggeredPlayer | DigNum$ 2 | ChangeNum$ All | DestinationZone$ Exile | RememberChanged$ True | SubAbility$ DBEffect
SVar:DBEffect:DB$ Effect | EffectOwner$ TriggeredPlayer | RememberObjects$ RememberedCard | StaticAbilities$ StPlay | SubAbility$ DBCleanup | ForgetOnMoved$ Exile
SVar:StPlay:Mode$ Continuous | MayPlay$ True | EffectZone$ Command | Affected$ Card.IsRemembered | AffectedZone$ Exile | Description$ You may play them this turn.

View File

@@ -4,11 +4,8 @@ Types:Creature Human Shaman
PT:2/2
K:Level up:3 R
SVar:maxLevel:3
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 2 | SetToughness$ 3 | AddAbility$ Ping | CheckSVar$ X | SVarCompare$ EQ1 | Description$ LEVEL 1-2 2/3 CARDNAME gets {T}: CARDNAME deals 1 damage to any target.
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 2 | SetToughness$ 4 | AddAbility$ Bolt | CheckSVar$ Y | SVarCompare$ EQ1 | Description$ LEVEL 3+ 2/4 CARDNAME gets {T}: CARDNAME deals 3 damage to any target.
SVar:Ping:AB$DealDamage | Cost$ T | ValidTgts$ Creature,Player,Planeswalker | TgtPrompt$ Select any target | NumDmg$ 1 | SpellDescription$ CARDNAME deals 1 damage to any target.
SVar:Bolt:AB$DealDamage | Cost$ T | ValidTgts$ Creature,Player,Planeswalker | TgtPrompt$ Select any target | NumDmg$ 3 | SpellDescription$ CARDNAME deals 3 damage to any target.
SVar:X:Count$Valid Card.Self+counters_GE1_LEVEL+counters_LE2_LEVEL
SVar:Y:Count$Valid Card.Self+counters_GE3_LEVEL
SVar:Picture:http://www.wizards.com/global/images/magic/general/brimstone_mage.jpg
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 2 | SetToughness$ 3 | AddAbility$ Ping | IsPresent$ Card.Self+counters_GE1_LEVEL+counters_LE2_LEVEL | Description$ LEVEL 1-2 2/3 CARDNAME gets {T}: CARDNAME deals 1 damage to any target.
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 2 | SetToughness$ 4 | AddAbility$ Bolt | IsPresent$ Card.Self+counters_GE3_LEVEL | Description$ LEVEL 3+ 2/4 CARDNAME gets {T}: CARDNAME deals 3 damage to any target.
SVar:Ping:AB$ DealDamage | Cost$ T | ValidTgts$ Creature,Player,Planeswalker | TgtPrompt$ Select any target | NumDmg$ 1 | SpellDescription$ CARDNAME deals 1 damage to any target.
SVar:Bolt:AB$ DealDamage | Cost$ T | ValidTgts$ Creature,Player,Planeswalker | TgtPrompt$ Select any target | NumDmg$ 3 | SpellDescription$ CARDNAME deals 3 damage to any target.
Oracle:Level up {3}{R} ({3}{R}: Put a level counter on this. Level up only as a sorcery.)\nLEVEL 1-2\n2/3\n{T}: Brimstone Mage deals 1 damage to any target.\nLEVEL 3+\n2/4\n{T}: Brimstone Mage deals 3 damage to any target.

View File

@@ -4,9 +4,6 @@ Types:Creature Human Knight
PT:1/1
K:Level up:2
SVar:maxLevel:5
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 2 | SetToughness$ 2 | CheckSVar$ X | SVarCompare$ EQ1 | Description$ LEVEL 1-4 2/2
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 5 | SetToughness$ 5 | AddKeyword$ First Strike | CheckSVar$ Y | SVarCompare$ EQ1 | Description$ LEVEL 5+ 5/5 CARDNAME has First Strike
SVar:X:Count$Valid Card.Self+counters_GE1_LEVEL+counters_LE4_LEVEL
SVar:Y:Count$Valid Card.Self+counters_GE5_LEVEL
SVar:Picture:http://www.wizards.com/global/images/magic/general/caravan_escort.jpg
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 2 | SetToughness$ 2 | IsPresent$ Card.Self+counters_GE1_LEVEL+counters_LE4_LEVEL | Description$ LEVEL 1-4 2/2
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 5 | SetToughness$ 5 | IsPresent$ Card.Self+counters_GE5_LEVEL | AddKeyword$ First Strike | Description$ LEVEL 5+ 5/5 CARDNAME has First Strike
Oracle:Level up {2} ({2}: Put a level counter on this. Level up only as a sorcery.)\nLEVEL 1-4\n2/2\nLEVEL 5+\n5/5\nFirst strike

View File

@@ -3,7 +3,5 @@ ManaCost:1 U
Types:Creature Drake
PT:1/1
K:Flying
S:Mode$ Continuous | Affected$ Card.Self | AddPower$ 3 | AddToughness$ 3 | CheckSVar$ X | SVarCompare$ GE1 | Description$ CARDNAME gets +3/+3 as long as you control a creature with three or more level counters on it.
SVar:X:Count$Valid Creature.counters_GE3_LEVEL+YouCtrl
SVar:Picture:http://www.wizards.com/global/images/magic/general/champions_drake.jpg
S:Mode$ Continuous | Affected$ Card.Self | AddPower$ 3 | AddToughness$ 3 | IsPresent$ Creature.counters_GE3_LEVEL+YouCtrl | Description$ CARDNAME gets +3/+3 as long as you control a creature with three or more level counters on it.
Oracle:Flying\nChampion's Drake gets +3/+3 as long as you control a creature with three or more level counters on it.

View File

@@ -1,13 +1,14 @@
Name:Cleric Class
ManaCost:W
Types:Enchantment Class
K:Class:3:3 W,4 W
R:Event$ GainLife | ClassLevel$ 1 | ActiveZones$ Battlefield | ValidPlayer$ You | ReplaceWith$ ReplaceGainLife | Description$ If you would gain life, you gain that much life plus 1 instead.
R:Event$ GainLife | ActiveZones$ Battlefield | ValidPlayer$ You | ReplaceWith$ ReplaceGainLife | Description$ If you would gain life, you gain that much life plus 1 instead.
SVar:ReplaceGainLife:DB$ ReplaceEffect | VarName$ LifeGained | VarValue$ X
SVar:X:ReplaceCount$LifeGained/Plus.1
T:Mode$ LifeGained | ClassLevel$ 2 | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Whenever you gain life, put a +1/+1 counter on target creature you control.
K:Class:2:3 W:AddTrigger$ TriggerLife
SVar:TriggerLife:Mode$ LifeGained | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigPutCounter | Secondary$ True | TriggerDescription$ Whenever you gain life, put a +1/+1 counter on target creature you control.
SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | CounterType$ P1P1 | CounterNum$ 1
T:Mode$ ClassLevelGained | ClassLevel$ 3 | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigReanimate | TriggerDescription$ When this Class becomes level 3, return target creature card from your graveyard to the battlefield. You gain life equal to its toughness.
K:Class:3:4 W:AddTrigger$ TriggerClassLevel
SVar:TriggerClassLevel:Mode$ ClassLevelGained | ClassLevel$ 3 | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigReanimate | Secondary$ True | TriggerDescription$ When this Class becomes level 3, return target creature card from your graveyard to the battlefield. You gain life equal to its toughness.
SVar:TrigReanimate:DB$ ChangeZone | ValidTgts$ Creature.YouOwn | TgtPrompt$ Select target creature from your graveyard | Origin$ Graveyard | Destination$ Battlefield | RememberTargets$ True | SubAbility$ DBGainLife
SVar:DBGainLife:DB$ GainLife | Defined$ You | LifeAmount$ Y | SubAbility$ DBCleanup
SVar:DBCleanup:DB$Cleanup | ClearRemembered$ True

View File

@@ -5,8 +5,8 @@ PT:2/2
K:Level up:1
SVar:maxLevel:4
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 3 | SetToughness$ 3 | AddKeyword$ Flying | IsPresent$ Card.Self+counters_GE2_LEVEL+counters_LE3_LEVEL | PresentCompare$ EQ1 | Description$ LEVEL 2-3 3/3 CARDNAME has Flying
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 4 | SetToughness$ 4 | AddKeyword$ Flying | IsPresent$ Card.Self+counters_GE4_LEVEL | PresentCompare$ EQ1 | Description$ LEVEL 4+ Flying 4/4 CARDNAME has Flying, Other Merfolk you control get +1/+1
S:Mode$ Continuous | Affected$ Creature.Merfolk+YouCtrl+Other | AddPower$ 1 | AddToughness$ 1 | IsPresent$ Card.Self+counters_GE4_LEVEL | PresentCompare$ EQ1
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 4 | SetToughness$ 4 | AddKeyword$ Flying | AddStaticAbility$ SBoost | IsPresent$ Card.Self+counters_GE4_LEVEL | PresentCompare$ EQ1 | Description$ LEVEL 4+ Flying 4/4 CARDNAME has Flying, Other Merfolk you control get +1/+1
SVar:SBoost:Mode$ Continuous | Affected$ Creature.Merfolk+YouCtrl+Other | AddPower$ 1 | AddToughness$ 1 | IsPresent$ Card.Self+counters_GE4_LEVEL | PresentCompare$ EQ1
DeckHints:Type$Merfolk
DeckHas:Ability$Counters
Oracle:Level up {1} ({1}: Put a level counter on this. Level up only as a sorcery.)\nLEVEL 2-3\n3/3\nFlying\nLEVEL 4+\n4/4\nFlying\nOther Merfolk creatures you control get +1/+1.

View File

@@ -1,11 +1,12 @@
Name:Druid Class
ManaCost:1 G
Types:Enchantment Class
K:Class:3:2 G,4 G
T:Mode$ ChangesZone | ClassLevel$ 1 | Origin$ Any | Destination$ Battlefield | ValidCard$ Land.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigGainLife | TriggerDescription$ Whenever a land enters the battlefield under your control, you gain 1 life.
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Land.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigGainLife | TriggerDescription$ Whenever a land enters the battlefield under your control, you gain 1 life.
SVar:TrigGainLife:DB$GainLife | Defined$ You | LifeAmount$ 1
S:Mode$ Continuous | ClassLevel$ 2 | Affected$ You | AdjustLandPlays$ 1 | Description$ You may play an additional land on each of your turns.
T:Mode$ ClassLevelGained | ClassLevel$ 3 | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigAnimateLand | TriggerDescription$ When this Class becomes level 3, target land you control becomes a creature with haste and "This creature's power and toughness are each equal to the number of lands you control." It's still a land.
K:Class:2:2 G:AddStaticAbility$ SLandPlay
SVar:SLandPlay:Mode$ Continuous | Affected$ You | AdjustLandPlays$ 1 | Secondary$ True | Description$ You may play an additional land on each of your turns.
K:Class:3:4 G:AddTrigger$ TriggerClassLevel
SVar:TriggerClassLevel:Mode$ ClassLevelGained | ClassLevel$ 3 | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigAnimateLand | Secondary$ True | TriggerDescription$ When this Class becomes level 3, target land you control becomes a creature with haste and "This creature's power and toughness are each equal to the number of lands you control." It's still a land.
SVar:TrigAnimateLand:DB$ Animate | ValidTgts$ Land.YouCtrl | Types$ Creature | Duration$ Permanent | Keywords$ Haste | staticAbilities$ StLandPT
SVar:StLandPT:Mode$ Continuous | EffectZone$ All | CharacteristicDefining$ True | SetPower$ X | SetToughness$ X | Description$ This creature's power and toughness are each equal to the number of lands you control.
SVar:X:Count$Valid Land.YouCtrl

View File

@@ -4,12 +4,9 @@ Types:Creature Merfolk Wizard
PT:0/1
K:Level up:1 U
SVar:maxLevel:3
S:Mode$ Continuous | Affected$ Card.Self | AddAbility$ Loot | CheckSVar$ X | SVarCompare$ EQ1 | Description$ LEVEL 1-2 CARDNAME has {T}: Draw a card, then discard a card.
S:Mode$ Continuous | Affected$ Card.Self | AddAbility$ Draw | CheckSVar$ Y | SVarCompare$ EQ1 | Description$ LEVEL 3+ CARDNAME has {T}: Draw a card.
SVar:Loot:AB$Draw | Cost$ T | NumCards$ 1 | SpellDescription$ Draw a card, then discard a card. | SubAbility$ DBDiscard
SVar:Draw:AB$Draw | Cost$ T | NumCards$ 1 | SpellDescription$ Draw a card.
S:Mode$ Continuous | Affected$ Card.Self | AddAbility$ Loot | IsPresent$ Card.Self+counters_GE1_LEVEL+counters_LE2_LEVEL | Description$ LEVEL 1-2 CARDNAME has {T}: Draw a card, then discard a card.
S:Mode$ Continuous | Affected$ Card.Self | AddAbility$ Draw | IsPresent$ Card.Self+counters_GE3_LEVEL | Description$ LEVEL 3+ CARDNAME has {T}: Draw a card.
SVar:Loot:AB$ Draw | Cost$ T | NumCards$ 1 | SpellDescription$ Draw a card, then discard a card. | SubAbility$ DBDiscard
SVar:Draw:AB$ Draw | Cost$ T | NumCards$ 1 | SpellDescription$ Draw a card.
SVar:DBDiscard:DB$Discard | Defined$ You | Mode$ TgtChoose | NumCards$ 1
SVar:X:Count$Valid Card.Self+counters_GE1_LEVEL+counters_LT3_LEVEL
SVar:Y:Count$Valid Card.Self+counters_GE3_LEVEL
SVar:Picture:http://www.wizards.com/global/images/magic/general/enclave_cryptologist.jpg
Oracle:Level up {1}{U} ({1}{U}: Put a level counter on this. Level up only as a sorcery.)\nLEVEL 1-2\n0/1\n{T}: Draw a card, then discard a card.\nLEVEL 3+\n0/1\n{T}: Draw a card.

View File

@@ -1,10 +1,11 @@
Name:Fighter Class
ManaCost:R W
Types:Enchantment Class
K:Class:3:1 R W,3 R W
T:Mode$ ChangesZone | ClassLevel$ 1 | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters the battlefield, search your library for an Equipment card, reveal it, put it into your hand, then shuffle.
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters the battlefield, search your library for an Equipment card, reveal it, put it into your hand, then shuffle.
SVar:TrigChange:DB$ ChangeZone | Origin$ Library | Destination$ Hand | ChangeType$ Card.Equipment | ChangeNum$ 1
S:Mode$ ReduceCost | ClassLevel$ 2 | ValidCard$ Card | ValidSpell$ Activated.Equip | Activator$ You | Amount$ 2 | Description$ Equip abilities you activate cost {2} less to activate.
T:Mode$ Attacks | ClassLevel$ 3 | ValidCard$ Creature.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigMustBlock | TriggerDescription$ Whenever a creature you control attacks, up to one target creature blocks it this combat if able.
K:Class:2:1 R W:AddStaticAbility$ SReduceCost
SVar:SReduceCost:Mode$ ReduceCost | ValidCard$ Card | ValidSpell$ Activated.Equip | Activator$ You | Amount$ 2 | Secondary$ True | Description$ Equip abilities you activate cost {2} less to activate.
K:Class:3:3 R W:AddTrigger$ TriggerAttacks
SVar:TriggerAttacks:Mode$ Attacks | ValidCard$ Creature.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigMustBlock | Secondary$ True | TriggerDescription$ Whenever a creature you control attacks, up to one target creature blocks it this combat if able.
SVar:TrigMustBlock:DB$ MustBlock | ValidTgts$ Creature | TargetMin$ 0 | TargetMax$ 1 | DefinedAttacker$ TriggeredAttacker | BlockAllDefined$ True
Oracle:(Gain the next level as a sorcery to add its ability.)\nWhen Fighter Class enters the battlefield, search your library for an Equipment card, reveal it, put it into your hand, then shuffle.\n{1}{R}{W}: Level 2\nEquip abilities you activate cost {2} less to activate.\n{3}{R}{W}: Level 3\nWhenever a creature you control attacks, up to one target creature blocks it this combat if able.

View File

@@ -4,11 +4,8 @@ Types:Creature Vampire Assassin
PT:1/1
K:Level up:1 B
SVar:maxLevel:4
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 2 | SetToughness$ 2 | AddAbility$ LowLvl | CheckSVar$ X | SVarCompare$ EQ1 | Description$ LEVEL 2-3 2/2 CARDNAME has {B}, {T}: Target creature gets -2/-2 until end of turn.
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 4 | SetToughness$ 4 | AddAbility$ HighLvl | CheckSVar$ Y | SVarCompare$ EQ1 | Description$ LEVEL 4+ 4/4 CARDNAME has {B}, {T}: Target creature gets -4/-4 until end of turn.
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 2 | SetToughness$ 2 | AddAbility$ LowLvl | IsPresent$ Card.Self+counters_GE2_LEVEL+counters_LE3_LEVEL | Description$ LEVEL 2-3 2/2 CARDNAME has {B}, {T}: Target creature gets -2/-2 until end of turn.
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 4 | SetToughness$ 4 | AddAbility$ HighLvl | IsPresent$ Card.Self+counters_GE4_LEVEL | Description$ LEVEL 4+ 4/4 CARDNAME has {B}, {T}: Target creature gets -4/-4 until end of turn.
SVar:LowLvl:AB$ Pump | Cost$ B T | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumAtt$ -2 | NumDef$ -2 | IsCurse$ True | SpellDescription$ Target creature gets -2/-2 until end of turn.
SVar:HighLvl:AB$ Pump | Cost$ B T | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumAtt$ -4 | NumDef$ -4 | IsCurse$ True | SpellDescription$ Target creature gets -4/-4 until end of turn.
SVar:X:Count$Valid Card.Self+counters_GE2_LEVEL+counters_LT4_LEVEL
SVar:Y:Count$Valid Card.Self+counters_GE4_LEVEL
SVar:Picture:http://www.wizards.com/global/images/magic/general/guul_draz_assassin.jpg
Oracle:Level up {1}{B} ({1}{B}: Put a level counter on this. Level up only as a sorcery.)\nLEVEL 2-3\n2/2\n{B}, {T}: Target creature gets -2/-2 until end of turn.\nLEVEL 4+\n4/4\n{B}, {T}: Target creature gets -4/-4 until end of turn.

View File

@@ -4,9 +4,6 @@ Types:Creature Human Rogue
PT:1/1
K:Level up:2 U
SVar:maxLevel:3
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 2 | SetToughness$ 2 | AddHiddenKeyword$ Unblockable | CheckSVar$ X | SVarCompare$ EQ1 | Description$ LEVEL 1-2 2/2 CARDNAME can't be blocked
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 3 | SetToughness$ 3 | AddKeyword$ Shroud | AddHiddenKeyword$ Unblockable | CheckSVar$ Y | SVarCompare$ EQ1 | Description$ LEVEL 3+ 3/3 CARDNAME can't be blocked and has Shroud
SVar:X:Count$Valid Card.Self+counters_GE1_LEVEL+counters_LE2_LEVEL
SVar:Y:Count$Valid Card.Self+counters_GE3_LEVEL
SVar:Picture:http://www.wizards.com/global/images/magic/general/hada_spy_patrol.jpg
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 2 | SetToughness$ 2 | AddHiddenKeyword$ Unblockable | IsPresent$ Card.Self+counters_GE1_LEVEL+counters_LE2_LEVEL | Description$ LEVEL 1-2 2/2 CARDNAME can't be blocked
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 3 | SetToughness$ 3 | AddKeyword$ Shroud | AddHiddenKeyword$ Unblockable | IsPresent$ Card.Self+counters_GE3_LEVEL | Description$ LEVEL 3+ 3/3 CARDNAME can't be blocked and has Shroud
Oracle:Level up {2}{U} ({2}{U}: Put a level counter on this. Level up only as a sorcery.)\nLEVEL 1-2\n2/2\nHada Spy Patrol can't be blocked.\nLEVEL 3+\n3/3\nShroud (This creature can't be the target of spells or abilities.)\nHada Spy Patrol can't be blocked.

View File

@@ -4,12 +4,10 @@ Types:Creature Human Cleric
PT:0/3
K:Level up:2 W
SVar:maxLevel:5
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 1 | SetToughness$ 4 | CheckSVar$ X | SVarCompare$ EQ1 | Description$ LEVEL 1-4 1/4 If a source would deal damage to you or a creature you control prevent 1 of that damage.
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 2 | SetToughness$ 5 | CheckSVar$ Y | SVarCompare$ EQ1 | Description$ LEVEL 5+ 2/5 If a source would deal damage to you or a creature you control prevent 2 of that damage.
R:Event$ DamageDone | ActiveZones$ Battlefield | ValidTarget$ You,Creature.YouCtrl | ReplaceWith$ DBReplace1 | PreventionEffect$ True | CheckSVar$ X | SVarCompare$ EQ1
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 1 | SetToughness$ 4 | AddReplacementEffects$ RDamage1 | IsPresent$ Card.Self+counters_GE1_LEVEL+counters_LE4_LEVEL | Description$ LEVEL 1-4 1/4 If a source would deal damage to you or a creature you control prevent 1 of that damage.
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 2 | SetToughness$ 5 | AddReplacementEffects$ RDamage2 | IsPresent$ Card.Self+counters_GE5_LEVEL | Description$ LEVEL 5+ 2/5 If a source would deal damage to you or a creature you control prevent 2 of that damage.
SVar:RDamage1:Event$ DamageDone | ActiveZones$ Battlefield | ValidTarget$ You,Creature.YouCtrl | ReplaceWith$ DBReplace1 | PreventionEffect$ True | Secondary$ True | Description$ If a source would deal damage to you or a creature you control prevent 1 of that damage.
SVar:DBReplace1:DB$ ReplaceDamage | Amount$ 1
R:Event$ DamageDone | ActiveZones$ Battlefield | ValidTarget$ You,Creature.YouCtrl | ReplaceWith$ DBReplace2 | PreventionEffect$ True | CheckSVar$ Y | SVarCompare$ EQ1
SVar:RDamage2:Event$ DamageDone | ActiveZones$ Battlefield | ValidTarget$ You,Creature.YouCtrl | ReplaceWith$ DBReplace2 | PreventionEffect$ True | Secondary$ True | Description$ If a source would deal damage to you or a creature you control prevent 2 of that damage.
SVar:DBReplace2:DB$ ReplaceDamage | Amount$ 2
SVar:X:Count$Valid Card.Self+counters_GE1_LEVEL+counters_LT5_LEVEL
SVar:Y:Count$Valid Card.Self+counters_GE5_LEVEL
Oracle:Level up {2}{W} ({2}{W}: Put a level counter on this. Level up only as a sorcery.)\nLEVEL 1-4\n1/4\nIf a source would deal damage to you or a creature you control, prevent 1 of that damage.\nLEVEL 5+\n2/5\nIf a source would deal damage to you or a creature you control, prevent 2 of that damage.

View File

@@ -4,9 +4,6 @@ Types:Creature Human Soldier
PT:1/2
K:Level up:4
SVar:maxLevel:4
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 2 | SetToughness$ 6 | AddKeyword$ Vigilance | CheckSVar$ X | SVarCompare$ EQ1 | Description$ LEVEL 1-3 2/6 CARDNAME has Vigilance
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 3 | SetToughness$ 10 | AddKeyword$ Vigilance | CheckSVar$ Y | SVarCompare$ EQ1 | Description$ LEVEL 4+ 3/10 CARDNAME has Vigilance
SVar:X:Count$Valid Card.Self+counters_GE1_LEVEL+counters_LE3_LEVEL
SVar:Y:Count$Valid Card.Self+counters_GE4_LEVEL
SVar:Picture:http://www.wizards.com/global/images/magic/general/ikiral_outrider.jpg
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 2 | SetToughness$ 6 | AddKeyword$ Vigilance | IsPresent$ Card.Self+counters_GE1_LEVEL+counters_LE3_LEVEL | Description$ LEVEL 1-3 2/6 CARDNAME has Vigilance
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 3 | SetToughness$ 10 | AddKeyword$ Vigilance | IsPresent$ Card.Self+counters_GE4_LEVEL | Description$ LEVEL 4+ 3/10 CARDNAME has Vigilance
Oracle:Level up {4} ({4}: Put a level counter on this. Level up only as a sorcery.)\nLEVEL 1-3\n2/6\nVigilance\nLEVEL 4+\n3/10\nVigilance

View File

@@ -4,11 +4,8 @@ Types:Creature Elf Druid
PT:1/1
K:Level up:1 G
SVar:maxLevel:5
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 1 | SetToughness$ 2 | AddAbility$ Mana | CheckSVar$ X | SVarCompare$ EQ1 | Description$ LEVEL 1-4 1/2 CARDNAME has "{T}: Add {G}{G}."
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 1 | SetToughness$ 4 | CheckSVar$ Y | SVarCompare$ EQ1 | Description$ LEVEL 5+ 1/4 Elves you control have "{T}: Add {G}{G}."
S:Mode$ Continuous | Affected$ Card.Elf+YouCtrl | AddAbility$ Mana | CheckSVar$ Y | SVarCompare$ EQ1
SVar:Mana:AB$Mana | Cost$ T | Produced$ G | Amount$ 2 | SpellDescription$ Add {G}{G}.
SVar:X:Count$Valid Card.Self+counters_GE1_LEVEL+counters_LT5_LEVEL
SVar:Y:Count$Valid Card.Self+counters_GE5_LEVEL
SVar:Picture:http://www.wizards.com/global/images/magic/general/joraga_treespeaker.jpg
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 1 | SetToughness$ 2 | AddAbility$ ABMana | IsPresent$ Card.Self+counters_GE1_LEVEL+counters_LE4_LEVEL | Description$ LEVEL 1-4 1/2 CARDNAME has "{T}: Add {G}{G}."
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 1 | SetToughness$ 4 | AddStaticAbility$ SMana | IsPresent$ Card.Self+counters_GE5_LEVEL | Description$ LEVEL 5+ 1/4 Elves you control have "{T}: Add {G}{G}."
SVar:SMana:Mode$ Continuous | Affected$ Card.Elf+YouCtrl | AddAbility$ ABMana | Secondary$ True | Description$ Elves you control have "{T}: Add {G}{G}."
SVar:ABMana:AB$ Mana | Cost$ T | Produced$ G | Amount$ 2 | SpellDescription$ Add {G}{G}.
Oracle:Level up {1}{G} ({1}{G}: Put a level counter on this. Level up only as a sorcery.)\nLEVEL 1-4\n1/2\n{T}: Add {G}{G}.\nLEVEL 5+\n1/4\nElves you control have "{T}: Add {G}{G}."

View File

@@ -4,11 +4,8 @@ Types:Creature Human Knight
PT:2/4
K:Level up:2 W
SVar:maxLevel:5
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 3 | SetToughness$ 6 | CheckSVar$ X | SVarCompare$ EQ1 | Description$ LEVEL 2-4 3/6 Other creatures you control get +1/+1.
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 4 | SetToughness$ 8 | CheckSVar$ Y | SVarCompare$ EQ1 | Description$ LEVEL 5+ 4/8 Other creatures you control get +2/+2.
S:Mode$ Continuous | Affected$ Creature.YouCtrl+Other | AddPower$ 1 | AddToughness$ 1 | CheckSVar$ X | SVarCompare$ EQ1
S:Mode$ Continuous | Affected$ Creature.YouCtrl+Other | AddPower$ 2 | AddToughness$ 2 | CheckSVar$ Y | SVarCompare$ EQ1
SVar:X:Count$Valid Card.Self+counters_GE2_LEVEL+counters_LT5_LEVEL
SVar:Y:Count$Valid Card.Self+counters_GE5_LEVEL
SVar:Picture:http://www.wizards.com/global/images/magic/general/kabira_vindicator.jpg
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 3 | SetToughness$ 6 | AddStaticAbility$ SPump1 | IsPresent$ Card.Self+counters_GE2_LEVEL+counters_LE4_LEVEL | Description$ LEVEL 2-4 3/6 Other creatures you control get +1/+1.
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 4 | SetToughness$ 8 | AddStaticAbility$ SPump2 | IsPresent$ Card.Self+counters_GE5_LEVEL | Description$ LEVEL 5+ 4/8 Other creatures you control get +2/+2.
SVar:SPump1:Mode$ Continuous | Affected$ Creature.YouCtrl+Other | AddPower$ 1 | AddToughness$ 1 | Secondary$ True | Description$ Other creatures you control get +1/+1.
SVar:SPump2:Mode$ Continuous | Affected$ Creature.YouCtrl+Other | AddPower$ 2 | AddToughness$ 2 | Secondary$ True | Description$ Other creatures you control get +2/+2.
Oracle:Level up {2}{W} ({2}{W}: Put a level counter on this. Level up only as a sorcery.)\nLEVEL 2-4\n3/6\nOther creatures you control get +1/+1.\nLEVEL 5+\n4/8\nOther creatures you control get +2/+2.

View File

@@ -4,9 +4,7 @@ Types:Creature Human Warrior
PT:2/2
K:Level up:R
SVar:maxLevel:8
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 4 | SetToughness$ 4 | AddKeyword$ Flying | CheckSVar$ X | SVarCompare$ EQ1 | Description$ LEVEL 4-7 4/4 CARDNAME has Flying
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 8 | SetToughness$ 8 | AddKeyword$ Flying & Trample | AddAbility$ Pump | CheckSVar$ Y | SVarCompare$ EQ1 | Description$ LEVEL 8+ 8/8 CARDNAME has Flying and Trample and R: CARDNAME gets +1/+0 until end of turn.
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 4 | SetToughness$ 4 | AddKeyword$ Flying | IsPresent$ Card.Self+counters_GE4_LEVEL+counters_LE7_LEVEL | Description$ LEVEL 4-7 4/4 CARDNAME has Flying
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 8 | SetToughness$ 8 | AddKeyword$ Flying & Trample | AddAbility$ Pump | IsPresent$ Card.Self+counters_GE8_LEVEL | Description$ LEVEL 8+ 8/8 CARDNAME has Flying and Trample and R: CARDNAME gets +1/+0 until end of turn.
SVar:Pump:AB$ Pump | Cost$ R | Defined$ Self | NumAtt$ 1 | SpellDescription$ CARDNAME gets +1/+0 until end of turn.
SVar:X:Count$Valid Card.Self+counters_GE4_LEVEL+counters_LE7_LEVEL
SVar:Y:Count$Valid Card.Self+counters_GE8_LEVEL
Oracle:Level up {R} ({R}: Put a level counter on this. Level up only as a sorcery.)\nLEVEL 4-7\n4/4\nFlying\nLEVEL 8+\n8/8\nFlying, trample\n{R}: Kargan Dragonlord gets +1/+0 until end of turn.

View File

@@ -4,11 +4,8 @@ Types:Creature Human Shaman
PT:1/1
K:Level up:1 G
SVar:maxLevel:6
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 1 | SetToughness$ 1 | AddAbility$ TokenLow | CheckSVar$ X | SVarCompare$ EQ1 | Description$ LEVEL 2-5 1/1 {T}: Create a 3/3 green Elephant creature token.
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 1 | SetToughness$ 1 | AddAbility$ TokenHigh | CheckSVar$ Y | SVarCompare$ EQ1 | Description$ LEVEL 6+ 1/1 {T}: Create two 3/3 green Elephant creature tokens.
SVar:TokenLow:AB$ Token | Cost$ T | TokenAmount$ 1 | TokenScript$ g_3_3_elephant | TokenOwner$ You | LegacyImage$ g 3 3 elephant roe | SpellDescription$ Create a 3/3 green Elephant creature token.
SVar:TokenHigh:AB$ Token | Cost$ T | TokenAmount$ 2 | TokenScript$ g_3_3_elephant | TokenOwner$ You | LegacyImage$ g 3 3 elephant roe | SpellDescription$ Create two 3/3 green Elephant creature tokens.
SVar:X:Count$Valid Card.Self+counters_GE2_LEVEL+counters_LE5_LEVEL
SVar:Y:Count$Valid Card.Self+counters_GE6_LEVEL
SVar:Picture:http://www.wizards.com/global/images/magic/general/kazandu_tuskcaller.jpg
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 1 | SetToughness$ 1 | AddAbility$ TokenLow | IsPresent$ Card.Self+counters_GE2_LEVEL+counters_LE5_LEVEL | Description$ LEVEL 2-5 1/1 {T}: Create a 3/3 green Elephant creature token.
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 1 | SetToughness$ 1 | AddAbility$ TokenHigh | IsPresent$ Card.Self+counters_GE6_LEVEL | Description$ LEVEL 6+ 1/1 {T}: Create two 3/3 green Elephant creature tokens.
SVar:TokenLow:AB$ Token | Cost$ T | TokenAmount$ 1 | TokenScript$ g_3_3_elephant | TokenOwner$ You | SpellDescription$ Create a 3/3 green Elephant creature token.
SVar:TokenHigh:AB$ Token | Cost$ T | TokenAmount$ 2 | TokenScript$ g_3_3_elephant | TokenOwner$ You | SpellDescription$ Create two 3/3 green Elephant creature tokens.
Oracle:Level up {1}{G} ({1}{G}: Put a level counter on this. Level up only as a sorcery.)\nLEVEL 2-5\n1/1\n{T}: Create a 3/3 green Elephant creature token.\nLEVEL 6+\n1/1\n{T}: Create two 3/3 green Elephant creature tokens.

View File

@@ -4,9 +4,6 @@ Types:Creature Kor Knight
PT:2/2
K:Level up:3
SVar:maxLevel:4
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 2 | SetToughness$ 3 | AddKeyword$ Flying | CheckSVar$ X | SVarCompare$ EQ1 | Description$ LEVEL 1-3 2/3 CARDNAME has Flying
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 4 | SetToughness$ 4 | AddKeyword$ Flying & Vigilance | CheckSVar$ Y | SVarCompare$ EQ1 | Description$ LEVEL 4+ 4/4 CARDNAME has Flying and Vigilance
SVar:X:Count$Valid Card.Self+counters_GE1_LEVEL+counters_LE3_LEVEL
SVar:Y:Count$Valid Card.Self+counters_GE4_LEVEL
SVar:Picture:http://www.wizards.com/global/images/magic/general/knight_of_cliffhaven.jpg
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 2 | SetToughness$ 3 | AddKeyword$ Flying | IsPresent$ Card.Self+counters_GE1_LEVEL+counters_LE3_LEVEL | Description$ LEVEL 1-3 2/3 CARDNAME has Flying
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 4 | SetToughness$ 4 | AddKeyword$ Flying & Vigilance | IsPresent$ Card.Self+counters_GE4_LEVEL | Description$ LEVEL 4+ 4/4 CARDNAME has Flying and Vigilance
Oracle:Level up {3} ({3}: Put a level counter on this. Level up only as a sorcery.)\nLEVEL 1-3\n2/3\nFlying\nLEVEL 4+\n4/4\nFlying, vigilance

View File

@@ -4,11 +4,8 @@ Types:Creature Human Wizard
PT:1/3
K:Level up:U
SVar:maxLevel:7
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 2 | SetToughness$ 4 | CheckSVar$ X | SVarCompare$ EQ1 | Description$ LEVEL 4-6 2/4
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 3 | SetToughness$ 5 | AddTrigger$ TriggerExtraTurn | CheckSVar$ Y | SVarCompare$ EQ1 | Description$ LEVEL 7+ 3/5 At the beginning of each end step, if it's not your turn, take an extra turn after this one.
SVar:X:Count$Valid Card.Self+counters_GE4_LEVEL+counters_LE6_LEVEL
SVar:Y:Count$Valid Card.Self+counters_GE7_LEVEL
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 2 | SetToughness$ 4 | IsPresent$ Card.Self+counters_GE4_LEVEL+counters_LE6_LEVEL | Description$ LEVEL 4-6 2/4
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 3 | SetToughness$ 5 | AddTrigger$ TriggerExtraTurn | IsPresent$ Card.Self+counters_GE7_LEVEL | Description$ LEVEL 7+ 3/5 At the beginning of each end step, if it's not your turn, take an extra turn after this one.
SVar:TriggerExtraTurn:Mode$ Phase | Phase$ End of Turn | NotPlayerTurn$ True | Execute$ TrigExtraTurn | TriggerZones$ Battlefield | TriggerDescription$ At the beginning of each end step, if it's not your turn, take an extra turn after this one.
SVar:TrigExtraTurn:DB$ AddTurn | NumTurns$ 1
SVar:Picture:http://www.wizards.com/global/images/magic/general/lighthouse_chronologist.jpg
Oracle:Level up {U} ({U}: Put a level counter on this. Level up only as a sorcery.)\nLEVEL 4-6\n2/4\nLEVEL 7+\n3/5\nAt the beginning of each end step, if it's not your turn, take an extra turn after this one.

View File

@@ -4,11 +4,8 @@ Types:Creature Minotaur Shaman
PT:3/3
K:Level up:1 R
SVar:maxLevel:6
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 6 | SetToughness$ 6 | CheckSVar$ X | SVarCompare$ EQ1 | Description$ LEVEL 1-5 6/6
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 6 | SetToughness$ 6 | AddTrigger$ TriggerDamage | CheckSVar$ Y | SVarCompare$ EQ1 | Description$ LEVEL 6+ 6/6 Whenever CARDNAME attacks, it deals 6 damage to each creature defending player controls.
SVar:X:Count$Valid Card.Self+counters_GE1_LEVEL+counters_LE5_LEVEL
SVar:Y:Count$Valid Card.Self+counters_GE6_LEVEL
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 6 | SetToughness$ 6 | IsPresent$ Card.Self+counters_GE1_LEVEL+counters_LE5_LEVEL | Description$ LEVEL 1-5 6/6
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 6 | SetToughness$ 6 | AddTrigger$ TriggerDamage | IsPresent$ Card.Self+counters_GE6_LEVEL | Description$ LEVEL 6+ 6/6 Whenever CARDNAME attacks, it deals 6 damage to each creature defending player controls.
SVar:TriggerDamage:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigDamage | TriggerZones$ Battlefield | TriggerDescription$ Whenever CARDNAME attacks, it deals 6 damage to each creature defending player controls.
SVar:TrigDamage:DB$DamageAll | ValidCards$ Creature.DefenderCtrl | NumDmg$ 6
SVar:Picture:http://www.wizards.com/global/images/magic/general/lord_of_shatterskull_pass.jpg
SVar:TrigDamage:DB$ DamageAll | ValidCards$ Creature.ControlledBy TriggeredDefendingPlayer | NumDmg$ 6
Oracle:Level up {1}{R} ({1}{R}: Put a level counter on this. Level up only as a sorcery.)\nLEVEL 1-5\n6/6\nLEVEL 6+\n6/6\nWhenever Lord of Shatterskull Pass attacks, it deals 6 damage to each creature defending player controls.

View File

@@ -1,11 +1,12 @@
Name:Monk Class
ManaCost:W U
Types:Enchantment Class
K:Class:3:W U,1 W U
S:Mode$ ReduceCost | ClassLevel$ 1 | ValidCard$ Card | Type$ Spell | Activator$ You | Amount$ 1 | CheckSVar$ YouCastThisTurn | SVarCompare$ EQ1 | Description$ The second spell you cast each turn costs {1} less to cast.
T:Mode$ ClassLevelGained | ClassLevel$ 2 | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigBounce | TriggerDescription$ When this Class becomes level 2, return up to one target nonland permanent to its owner's hand.
SVar:TrigBounce:DB$ChangeZone | ValidTgts$ Permanent.nonLand | TargetMin$ 0 | TargetMax$ 1 | TgtPrompt$ Select target nonland permanent | Origin$ Battlefield | Destination$ Hand
T:Mode$ Phase | ClassLevel$ 3 | Phase$ Upkeep | TriggerZones$ Battlefield | ValidPlayer$ You | Execute$ TrigExile | TriggerDescription$ At the beginning of your upkeep, exile the top card of your library. For as long as it remains exiled, it has "You may cast this card from exile as long as you've cast another spell this turn."
S:Mode$ ReduceCost | ValidCard$ Card | Type$ Spell | Activator$ You | Amount$ 1 | CheckSVar$ YouCastThisTurn | SVarCompare$ EQ1 | Description$ The second spell you cast each turn costs {1} less to cast.
K:Class:2:W U:AddTrigger$ TriggerClassLevel
SVar:TriggerClassLevel:Mode$ ClassLevelGained | ClassLevel$ 2 | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigBounce | Secondary$ True | TriggerDescription$ When this Class becomes level 2, return up to one target nonland permanent to its owner's hand.
SVar:TrigBounce:DB$ ChangeZone | ValidTgts$ Permanent.nonLand | TargetMin$ 0 | TargetMax$ 1 | TgtPrompt$ Select target nonland permanent | Origin$ Battlefield | Destination$ Hand
K:Class:3:1 W U:AddTrigger$ TriggerUpkeep
SVar:TriggerUpkeep:Mode$ Phase | Phase$ Upkeep | TriggerZones$ Battlefield | ValidPlayer$ You | Execute$ TrigExile | Secondary$ True | TriggerDescription$ At the beginning of your upkeep, exile the top card of your library. For as long as it remains exiled, it has "You may cast this card from exile as long as you've cast another spell this turn."
SVar:TrigExile:DB$ Dig | Defined$ You | DigNum$ 1 | ChangeNum$ All | DestinationZone$ Exile | RememberChanged$ True | SubAbility$ DBMayPlay
SVar:DBMayPlay:DB$ Animate | Defined$ Remembered | staticAbilities$ StPlay | Duration$ Permanent | SubAbility$ DBCleanup
SVar:StPlay:Mode$ Continuous | MayPlay$ True | EffectZone$ Exile | Affected$ Card.Self+nonLand | AffectedZone$ Exile | CheckSVar$ YouCastThisTurn | SVarCompare$ GE1 | Description$ You may cast this card from exile as long as you've cast another spell this turn.

View File

@@ -4,9 +4,6 @@ Types:Creature Vampire Warrior
PT:3/2
K:Level up:2 B
SVar:maxLevel:3
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 4 | SetToughness$ 3 | AddKeyword$ Deathtouch | CheckSVar$ X | SVarCompare$ EQ1 | Description$ LEVEL 1-2 4/3 CARDNAME has Deathtouch
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 5 | SetToughness$ 4 | AddKeyword$ First Strike & Deathtouch | CheckSVar$ Y | SVarCompare$ EQ1 | Description$ LEVEL 3+ 5/4 CARDNAME has First Strike and Deathtouch
SVar:X:Count$Valid Card.Self+counters_GE1_LEVEL+counters_LE2_LEVEL
SVar:Y:Count$Valid Card.Self+counters_GE3_LEVEL
SVar:Picture:http://www.wizards.com/global/images/magic/general/nirkana_cutthroat.jpg
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 4 | SetToughness$ 3 | AddKeyword$ Deathtouch | IsPresent$ Card.Self+counters_GE1_LEVEL+counters_LE2_LEVEL | Description$ LEVEL 1-2 4/3 CARDNAME has Deathtouch
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 5 | SetToughness$ 4 | AddKeyword$ First Strike & Deathtouch | IsPresent$ Card.Self+counters_GE3_LEVEL | Description$ LEVEL 3+ 5/4 CARDNAME has First Strike and Deathtouch
Oracle:Level up {2}{B} ({2}{B}: Put a level counter on this. Level up only as a sorcery.)\nLEVEL 1-2\n4/3\nDeathtouch\nLEVEL 3+\n5/4\nFirst strike, deathtouch

View File

@@ -4,10 +4,7 @@ Types:Creature Zombie Warrior
PT:1/1
K:Level up:3
SVar:maxLevel:4
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 4 | SetToughness$ 2 | CheckSVar$ X | SVarCompare$ EQ1 | Description$ LEVEL 1-3 4/2
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 7 | SetToughness$ 3 | AddAbility$ Regen | CheckSVar$ Y | SVarCompare$ EQ1 | Description$ LEVEL 4+ 7/3 CARDNAME has "{B}: Regenerate CARDNAME."
SVar:Regen:AB$Regenerate | Cost$ B | SpellDescription$ Regenerate CARDNAME.
SVar:X:Count$Valid Card.Self+counters_GE1_LEVEL+counters_LE3_LEVEL
SVar:Y:Count$Valid Card.Self+counters_GE4_LEVEL
SVar:Picture:http://www.wizards.com/global/images/magic/general/null_champion.jpg
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 4 | SetToughness$ 2 | IsPresent$ Card.Self+counters_GE2_LEVEL+counters_LE3_LEVEL | Description$ LEVEL 1-3 4/2
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 7 | SetToughness$ 3 | AddAbility$ Regen | IsPresent$ Card.Self+counters_GE4_LEVEL | Description$ LEVEL 4+ 7/3 CARDNAME has "{B}: Regenerate CARDNAME."
SVar:Regen:AB$ Regenerate | Cost$ B | SpellDescription$ Regenerate CARDNAME.
Oracle:Level up {3} ({3}: Put a level counter on this. Level up only as a sorcery.)\nLEVEL 1-3\n4/2\nLEVEL 4+\n7/3\n{B}: Regenerate Null Champion.

View File

@@ -1,10 +1,11 @@
Name:Paladin Class
ManaCost:W
Types:Enchantment Class
K:Class:3:2 W,4 W
S:Mode$ RaiseCost | ClassLevel$ 1 | ValidCard$ Card | Activator$ Opponent | ValidSpell$ Spell | Amount$ 1 | Condition$ PlayerTurn | Description$ Spells your opponents cast during your turn cost {1} more to cast.
S:Mode$ Continuous | ClassLevel$ 2 | Affected$ Creature.YouCtrl | AddPower$ 1 | AddToughness$ 1 | Description$ Creatures you control get +1/+1.
T:Mode$ AttackersDeclared | ClassLevel$ 3 | AttackingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigPump | TriggerDescription$ Whenever you attack, until end of turn, target attacking creature gets +1/+1 for each other attacking creature and gains double strike.
S:Mode$ RaiseCost | ValidCard$ Card | Activator$ Opponent | ValidSpell$ Spell | Amount$ 1 | Condition$ PlayerTurn | Description$ Spells your opponents cast during your turn cost {1} more to cast.
K:Class:2:2 W:AddStaticAbility$ SPump
SVar:SPump:Mode$ Continuous | Affected$ Creature.YouCtrl | AddPower$ 1 | AddToughness$ 1 | Secondary$ True | Description$ Creatures you control get +1/+1.
K:Class:3:4 W:AddTrigger$ TriggerAttackersDeclared
SVar:TriggerAttackersDeclared:Mode$ AttackersDeclared | AttackingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigPump | Secondary$ True | TriggerDescription$ Whenever you attack, until end of turn, target attacking creature gets +1/+1 for each other attacking creature and gains double strike.
SVar:TrigPump:DB$ Pump | ValidTgts$ Creature.attacking | NumAtt$ X | NumDef$ X | KW$ Double Strike
SVar:X:Count$Valid Creature.attacking/Minus.1
Oracle:(Gain the next level as a sorcery to add its ability.)\nSpells your opponents cast during your turn cost {1} more to cast.\n{2}{W}: Level 2\nCreatures you control get +1/+1.\n{4}{W}: Level 3\nWhenever you attack, until end of turn, target attacking creature gets +1/+1 for each other attacking creature and gains double strike.

View File

@@ -1,12 +1,13 @@
Name:Ranger Class
ManaCost:1 G
Types:Enchantment Class
K:Class:3:1 G,3 G
T:Mode$ ChangesZone | ClassLevel$ 1 | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME enters the battlefield, create a 2/2 green Wolf creature token.
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME enters the battlefield, create a 2/2 green Wolf creature token.
SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ g_2_2_wolf | TokenOwner$ You
T:Mode$ AttackersDeclared | ClassLevel$ 2 | AttackingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Whenever you attack, put a +1/+1 counter on target attacking creature.
K:Class:2:1 G:AddTrigger$ TriggerAttackersDeclared
SVar:TriggerAttackersDeclared:Mode$ AttackersDeclared | AttackingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigPutCounter | Secondary$ True | TriggerDescription$ Whenever you attack, put a +1/+1 counter on target attacking creature.
SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature.attacking | TgtPrompt$ Select target attacking creature | CounterType$ P1P1 | CounterNum$ 1
S:Mode$ Continuous | ClassLevel$ 3 | Affected$ Card.TopLibrary+YouCtrl | AffectedZone$ Library | MayLookAt$ Player | Description$ You may look at the top card of your library any time.
S:Mode$ Continuous | ClassLevel$ 3 | Affected$ Creature.nonLand+TopLibrary+YouCtrl | AffectedZone$ Library | MayPlay$ True | Description$ You may cast creature spells from the top of your library.
K:Class:3:3 G:AddStaticAbility$ SMayLook & SMayPlay
SVar:SMayLook:Mode$ Continuous | Affected$ Card.TopLibrary+YouCtrl | AffectedZone$ Library | MayLookAt$ You | Secondary$ True | Description$ You may look at the top card of your library any time.
SVar:SMayPlay:Mode$ Continuous | Affected$ Creature.nonLand+TopLibrary+YouCtrl | AffectedZone$ Library | MayPlay$ True | Secondary$ True | Description$ You may cast creature spells from the top of your library.
DeckHas:Ability$Token & Ability$Counter
Oracle:(Gain the next level as a sorcery to add its ability.)\nWhen Ranger Class enters the battlefield, create a 2/2 green Wolf creature token.\n{1}{G}: Level 2\nWhenever you attack, put a +1/+1 counter on target attacking creature.\n{3}{G}: Level 3\nYou may look at the top card of your library any time.\nYou may cast creature spells from the top of your library.

View File

@@ -1,19 +1,20 @@
Name:Rogue Class
ManaCost:U B
Types:Enchantment Class
K:Class:3:1 U B,2 U B
T:Mode$ ChangesZone | ValidCard$ Card.IsRemembered | Origin$ Exile | ExcludedDestinations$ Stack | Destination$ Any | TriggerZones$ Battlefield | Execute$ TrigForget | Static$ True
T:Mode$ SpellCast | ValidCard$ Card.IsRemembered | TriggerZones$ Battlefield | Execute$ TrigForget | Static$ True
SVar:TrigForget:DB$ Pump | ForgetObjects$ TriggeredCard
T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Battlefield | Destination$ Any | Execute$ TrigCleanup | Static$ True
SVar:TrigCleanup:DB$ Cleanup | ClearRemembered$ True | ClearImprinted$ True
T:Mode$ DamageDone | ClassLevel$ 1 | ValidSource$ Creature.YouCtrl | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigDig | TriggerZones$ Battlefield | TriggerDescription$ Whenever a creature you control deals combat damage to a player, exile the top card of that player's library face down. You may look at it for as long as it remains exiled.
T:Mode$ DamageDone | ValidSource$ Creature.YouCtrl | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigDig | TriggerZones$ Battlefield | TriggerDescription$ Whenever a creature you control deals combat damage to a player, exile the top card of that player's library face down. You may look at it for as long as it remains exiled.
SVar:TrigDig:DB$ Dig | DigNum$ 1 | Defined$ TriggeredTarget | DestinationZone$ Exile | ExileFaceDown$ True | RememberChanged$ True | ChangeNum$ All | SubAbility$ DBExile
SVar:DBExile:DB$ ChangeZone | Defined$ Imprinted | Origin$ Command | Destination$ Exile | SubAbility$ DBUnimprint
SVar:DBUnimprint:DB$ Cleanup | ClearImprinted $True | SubAbility$ DBEffect
SVar:DBEffect:DB$ Effect | RememberObjects$ Remembered | ImprintOnHost$ True | StaticAbilities$ STMayLook | Duration$ Permanent | ForgetOnMoved$ Exile
SVar:STMayLook:Mode$ Continuous | MayLookAt$ You | EffectZone$ Command | Affected$ Card.IsRemembered | AffectedZone$ Exile | Description$ You may look at it for as long as it remains exiled.
S:Mode$ Continuous | ClassLevel$ 2 | Affected$ Creature.YouCtrl | AddKeyword$ Menace | Description$ Creatures you control have menace.
S:Mode$ Continuous | ClassLevel$ 3 | MayPlay$ True | MayPlayIgnoreType$ True | EffectZone$ Battlefield | Affected$ Card.IsRemembered | AffectedZone$ Exile | Description$ You may play cards exiled with CARDNAME, and you may spend mana as though it were mana of any color to cast those spells.
K:Class:2:1 U B:AddStaticAbility$ SMenace
SVar:SMenace:Mode$ Continuous | Affected$ Creature.YouCtrl | AddKeyword$ Menace | Secondary$ True | Description$ Creatures you control have menace.
K:Class:3:2 U B:AddStaticAbility$ SMayPlay
SVar:SMayPlay:Mode$ Continuous | MayPlay$ True | MayPlayIgnoreType$ True | EffectZone$ Battlefield | Affected$ Card.IsRemembered | AffectedZone$ Exile | Secondary$ True | Description$ You may play cards exiled with CARDNAME, and you may spend mana as though it were mana of any color to cast those spells.
SVar:PlayMain1:TRUE
Oracle:(Gain the next level as a sorcery to add its ability.)\nWhenever a creature you control deals combat damage to a player, exile the top card of that player's library face down. You may look at it for as long as it remains exiled.\n{1}{U}{B}: Level 2\nCreatures you control have menace.\n{2}{U}{B}: Level 3\nYou may play cards exiled with Rogue Class, and you may spend mana as though it were mana of any color to cast those spells.

View File

@@ -4,9 +4,6 @@ Types:Creature Merfolk Wizard
PT:1/1
K:Level up:3
SVar:maxLevel:3
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 2 | SetToughness$ 2 | AddKeyword$ Flying | CheckSVar$ X | SVarCompare$ EQ1 | Description$ LEVEL 1-2 2/2 CARDNAME has Flying
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 4 | SetToughness$ 2 | AddKeyword$ Flying | CheckSVar$ Y | SVarCompare$ EQ1 | Description$ LEVEL 3+ 4/2 CARDNAME has Flying
SVar:X:Count$Valid Card.Self+counters_GE1_LEVEL+counters_LE2_LEVEL
SVar:Y:Count$Valid Card.Self+counters_GE3_LEVEL
SVar:Picture:http://www.wizards.com/global/images/magic/general/skywatcher_adept.jpg
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 2 | SetToughness$ 2 | AddKeyword$ Flying | IsPresent$ Card.Self+counters_GE1_LEVEL+counters_LE2_LEVEL | Description$ LEVEL 1-2 2/2 CARDNAME has Flying
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 4 | SetToughness$ 2 | AddKeyword$ Flying | IsPresent$ Card.Self+counters_GE3_LEVEL | Description$ LEVEL 3+ 4/2 CARDNAME has Flying
Oracle:Level up {3} ({3}: Put a level counter on this. Level up only as a sorcery.)\nLEVEL 1-2\n2/2\nFlying\nLEVEL 3+\n4/2\nFlying

View File

@@ -1,14 +1,15 @@
Name:Sorcerer Class
ManaCost:U R
Types:Enchantment Class
K:Class:3:U R,3 U R
T:Mode$ ChangesZone | ClassLevel$ 1 | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDraw | TriggerDescription$ When CARDNAME enters the battlefield, draw two cards, then discard two cards.
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDraw | TriggerDescription$ When CARDNAME enters the battlefield, draw two cards, then discard two cards.
SVar:TrigDraw:DB$ Draw | NumCards$ 2 | SubAbility$ DBDiscard
SVar:DBDiscard:DB$Discard | Defined$ You | NumCards$ 2 | Mode$ TgtChoose
S:Mode$ Continuous | ClassLevel$ 2 | EffectZone$ Battlefield | Affected$ Creature.YouCtrl | AddAbility$ ManaU & ManaR | Description$ Creatures you control have "{T}: Add {U} or {R}. Spend this mana only to cast an instant or sorcery spell or to gain a Class level."
K:Class:2:U R:AddStaticAbility$ STapMana
SVar:STapMana:Mode$ Continuous | EffectZone$ Battlefield | Affected$ Creature.YouCtrl | AddAbility$ ManaU & ManaR | Secondary$ True | Description$ Creatures you control have "{T}: Add {U} or {R}. Spend this mana only to cast an instant or sorcery spell or to gain a Class level."
SVar:ManaU:AB$Mana | Cost$ T | Produced$ U | Amount$ 1 | RestrictValid$ Instant,Sorcery,Activated.ClassLevelUp | SpellDescription$ Add {U}. Spend this mana only to cast an instant or sorcery spell or to gain a Class level.
SVar:ManaR:AB$Mana | Cost$ T | Produced$ R | Amount$ 1 | RestrictValid$ Instant,Sorcery,Activated.ClassLevelUp | SpellDescription$ Add {R}. Spend this mana only to cast an instant or sorcery spell or to gain a Class level.
T:Mode$ SpellCast | ClassLevel$ 3 | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDealDamage | TriggerDescription$ Whenever you cast an instant or sorcery spell, that spell deals damage to each opponent equal to the number of instant and sorcery spells you've cast this turn.
K:Class:3:3 U R:AddTrigger$ TriggerSpellCast
SVar:TriggerSpellCast:Mode$ SpellCast | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDealDamage | Secondary$ True | TriggerDescription$ Whenever you cast an instant or sorcery spell, that spell deals damage to each opponent equal to the number of instant and sorcery spells you've cast this turn.
SVar:TrigDealDamage:DB$ DamageAll | ValidPlayers$ Player.Opponent | NumDmg$ X | DamageSource$ TriggeredCard
SVar:X:Count$ThisTurnCast_Instant.YouCtrl,Sorcery.YouCtrl
Oracle:(Gain the next level as a sorcery to add its ability.)\nWhen Sorcerer Class enters the battlefield, draw two cards, then discard two cards.\n{U}{R}: Level 2\nCreatures you control have "{T}: Add {U} or {R}. Spend this mana only to cast an instant or sorcery spell or to gain a Class level."\n{3}{U}{R}: Level 3\nWhenever you cast an instant or sorcery spell, that spell deals damage to each opponent equal to the number of instant and sorcery spells you've cast this turn.

View File

@@ -4,9 +4,6 @@ Types:Creature Human Knight
PT:1/1
K:Level up:W
SVar:maxLevel:7
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 3 | SetToughness$ 3 | AddKeyword$ First Strike | CheckSVar$ X | SVarCompare$ EQ1 | Description$ LEVEL 2-6 3/3 CARDNAME has First Strike
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 4 | SetToughness$ 4 | AddKeyword$ Double Strike | CheckSVar$ Y | SVarCompare$ EQ1 | Description$ LEVEL 7+ 4/4 CARDNAME has Double Strike
SVar:X:Count$Valid Card.Self+counters_GE2_LEVEL+counters_LE6_LEVEL
SVar:Y:Count$Valid Card.Self+counters_GE7_LEVEL
SVar:Picture:http://www.wizards.com/global/images/magic/general/student_of_warfare.jpg
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 3 | SetToughness$ 3 | AddKeyword$ First Strike | IsPresent$ Card.Self+counters_GE2_LEVEL+counters_LE6_LEVEL | Description$ LEVEL 2-6 3/3 CARDNAME has First Strike
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 4 | SetToughness$ 4 | AddKeyword$ Double Strike | IsPresent$ Card.Self+counters_GE7_LEVEL | Description$ LEVEL 7+ 4/4 CARDNAME has Double Strike
Oracle:Level up {W} ({W}: Put a level counter on this. Level up only as a sorcery.)\nLEVEL 2-6\n3/3\nFirst strike\nLEVEL 7+\n4/4\nDouble strike

View File

@@ -4,9 +4,6 @@ Types:Creature Human Cleric Avatar
PT:3/3
K:Level up:1
SVar:maxLevel:12
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 6 | SetToughness$ 6 | AddKeyword$ Lifelink | CheckSVar$ Y | SVarCompare$ EQ1 | Description$ LEVEL 6-11 6/6 Lifelink
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 9 | SetToughness$ 9 | AddKeyword$ Indestructible & Lifelink | CheckSVar$ Z | SVarCompare$ EQ1 | Description$ LEVEL 12+ 9/9 Lifelink, indestructible
SVar:Y:Count$Valid Card.Self+counters_GE6_LEVEL+counters_LT12_LEVEL
SVar:Z:Count$Valid Card.Self+counters_GE12_LEVEL
SVar:Picture:http://www.wizards.com/global/images/magic/general/transcendent_master.jpg
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 6 | SetToughness$ 6 | AddKeyword$ Lifelink | IsPresent$ Card.Self+counters_GE6_LEVEL+counters_LE11_LEVEL | Description$ LEVEL 6-11 6/6 Lifelink
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 9 | SetToughness$ 9 | AddKeyword$ Indestructible & Lifelink | IsPresent$ Card.Self+counters_GE12_LEVEL | Description$ LEVEL 12+ 9/9 Lifelink, indestructible
Oracle:Level up {1} ({1}: Put a level counter on this. Level up only as a sorcery.)\nLEVEL 6-11\n6/6\nLifelink\nLEVEL 12+\n9/9\nLifelink, indestructible

View File

@@ -1,13 +1,14 @@
Name:Warlock Class
ManaCost:B
Types:Enchantment Class
K:Class:3:1 B,6 B
T:Mode$ Phase | ClassLevel$ 1 | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | CheckSVar$ X | SVarCompare$ GE1 | Execute$ TrigLose1 | TriggerDescription$ At the beginning of your end step, if a creature died this turn, each opponent loses 1 life.
T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | CheckSVar$ X | SVarCompare$ GE1 | Execute$ TrigLose1 | TriggerDescription$ At the beginning of your end step, if a creature died this turn, each opponent loses 1 life.
SVar:TrigLose1:DB$ LoseLife | Defined$ Player.Opponent | LifeAmount$ 1
SVar:X:Count$ThisTurnEntered_Graveyard_from_Battlefield_Creature
T:Mode$ ClassLevelGained | ClassLevel$ 2 | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigDig | TriggerDescription$ When this Class becomes level 2, look at the top three cards of your library. Put one of them into your hand and the rest into your graveyard.
K:Class:2:1 B:AddTrigger$ TriggerClassLevel
SVar:TriggerClassLevel:Mode$ ClassLevelGained | ClassLevel$ 2 | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigDig | Secondary$ True | TriggerDescription$ When this Class becomes level 2, look at the top three cards of your library. Put one of them into your hand and the rest into your graveyard.
SVar:TrigDig:DB$ Dig | DigNum$ 3 | DestinationZone2$ Graveyard
T:Mode$ Phase | ClassLevel$ 3 | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ RepeatOpps | TriggerDescription$ At the beginning of your end step, each opponent loses life equal to the life they lost this turn. (Damage causes loss of life.)
K:Class:3:6 B:AddTrigger$ TriggerEndTurn
SVar:TriggerEndTurn:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ RepeatOpps | Secondary$ True | TriggerDescription$ At the beginning of your end step, each opponent loses life equal to the life they lost this turn. (Damage causes loss of life.)
SVar:RepeatOpps:DB$ RepeatEach | RepeatPlayers$ Player.Opponent | RepeatSubAbility$ TrigLoseAgain
SVar:TrigLoseAgain:DB$ LoseLife | Defined$ Remembered | LifeAmount$ Y
SVar:Y:PlayerCountRemembered$LifeLostThisTurn

View File

@@ -1,11 +1,12 @@
Name:Wizard Class
ManaCost:U
Types:Enchantment Class
K:Class:3:2 U,4 U
S:Mode$ Continuous | ClassLevel$ 1 | EffectZone$ Battlefield | Affected$ You | SetMaxHandSize$ Unlimited | Description$ You have no maximum hand size.
T:Mode$ ClassLevelGained | ClassLevel$ 2 | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigDraw | TriggerDescription$ When this Class becomes level 2, draw two cards.
S:Mode$ Continuous | EffectZone$ Battlefield | Affected$ You | SetMaxHandSize$ Unlimited | Description$ You have no maximum hand size.
K:Class:2:2 U:AddTrigger$ TriggerClassLevel
SVar:TriggerClassLevel:Mode$ ClassLevelGained | ClassLevel$ 2 | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigDraw | Secondary$ True | TriggerDescription$ When this Class becomes level 2, draw two cards.
SVar:TrigDraw:DB$ Draw | NumCards$ 2
T:Mode$ Drawn | ClassLevel$ 3 | ValidCard$ Card.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Whenever you draw a card, put a +1/+1 counter on target creature you control.
K:Class:3:4 U:AddTrigger$ TriggerDrawn
SVar:TriggerDrawn:Mode$ Drawn | ValidCard$ Card.YouCtrl | TriggerZones$ Battlefield | Execute$ TrigPutCounter | Secondary$ True | TriggerDescription$ Whenever you draw a card, put a +1/+1 counter on target creature you control.
SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | CounterType$ P1P1 | CounterNum$ 1
DeckHas:Ability$Counters
Oracle:(Gain the next level as a sorcery to add its ability.)\nYou have no maximum hand size.\n{2}{U}: Level 2\nWhen this Class becomes level 2, draw two cards.\n{4}{U}: Level 3\nWhenever you draw a card, put a +1/+1 counter on target creature you control.

View File

@@ -5,7 +5,6 @@ PT:1/1
K:Level up:4
SVar:maxLevel:3
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 3 | SetToughness$ 3 | IsPresent$ Card.Self+counters_GE1_LEVEL+counters_LT3_LEVEL | Description$ LEVEL 1-2 3/3
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 5 | SetToughness$ 5 | IsPresent$ Card.Self+counters_GE3_LEVEL | Description$ LEVEL 3+ 5/5 CARDNAME can't be blocked except by black creatures
S:Mode$ CantBlockBy | ValidAttacker$ Creature.Self | ValidBlocker$ Creature.nonBlack | Secondary$ True | IsPresent$ Card.Self+counters_GE3_LEVEL | Description$ CARDNAME can't be blocked except by black creatures
SVar:Picture:http://www.wizards.com/global/images/magic/general/zulaport_enforcer.jpg
S:Mode$ Continuous | Affected$ Card.Self | SetPower$ 5 | SetToughness$ 5 | IsPresent$ Card.Self+counters_GE3_LEVEL | AddStaticAbility$ SCantBlock | Description$ LEVEL 3+ 5/5 CARDNAME can't be blocked except by black creatures
SVar:SCantBlock:Mode$ CantBlockBy | ValidAttacker$ Creature.Self | ValidBlocker$ Creature.nonBlack | Secondary$ True | Description$ CARDNAME can't be blocked except by black creatures
Oracle:Level up {4} ({4}: Put a level counter on this. Level up only as a sorcery.)\nLEVEL 1-2\n3/3\nLEVEL 3+\n5/5\nZulaport Enforcer can't be blocked except by black creatures.