mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-20 04:38:00 +00:00
ReplacementEffect: add Mode for ReplacementType
This commit is contained in:
committed by
swordshine
parent
d0fe0640f9
commit
14c9a8ccc3
@@ -26,6 +26,7 @@ import forge.game.mana.ManaCostBeingPaid;
|
||||
import forge.game.player.Player;
|
||||
import forge.game.player.PlayerView;
|
||||
import forge.game.replacement.ReplacementEffect;
|
||||
import forge.game.replacement.ReplacementType;
|
||||
import forge.game.spellability.AbilityManaPart;
|
||||
import forge.game.spellability.SpellAbility;
|
||||
import forge.player.HumanPlay;
|
||||
@@ -363,7 +364,6 @@ public abstract class InputPayMana extends InputSyncronizedBase {
|
||||
final Player activator = am.getActivatingPlayer();
|
||||
final Game g = source.getGame();
|
||||
final HashMap<String, Object> repParams = new HashMap<>();
|
||||
repParams.put("Event", "ProduceMana");
|
||||
repParams.put("Mana", m.getOrigProduced());
|
||||
repParams.put("Affected", source);
|
||||
repParams.put("Player", activator);
|
||||
@@ -373,8 +373,9 @@ public abstract class InputPayMana extends InputSyncronizedBase {
|
||||
for (final Card crd : p.getAllCards()) {
|
||||
for (final ReplacementEffect replacementEffect : crd.getReplacementEffects()) {
|
||||
if (replacementEffect.requirementsCheck(g)
|
||||
&& replacementEffect.getMode() == ReplacementType.ProduceMana
|
||||
&& replacementEffect.canReplace(repParams)
|
||||
&& replacementEffect.getMapParams().containsKey("ManaReplacement")
|
||||
&& replacementEffect.hasParam("ManaReplacement")
|
||||
&& replacementEffect.zonesCheck(g.getZoneOf(crd))) {
|
||||
return true;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user