mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-19 12:18:00 +00:00
TriggerHandler: corner the special case where the ChangesZone Trigger should be active
only if its a dies (Battlefield -> Graveyard) trigger.
This commit is contained in:
@@ -404,10 +404,14 @@ public class TriggerHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!regtrig.zonesCheck(game.getZoneOf(regtrig.getHostCard()))) {
|
if (!regtrig.zonesCheck(game.getZoneOf(regtrig.getHostCard()))) {
|
||||||
|
final Map<String, String> params = regtrig.getMapParams();
|
||||||
|
final Card hostCard = regtrig.getHostCard();
|
||||||
if (!(regtrig instanceof TriggerChangesZone &&
|
if (!(regtrig instanceof TriggerChangesZone &&
|
||||||
regtrig.getHostCard().getZone().is(ZoneType.Graveyard) &&
|
"Battlefield".equals(params.get("Origin")) &&
|
||||||
|
"Graveyard".equals(params.get("Destination")) &&
|
||||||
|
hostCard.getZone().is(ZoneType.Graveyard) &&
|
||||||
regtrig.getActiveZone().contains(ZoneType.Battlefield) &&
|
regtrig.getActiveZone().contains(ZoneType.Battlefield) &&
|
||||||
game.getLastStateBattlefield().contains(regtrig.getHostCard()))) {
|
game.getLastStateBattlefield().contains(hostCard))) {
|
||||||
return false; // Host card isn't where it needs to be.
|
return false; // Host card isn't where it needs to be.
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user