From e9f0539a40414d2648348deba6df9a4f0305aa53 Mon Sep 17 00:00:00 2001 From: Oleg Agafonov Date: Fri, 7 Jun 2024 12:42:08 +0400 Subject: [PATCH] server: fixed that rollback request can hide some active dialogs of other priority player (yes/no, play priority, targets, attackers, etc) --- .../src/main/java/mage/server/game/GameController.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Mage.Server/src/main/java/mage/server/game/GameController.java b/Mage.Server/src/main/java/mage/server/game/GameController.java index 2e90715d662..6018fde920c 100644 --- a/Mage.Server/src/main/java/mage/server/game/GameController.java +++ b/Mage.Server/src/main/java/mage/server/game/GameController.java @@ -516,6 +516,8 @@ public class GameController implements GameCallback { if (game.canRollbackTurns(turnsToRollback)) { UUID playerId = getPlayerId(userId); if (game.getPriorityPlayerId().equals(playerId)) { + // rollback request on own priority - can stop current choose dialog + // TODO: make it async on any priority like concede requestsOpen = requestPermissionToRollback(userId, turnsToRollback); if (requestsOpen == 0) { game.rollbackTurns(turnsToRollback); @@ -926,7 +928,7 @@ public class GameController implements GameCallback { } private void informPersonal(UUID playerId, final String message) throws MageException { - perform(playerId, playerId1 -> getGameSession(playerId1).informPersonal(message)); + perform(playerId, playerId1 -> getGameSession(playerId1).informPersonal(message), false); } private void error(String message, Exception ex) {