mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-19 12:18:00 +00:00
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:
@@ -34,10 +34,13 @@ public class ActivationTable extends ForwardingTable<SpellAbility, Optional<Stat
|
|||||||
public void add(SpellAbility sa) {
|
public void add(SpellAbility sa) {
|
||||||
SpellAbility root = sa.getRootAbility();
|
SpellAbility root = sa.getRootAbility();
|
||||||
SpellAbility original = getOriginal(sa);
|
SpellAbility original = getOriginal(sa);
|
||||||
|
|
||||||
|
if (original != null) {
|
||||||
Optional<StaticAbility> st = Optional.fromNullable(root.getGrantorStatic());
|
Optional<StaticAbility> st = Optional.fromNullable(root.getGrantorStatic());
|
||||||
|
|
||||||
delegate().put(original, st, ObjectUtils.defaultIfNull(get(original, st), 0) + 1);
|
delegate().put(original, st, ObjectUtils.defaultIfNull(get(original, st), 0) + 1);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public Integer get(SpellAbility sa) {
|
public Integer get(SpellAbility sa) {
|
||||||
SpellAbility root = sa.getRootAbility();
|
SpellAbility root = sa.getRootAbility();
|
||||||
|
|||||||
@@ -2,7 +2,8 @@ Name:Goblin Artisans
|
|||||||
ManaCost:R
|
ManaCost:R
|
||||||
Types:Creature Goblin Artificer
|
Types:Creature Goblin Artificer
|
||||||
PT:1/1
|
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
|
T:Mode$ BecomesTarget | Static$ True | ValidSource$ Card.Other+namedGoblin Artisans | ValidTarget$ Spell | Execute$ DBForget
|
||||||
SVar:DBForget:DB$ Cleanup | ForgetDefined$ TriggeredTargetHostCard
|
SVar:DBForget:DB$ Cleanup | ForgetDefined$ TriggeredTargetHostCard
|
||||||
T:Mode$ ChangesZone | Static$ True | ValidCard$ Artifact.YouCtrl+IsRemembered | Origin$ Stack | Destination$ Any | Execute$ DBCleanup
|
T:Mode$ ChangesZone | Static$ True | ValidCard$ Artifact.YouCtrl+IsRemembered | Origin$ Stack | Destination$ Any | Execute$ DBCleanup
|
||||||
|
|||||||
Reference in New Issue
Block a user