diff --git a/forge-game/src/main/java/forge/game/card/CardProperty.java b/forge-game/src/main/java/forge/game/card/CardProperty.java index c46fb5255f6..ba28d4a1683 100644 --- a/forge-game/src/main/java/forge/game/card/CardProperty.java +++ b/forge-game/src/main/java/forge/game/card/CardProperty.java @@ -748,6 +748,14 @@ public class CardProperty { return false; } break; + case "TriggeredProduced": + final SpellAbility root = ((SpellAbility) spellAbility).getRootAbility(); + final Object prod = (Object) root.getTriggeringObject(AbilityKey.Produced); + if (!(prod instanceof String)) return false; + String produced = (String) prod; + ColorSet cs = ColorSet.fromNames(produced.split(" ")); + if (!card.getColor().hasAnyColor(cs.getColor())) return false; + break; default: if (!Iterables.any(AbilityUtils.getDefinedCards(source, restriction, spellAbility), CardPredicates.sharesColorWith(card))) { return false; diff --git a/forge-gui/res/cardsfolder/a/agathas_soul_cauldron.txt b/forge-gui/res/cardsfolder/a/agathas_soul_cauldron.txt index cd9ab8a2824..a69ff52b3c3 100644 --- a/forge-gui/res/cardsfolder/a/agathas_soul_cauldron.txt +++ b/forge-gui/res/cardsfolder/a/agathas_soul_cauldron.txt @@ -5,7 +5,7 @@ S:Mode$ ManaConvert | ValidPlayer$ You | ValidCard$ Creature.YouCtrl+inZoneBattl S:Mode$ Continuous | Affected$ Creature.YouCtrl+counters_GE1_P1P1 | EffectZone$ Battlefield | GainsAbilitiesOf$ Creature.ExiledWithSource | GainsAbilitiesOfZones$ Exile | Description$ Creatures you control with +1/+1 counters on them have all activated abilities of all creature cards exiled with CARDNAME. A:AB$ ChangeZone | Cost$ T | Origin$ Graveyard | Destination$ Exile | TgtPrompt$ Choose target card in a graveyard | RememberChanged$ True | ValidTgts$ Card | SubAbility$ TrigImmediateTrig | SpellDescription$ Exile target card from a graveyard. When a creature card is exiled this way, put a +1/+1 counter on target creature you control. SVar:TrigImmediateTrig:DB$ ImmediateTrigger | ConditionDefined$ Remembered | ConditionPresent$ Creature | ConditionCompare$ GE1 | Execute$ TrigPutCounter | SubAbility$ DBCleanup | TriggerDescription$ When a creature card is exiled this way, put a +1/+1 counter on target creature you control. -SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | CounterType$ P1P1 | CounterNum$ 1 +SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | CounterType$ P1P1 | CounterNum$ 1 SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True DeckHas:Ability$Graveyard|Counters DeckHints:Ability$Counters diff --git a/forge-gui/res/cardsfolder/c/c_a_m_p_.txt b/forge-gui/res/cardsfolder/c/c_a_m_p_.txt new file mode 100644 index 00000000000..a4826470d41 --- /dev/null +++ b/forge-gui/res/cardsfolder/c/c_a_m_p_.txt @@ -0,0 +1,9 @@ +Name:C.A.M.P. +ManaCost:3 +Types:Artifact Fortification +T:Mode$ TapsForMana | ValidCard$ Card.FortifiedBy | Execute$ TrigPutCounter | TriggerDescription$ Whenever fortified land is tapped for mana, put a +1/+1 counter on target creature you control. If that creature shares a color with the mana that land produced, create a Junk token. (It's an artifact with "{T}, Sacrifice this artifact: Exile the top card of your library. You may play that card this turn. Activate only as a sorcery.") +SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | CounterType$ P1P1 | SubAbility$ DBJunk +SVar:DBJunk:DB$ Token | ConditionDefined$ Targeted | ConditionPresent$ Card.SharesColorWith TriggeredProduced | TokenScript$ c_a_junk_sac_exileplay +K:Fortify:3 +DeckHas:Ability$Counters|Token|Sacrifice & Type$Artifact|Junk +Oracle:Whenever fortified land is tapped for mana, put a +1/+1 counter on target creature you control. If that creature shares a color with the mana that land produced, create a Junk token. (It's an artifact with "{T}, Sacrifice this artifact: Exile the top card of your library. You may play that card this turn. Activate only as a sorcery.")\nFortify {3} ({3}: Attach to target land you control. Fortify only as a sorcery.)