mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-19 20:28:00 +00:00
ChangeZoneEffect: add Meld and Mutate for TriggerChangesZoneAll
This commit is contained in:
@@ -223,6 +223,19 @@ public class ChangeZoneAllEffect extends SpellAbilityEffect {
|
||||
|
||||
if (!movedCard.getZone().equals(originZone)) {
|
||||
triggerList.put(originZone.getZoneType(), movedCard.getZone().getZoneType(), movedCard);
|
||||
|
||||
if (c.getMeldedWith() != null) {
|
||||
Card meld = game.getCardState(c.getMeldedWith(), null);
|
||||
if (meld != null) {
|
||||
triggerList.put(originZone.getZoneType(), movedCard.getZone().getZoneType(), meld);
|
||||
}
|
||||
}
|
||||
if (c.hasMergedCard()) {
|
||||
for (final Card cm : c.getMergedCards()) {
|
||||
if (cm == c) continue;
|
||||
triggerList.put(originZone.getZoneType(), movedCard.getZone().getZoneType(), cm);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -728,16 +728,28 @@ public class ChangeZoneEffect extends SpellAbilityEffect {
|
||||
}
|
||||
}
|
||||
if (!movedCard.getZone().equals(originZone)) {
|
||||
Card meld = null;
|
||||
triggerList.put(originZone.getZoneType(), movedCard.getZone().getZoneType(), movedCard);
|
||||
|
||||
if (gameCard.getMeldedWith() != null) {
|
||||
meld = game.getCardState(gameCard.getMeldedWith(), null);
|
||||
if (meld != null) {
|
||||
triggerList.put(originZone.getZoneType(), movedCard.getZone().getZoneType(), meld);
|
||||
}
|
||||
}
|
||||
if (gameCard.hasMergedCard()) {
|
||||
for (final Card c : gameCard.getMergedCards()) {
|
||||
if (c == gameCard) continue;
|
||||
triggerList.put(originZone.getZoneType(), movedCard.getZone().getZoneType(), c);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (remember != null) {
|
||||
hostCard.addRemembered(movedCard);
|
||||
// addRememberedFromCardState ?
|
||||
if (gameCard.getMeldedWith() != null) {
|
||||
Card meld = game.getCardState(gameCard.getMeldedWith(), null);
|
||||
if (meld != null) {
|
||||
hostCard.addRemembered(meld);
|
||||
}
|
||||
if (meld != null) {
|
||||
hostCard.addRemembered(meld);
|
||||
}
|
||||
if (gameCard.hasMergedCard()) {
|
||||
for (final Card c : gameCard.getMergedCards()) {
|
||||
|
||||
Reference in New Issue
Block a user