Merge pull request #1028 from xaviermd/CardScript--CLB--Jon-Irenicus-Shattered-One

Created card script for Jon Irenicus, Shattered One.
This commit is contained in:
Paul Hammerton
2022-07-13 09:23:16 +01:00
committed by GitHub
2 changed files with 18 additions and 5 deletions

View File

@@ -163,17 +163,15 @@ public class AbilityUtils {
return cards;
}
}
else if (defined.equals("Targeted") && sa instanceof SpellAbility) {
else if ((defined.equals("Targeted") || defined.equals("TargetedCard")) && sa instanceof SpellAbility) {
for (TargetChoices tc : ((SpellAbility)sa).getAllTargetChoices()) {
Iterables.addAll(cards, tc.getTargetCards());
}
}
else if (defined.equals("TargetedSource") && sa instanceof SpellAbility) {
for (TargetChoices tc : ((SpellAbility)sa).getAllTargetChoices()) {
for (SpellAbility s : tc.getTargetSpells()) {
for (TargetChoices tc : ((SpellAbility)sa).getAllTargetChoices()) for (SpellAbility s : tc.getTargetSpells()) {
cards.add(s.getHostCard());
}
}
}
else if (defined.equals("ThisTargetedCard") && sa instanceof SpellAbility) { // do not add parent targeted
if (((SpellAbility)sa).getTargets() != null) {
@@ -973,7 +971,7 @@ public class AbilityUtils {
final Player player = sa instanceof SpellAbility ? ((SpellAbility)sa).getActivatingPlayer() : card.getController();
if (defined.equals("Self") || defined.equals("ThisTargetedCard") || defined.startsWith("Valid") || getPaidCards(sa, defined) != null) {
if (defined.equals("Self") || defined.equals("TargetedCard") || defined.equals("ThisTargetedCard") || defined.startsWith("Valid") || getPaidCards(sa, defined) != null) {
// do nothing, Self is for Cards, not Players
} else if (defined.equals("TargetedOrController")) {
players.addAll(getDefinedPlayers(card, "Targeted", sa));

View File

@@ -0,0 +1,15 @@
Name:Jon Irenicus, Shattered One
ManaCost:2 U B
Types:Legendary Creature Elf Wizard
PT:3/3
T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ DBSelectRecipient | TriggerDescription$ At the beginning of your end step, target opponent gains control of up to one target creature you control.
SVar:DBSelectRecipient:DB$ Pump | ValidTgts$ Opponent | TgtPrompt$ Select target opponent | SubAbility$ DBDonate
SVar:DBDonate:DB$ GainControl | ValidTgts$ Creature.YouCtrl | TargetMin$ 0 | TargetMax$ 1 | TgtPrompt$ Select up to one target creature you control | NewController$ ParentTarget | SubAbility$ DBPutCounters
SVar:DBPutCounters:DB$ PutCounter | Defined$ TargetedCard | CounterType$ P1P1 | CounterNum$ 2 | SubAbility$ DBTap
SVar:DBTap:DB$ Tap | Defined$ Targeted | SubAbility$ DBGoad
SVar:DBGoad:DB$ Goad | Defined$ Targeted | Duration$ Permanent | SubAbility$ DBDisableSacing
SVar:DBDisableSacing:DB$ Animate | Defined$ Targeted | staticAbilities$ SCantSac | Duration$ Permanent
SVar:SCantSac:Mode$ CantSacrifice | ValidCard$ Card.Self | Description$ This creature cannot be sacrificed.
T:Mode$ Attacks | ValidCard$ Creature.YouDontCtrl+YouOwn | TriggerZones$ Battlefield | Execute$ DrawACard | TriggerDescription$ Whenever a creature you own but don't control attacks, you draw a card.
SVar:DrawACard:DB$ Draw | Defined$ You | NumCards$ 1
Oracle:At the beginning of your end step, target opponent gains control of up to one target creature you control. Put two +1/+1 counters on it and tap it. It's goaded for the rest of the game and it gains "This creature can't be sacrificed." (It attacks each combat if able and attacks a player other than you if able.)\nWhenever a creature you own but don't control attacks, you draw a card.