Merge branch 'activation' into 'master'

ActivationTable: Fix NPE for triggers without OverridingAbility

Closes #1859

See merge request core-developers/forge!4799
This commit is contained in:
Michael Kamensky
2021-06-03 14:07:15 +00:00
2 changed files with 7 additions and 3 deletions

View File

@@ -34,9 +34,12 @@ public class ActivationTable extends ForwardingTable<SpellAbility, Optional<Stat
public void add(SpellAbility sa) {
SpellAbility root = sa.getRootAbility();
SpellAbility original = getOriginal(sa);
Optional<StaticAbility> st = Optional.fromNullable(root.getGrantorStatic());
delegate().put(original, st, ObjectUtils.defaultIfNull(get(original, st), 0) + 1);
if (original != null) {
Optional<StaticAbility> st = Optional.fromNullable(root.getGrantorStatic());
delegate().put(original, st, ObjectUtils.defaultIfNull(get(original, st), 0) + 1);
}
}
public Integer get(SpellAbility sa) {

View File

@@ -2,7 +2,8 @@ Name:Goblin Artisans
ManaCost:R
Types:Creature Goblin Artificer
PT:1/1
T:Mode$ ChangesZone | Static$ True | ValidCard$ Artifact.YouCtrl | Origin$ Any | Destination$ Stack | RememberTriggeringCard
T:Mode$ ChangesZone | Static$ True | ValidCard$ Artifact.YouCtrl | Origin$ Any | Destination$ Stack | Execute$ DBRemember
SVar:DBRemember:DB$ Pump | RememberObjects$ TriggeredCard
T:Mode$ BecomesTarget | Static$ True | ValidSource$ Card.Other+namedGoblin Artisans | ValidTarget$ Spell | Execute$ DBForget
SVar:DBForget:DB$ Cleanup | ForgetDefined$ TriggeredTargetHostCard
T:Mode$ ChangesZone | Static$ True | ValidCard$ Artifact.YouCtrl+IsRemembered | Origin$ Stack | Destination$ Any | Execute$ DBCleanup