From bcccf726b5407c7b9ab5b7083cef956491e0c500 Mon Sep 17 00:00:00 2001 From: swordshine Date: Sat, 21 Sep 2019 22:10:57 +0800 Subject: [PATCH 1/2] Fix Kaalia of the Vast --- forge-ai/src/main/java/forge/ai/ComputerUtilCost.java | 2 +- forge-game/src/main/java/forge/game/trigger/TriggerAttacks.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/forge-ai/src/main/java/forge/ai/ComputerUtilCost.java b/forge-ai/src/main/java/forge/ai/ComputerUtilCost.java index bdbf2abf61c..c94a5e7e16d 100644 --- a/forge-ai/src/main/java/forge/ai/ComputerUtilCost.java +++ b/forge-ai/src/main/java/forge/ai/ComputerUtilCost.java @@ -468,7 +468,7 @@ public class ComputerUtilCost { continue; try { - extraManaNeeded += Integer.parseInt(snem); + extraManaNeeded += Integer.parseInt(parts[0]); } catch (final NumberFormatException e) { System.out.println("wrong SpellsNeedExtraMana SVar format on " + c); } diff --git a/forge-game/src/main/java/forge/game/trigger/TriggerAttacks.java b/forge-game/src/main/java/forge/game/trigger/TriggerAttacks.java index 551ff2826bb..a0c651436ab 100644 --- a/forge-game/src/main/java/forge/game/trigger/TriggerAttacks.java +++ b/forge-game/src/main/java/forge/game/trigger/TriggerAttacks.java @@ -125,10 +125,10 @@ public class TriggerAttacks extends Trigger { /** {@inheritDoc} */ @Override public final void setTriggeringObjects(final SpellAbility sa) { + sa.setTriggeringObject(AbilityKey.Defender, getFromRunParams(AbilityKey.Attacked)); sa.setTriggeringObjectsFrom( this, AbilityKey.Attacker, - AbilityKey.Defender, AbilityKey.Defenders, AbilityKey.DefendingPlayer ); From 0f4c1960d993a06232da7c834a3a5aabfc969443 Mon Sep 17 00:00:00 2001 From: swordshine Date: Sat, 21 Sep 2019 22:27:21 +0800 Subject: [PATCH 2/2] More fixes --- .../src/main/java/forge/game/trigger/TriggerAttached.java | 3 ++- .../java/forge/game/trigger/TriggerCounterRemovedOnce.java | 3 ++- .../main/java/forge/game/trigger/TriggerDamageDealtOnce.java | 4 +++- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/forge-game/src/main/java/forge/game/trigger/TriggerAttached.java b/forge-game/src/main/java/forge/game/trigger/TriggerAttached.java index 82f6c081ae7..29afd7f7ebe 100644 --- a/forge-game/src/main/java/forge/game/trigger/TriggerAttached.java +++ b/forge-game/src/main/java/forge/game/trigger/TriggerAttached.java @@ -73,7 +73,8 @@ public class TriggerAttached extends Trigger { /** {@inheritDoc} */ @Override public final void setTriggeringObjects(final SpellAbility sa) { - sa.setTriggeringObjectsFrom(this, AbilityKey.Source, AbilityKey.Target); + sa.setTriggeringObject(AbilityKey.Source, getFromRunParams(AbilityKey.AttachSource)); + sa.setTriggeringObject(AbilityKey.Target, getFromRunParams(AbilityKey.AttachTarget)); } @Override diff --git a/forge-game/src/main/java/forge/game/trigger/TriggerCounterRemovedOnce.java b/forge-game/src/main/java/forge/game/trigger/TriggerCounterRemovedOnce.java index 591e6df967e..96e731c4983 100644 --- a/forge-game/src/main/java/forge/game/trigger/TriggerCounterRemovedOnce.java +++ b/forge-game/src/main/java/forge/game/trigger/TriggerCounterRemovedOnce.java @@ -74,7 +74,8 @@ public class TriggerCounterRemovedOnce extends Trigger { /** {@inheritDoc} */ @Override public final void setTriggeringObjects(final SpellAbility sa) { - sa.setTriggeringObjectsFrom(this, AbilityKey.Card, AbilityKey.Amount); + sa.setTriggeringObjectsFrom(this, AbilityKey.Card); + sa.setTriggeringObject(AbilityKey.Amount, getFromRunParams(AbilityKey.CounterAmount)); } @Override diff --git a/forge-game/src/main/java/forge/game/trigger/TriggerDamageDealtOnce.java b/forge-game/src/main/java/forge/game/trigger/TriggerDamageDealtOnce.java index 20e744c5755..fbc875d93ec 100644 --- a/forge-game/src/main/java/forge/game/trigger/TriggerDamageDealtOnce.java +++ b/forge-game/src/main/java/forge/game/trigger/TriggerDamageDealtOnce.java @@ -106,7 +106,9 @@ public class TriggerDamageDealtOnce extends Trigger { /** {@inheritDoc} */ @Override public final void setTriggeringObjects(final SpellAbility sa) { - sa.setTriggeringObjectsFrom(this, AbilityKey.Source, AbilityKey.Targets, AbilityKey.DamageAmount); + sa.setTriggeringObjectsFrom(this, AbilityKey.DamageAmount); + sa.setTriggeringObject(AbilityKey.Source, getFromRunParams(AbilityKey.DamageSource)); + sa.setTriggeringObject(AbilityKey.Targets, getFromRunParams(AbilityKey.DamageTargets)); } @Override