mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-18 11:48:02 +00:00
YNEO: Molten Impact and support
This commit is contained in:
committed by
Michael Kamensky
parent
b317e46353
commit
eaaea4a2b3
@@ -56,20 +56,24 @@ public class DelayedTriggerEffect extends SpellAbilityEffect {
|
||||
|
||||
if (sa.hasParam("RememberObjects")) {
|
||||
for (final String rem : sa.getParam("RememberObjects").split(",")) {
|
||||
for (final Object o : AbilityUtils.getDefinedEntities(sa.getHostCard(), rem, sa)) {
|
||||
for (final Object o : AbilityUtils.getDefinedEntities(host, rem, sa)) {
|
||||
delTrig.addRemembered(o);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (sa.hasParam("RememberNumber")) {
|
||||
for (final Object o : sa.getHostCard().getRemembered()) {
|
||||
for (final Object o : host.getRemembered()) {
|
||||
if (o instanceof Integer) {
|
||||
delTrig.addRemembered(o);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (sa.hasParam("RememberSVarAmount")) {
|
||||
delTrig.addRemembered(AbilityUtils.calculateAmount(host, host.getSVar(sa.getParam("RememberSVarAmount")), sa));
|
||||
}
|
||||
|
||||
if (sa.hasAdditionalAbility("Execute")) {
|
||||
SpellAbility overridingSA = sa.getAdditionalAbility("Execute").copy(lki, sa.getActivatingPlayer(), false);
|
||||
// need to reset the parent, additionalAbility does set it to this
|
||||
@@ -78,7 +82,7 @@ public class DelayedTriggerEffect extends SpellAbilityEffect {
|
||||
}
|
||||
// Set Transform timestamp when the delayed trigger is created
|
||||
if (ApiType.SetState == overridingSA.getApi()) {
|
||||
overridingSA.setSVar("StoredTransform", String.valueOf(sa.getHostCard().getTransformedTimestamp()));
|
||||
overridingSA.setSVar("StoredTransform", String.valueOf(host.getTransformedTimestamp()));
|
||||
}
|
||||
|
||||
if (sa.hasParam("CopyTriggeringObjects")) {
|
||||
@@ -89,7 +93,7 @@ public class DelayedTriggerEffect extends SpellAbilityEffect {
|
||||
}
|
||||
final TriggerHandler trigHandler = game.getTriggerHandler();
|
||||
if (mapParams.containsKey("DelayedTriggerDefinedPlayer")) { // on sb's next turn
|
||||
Player p = Iterables.getFirst(AbilityUtils.getDefinedPlayers(sa.getHostCard(), mapParams.get("DelayedTriggerDefinedPlayer"), sa), null);
|
||||
Player p = Iterables.getFirst(AbilityUtils.getDefinedPlayers(host, mapParams.get("DelayedTriggerDefinedPlayer"), sa), null);
|
||||
trigHandler.registerPlayerDefinedDelayedTrigger(p, delTrig);
|
||||
} else if (mapParams.containsKey("ThisTurn")) {
|
||||
trigHandler.registerThisTurnDelayedTrigger(delTrig);
|
||||
|
||||
8
forge-gui/res/cardsfolder/upcoming/molten_impact.txt
Normal file
8
forge-gui/res/cardsfolder/upcoming/molten_impact.txt
Normal file
@@ -0,0 +1,8 @@
|
||||
Name:Molten Impact
|
||||
ManaCost:1 R
|
||||
Types:Sorcery
|
||||
A:SP$ DealDamage | ValidTgts$ Creature,Planeswalker | TgtPrompt$ Select target creature or planeswalker | NumDmg$ 4 | ExcessSVar$ Excess | SubAbility$ DBDelayedTrigger | SpellDescription$ CARDNAME deals 4 damage to target creature or planeswalker.
|
||||
SVar:DBDelayedTrigger:DB$ DelayedTrigger | ConditionCheckSVar$ Excess | ConditionSVarCompare$ GE1 | RememberSVarAmount$ Excess | Mode$ SpellCast | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ You | Execute$ TrigDamage | TriggerDescription$ If excess damage was dealt this way, when you cast your next instant or sorcery spell, CARDNAME deals damage equal to the excess to target creature or planeswalker.
|
||||
SVar:TrigDamage:DB$ DealDamage | ValidTgts$ Creature,Planeswalker | TgtPrompt$ Select target creature or planeswalker | NumDmg$ X
|
||||
SVar:X:Count$TriggerRememberAmount
|
||||
Oracle:Molten Impact deals 4 damage to target creature or planeswalker. If excess damage was dealt this way, when you cast your next instant or sorcery spell, Molten Impact deals damage equal to the excess to target creature or planeswalker.
|
||||
Reference in New Issue
Block a user