IKO: Mythos cycle

This commit is contained in:
Hans Mackowiak
2020-04-11 10:21:38 +00:00
committed by Michael Kamensky
parent 9033bbd410
commit 1ac8026b7f
7 changed files with 70 additions and 3 deletions

View File

@@ -197,6 +197,10 @@ public class SpellAbilityCondition extends SpellAbilityVariables {
this.setManaSpent(params.get("ConditionManaSpent"));
}
if (params.containsKey("ConditionManaNotSpent")) {
this.setManaNotSpent(params.get("ConditionManaNotSpent"));
}
if (params.containsKey("ConditionCheckSVar")) {
this.setSvarToCheck(params.get("ConditionCheckSVar"));
}
@@ -432,10 +436,21 @@ public class SpellAbilityCondition extends SpellAbilityVariables {
}
}
if (StringUtils.isNotEmpty(this.getManaSpent())) {
byte manaSpent = MagicColor.fromName(getManaSpent()); // they always check for single color
if( 0 == (manaSpent & sa.getHostCard().getColorsPaid())) // no match of colors
if (StringUtils.isNotEmpty(getManaSpent())) {
for (String s : getManaSpent().split(" ")) {
byte manaSpent = MagicColor.fromName(s);
if( 0 == (manaSpent & sa.getHostCard().getColorsPaid())) // no match of colors
return false;
}
}
if (StringUtils.isNotEmpty(getManaNotSpent())) {
byte toPay = 0;
for (String s : getManaNotSpent().split(" ")) {
toPay |= MagicColor.fromName(s);
}
if (0 != (toPay & sa.getHostCard().getColorsPaid())) {
return false;
}
}
if (this.getsVarToCheck() != null) {

View File

@@ -89,6 +89,7 @@ public class SpellAbilityVariables implements Cloneable {
this.lifeTotal = sav.getLifeTotal();
this.lifeAmount = sav.getLifeAmount();
this.manaSpent = sav.getManaSpent();
this.manaNotSpent = sav.getManaNotSpent();
this.targetValidTargeting = sav.getTargetValidTargeting();
this.targetsSingleTarget = sav.targetsSingleTarget();
this.presenceCondition = sav.getPresenceCondition();
@@ -193,6 +194,7 @@ public class SpellAbilityVariables implements Cloneable {
/** The mana spent. */
private String manaSpent = "";
private String manaNotSpent = "";
/** The chosen colors string. */
private String chosenColors = null;
@@ -229,6 +231,13 @@ public class SpellAbilityVariables implements Cloneable {
return this.manaSpent;
}
public final void setManaNotSpent(final String s) {
this.manaNotSpent = s;
}
public final String getManaNotSpent() {
return this.manaNotSpent;
}
/**
* <p>
* Setter for the field <code>zone</code>.

View File

@@ -0,0 +1,6 @@
Name:Mythos of Brokkos
ManaCost:2 G G
Types:Sorcery
A:SP$ ChangeZone | Cost$ 2 G G | Origin$ Library | Destination$ Graveyard | ChangeNum$ 1 | ChangeType$ Card | ConditionManaSpent$ U B | SubAbility$ DBChangeZone | | StackDescription$ SpellDescription | SpellDescription$ If {U}{B} was spent to cast this spell, search your library for a card, put that card into your graveyard, then shuffle your library. Return up to two permanent cards from your graveyard to your hand.
SVar:DBChangeZone:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | ChangeNum$ 2 | ChangeType$ Permanent.YouOwn | Hidden$ True | StackDescription$ None
Oracle:If {U}{B} was spent to cast this spell, search your library for a card, put that card into your graveyard, then shuffle your library.\nReturn up to two permanent cards from your graveyard to your hand.

View File

@@ -0,0 +1,8 @@
Name:Mythos of Illuna
ManaCost:2 U U
Types:Sorcery
A:SP$ CopyPermanent | Cost$ 2 U U | ValidTgts$ Permanent | TgtPrompt$ Select target Permanent | ConditionManaNotSpent$ R G | SubAbility$ CopyFight | StackDescription$ SpellDescription | SpellDescription$ Create a token thats a copy of target permanent. If {R}{G} was spent to cast this spell, instead create a token thats a copy of that permanent, except the token has “When this permanent enters the battlefield, if its a creature, it fights up to one target creature you dont control.”
SVar:CopyFight:DB$ CopyPermanent | Defined$ Targeted | ConditionManaSpent$ R G | AddTriggers$ TrigChange | AddSVars$ TrigFight,TrigChange | StackDescription$ None
SVar:TrigChange:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Self | Execute$ TrigFight | TriggerDescription$ When CARDNAME enters the battlefield, if its a creature, it fights up to one target creature you don't control. (Each deals damage equal to its power to the other.)
SVar:TrigFight:DB$ Fight | Defined$ TriggeredCardLKICopy | ValidTgts$ Creature.YouDontCtrl | TgtPrompt$ Choose target creature you don't control | TargetMin$ 0 | TargetMax$ 1
Oracle:Create a token thats a copy of target permanent. If {R}{G} was spent to cast this spell, instead create a token thats a copy of that permanent, except the token has “When this permanent enters the battlefield, if its a creature, it fights up to one target creature you dont control.”

View File

@@ -0,0 +1,6 @@
Name:Mythos of Nethroi
ManaCost:2 B
Types:Instant
A:SP$ Destroy | Cost$ 2 B | ValidTgts$ Permanent.nonLand | ConditionDefined$ Targeted | ConditionPresent$ Creature | ConditionCompare$ EQ1 | ConditionManaNotSpent$ G W | SubAbility$ DBDestroy | StackDescription$ SpellDescription | SpellDescription$ Destroy target nonland permanent if it's a creature or if {G}{W} was spent to cast this spell.
SVar:DBDestroy:DB$ Destroy | Defined$ Targeted | ConditionManaSpent$ G W | StackDescription$ None
Oracle:Destroy target nonland permanent if it's a creature or if {G}{W} was spent to cast this spell.

View File

@@ -0,0 +1,17 @@
Name:Mythos of Snapdax
ManaCost:2 W W
Types:Sorcery
A:SP$ RepeatEach | Cost$ 2 W W | ConditionManaSpent$ B R | RepeatPlayers$ Player | RepeatSubAbility$ ChooseArtfYou | SubAbility$ AllChoose | SpellDescription$ Each player chooses an artifact, a creature, an enchantment, and a planeswalker from among the nonland permanents they control, then sacrifices the rest. If {B}{R} was spent to cast this spell, you choose the permanents for each player instead.
SVar:ChooseArtfYou:DB$ ChooseCard | Defined$ You | Amount$ 1 | Choices$ Artifact.nonLand+RememberedPlayerCtrl | ChoiceTitle$ Choose an artifact to keep | SubAbility$ ChooseCrtrYou | RememberChosen$ True | Mandatory$ True
SVar:ChooseCrtrYou:DB$ ChooseCard | Defined$ You | Amount$ 1 | Choices$ Creature.nonLand+RememberedPlayerCtrl | ChoiceTitle$ Choose a creature to keep | SubAbility$ ChooseEnchYou | RememberChosen$ True | Mandatory$ True
SVar:ChooseEnchYou:DB$ ChooseCard | Defined$ You | Amount$ 1 | Choices$ Enchantment.nonLand+RememberedPlayerCtrl | ChoiceTitle$ Choose an enchantment to keep | SubAbility$ ChooseWalkYou | RememberChosen$ True | Mandatory$ True
SVar:ChooseWalkYou:DB$ ChooseCard | Defined$ You | Amount$ 1 | Choices$ Planeswalker.RememberedPlayerCtrl | ChoiceTitle$ Choose a planeswalker to keep | RememberChosen$ True | Mandatory$ True
SVar:AllChoose:DB$ RepeatEach | ConditionManaNotSpent$ B R | RepeatPlayers$ Player | RepeatSubAbility$ ChooseArtf | SubAbility$ SacAllOthers
SVar:ChooseArtf:DB$ ChooseCard | Defined$ Remembered | Amount$ 1 | Choices$ Artifact.nonLand+RememberedPlayerCtrl | ChoiceTitle$ Choose an artifact to keep | SubAbility$ ChooseCrtr | RememberChosen$ True | Mandatory$ True
SVar:ChooseCrtr:DB$ ChooseCard | Defined$ Remembered | Amount$ 1 | Choices$ Creature.nonLand+RememberedPlayerCtrl | ChoiceTitle$ Choose a creature to keep | SubAbility$ ChooseEnch | RememberChosen$ True | Mandatory$ True
SVar:ChooseEnch:DB$ ChooseCard | Defined$ Remembered | Amount$ 1 | Choices$ Enchantment.nonLand+RememberedPlayerCtrl | ChoiceTitle$ Choose an enchantment to keep | SubAbility$ ChooseWalk | RememberChosen$ True | Mandatory$ True
SVar:ChooseWalk:DB$ ChooseCard | Defined$ Remembered | Amount$ 1 | Choices$ Planeswalker.RememberedPlayerCtrl | ChoiceTitle$ Choose a planeswalker to keep | RememberChosen$ True | Mandatory$ True
SVar:SacAllOthers:DB$ SacrificeAll | ValidCards$ Permanent.nonLand+IsNotRemembered | SubAbility$ DBCleanup
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True | ClearChosenCard$ True
AI:RemoveDeck:All
Oracle:Each player chooses an artifact, a creature, an enchantment, and a planeswalker from among the nonland permanents they control, then sacrifices the rest. If {B}{R} was spent to cast this spell, you choose the permanents for each player instead.

View File

@@ -0,0 +1,6 @@
Name:Mythos of Vadrok
ManaCost:2 R R
Types:Sorcery
A:SP$ DealDamage | Cost$ 2 R R | ValidTgts$ Creature,Planeswalker | TgtPrompt$ Select target creature or planeswalker to distribute damage to | NumDmg$ 5 | TargetMin$ 1 | TargetMax$ 5 | DividedAsYouChoose$ 5 | SubAbility$ DBPump | SpellDescription$ CARDNAME deals 5 damage divided as you choose among any number of target creatures and/or planeswalkers. If {W}{U} was spent to cast this spell, until your next turn, those permanents cant attack or block and their activated abilities cant be activated.
SVar:DBPump:DB$ Pump | Defined$ Targeted | UntilYourNextTurn$ True | KW$ HIDDEN CARDNAME can't attack or block. & HIDDEN CARDNAME's activated abilities can't be activated. | ConditionManaSpent W U | SpellDescription$ None
Oracle:Mythos of Vadrok deals 5 damage divided as you choose among any number of target creatures and/or planeswalkers. If {W}{U} was spent to cast this spell, until your next turn, those permanents cant attack or block and their activated abilities cant be activated.