Merge branch 'fixAuras' into 'master'

Fix multiplayer losing keeping auras & stolen permanents

Closes #1333

See merge request core-developers/forge!3640
This commit is contained in:
Michael Kamensky
2021-01-31 05:12:03 +00:00
2 changed files with 11 additions and 0 deletions

View File

@@ -717,8 +717,18 @@ public class Game {
if(isMultiplayer) {
if (c.getOwner().equals(p)) {
for(Card cc : cards) {
cc.removeImprintedCard(c);
cc.removeEncodedCard(c);
cc.removeRemembered(c);
}
c.ceaseToExist();
} else {
// return stolen permanents
if (c.getController().equals(p) && c.isInZone(ZoneType.Battlefield)) {
c.removeTempController(p);
getAction().controllerChangeZoneCorrection(c);
}
c.removeTempController(p);
if (c.getController().equals(p)) {
this.getAction().exile(c, null);

View File

@@ -6404,6 +6404,7 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
public void ceaseToExist() {
getGame().getTriggerHandler().suppressMode(TriggerType.ChangesZone);
getZone().remove(this);
setZone(null);
getGame().getTriggerHandler().clearSuppression(TriggerType.ChangesZone);
}