mirror of
https://github.com/magefree/mage.git
synced 2025-12-25 13:02:06 -08:00
personal game messages
This commit is contained in:
parent
6a70d1ee6d
commit
c783cbc41f
8 changed files with 71 additions and 14 deletions
|
|
@ -168,6 +168,9 @@ public class GameController implements GameCallback {
|
|||
case LOOK:
|
||||
lookAtCards(event.getPlayerId(), event.getMessage(), event.getCards());
|
||||
break;
|
||||
case PERSONAL_MESSAGE:
|
||||
informPersonal(event.getPlayerId(), event.getMessage());
|
||||
break;
|
||||
}
|
||||
} catch (MageException ex) {
|
||||
logger.fatal("Player event listener error ", ex);
|
||||
|
|
@ -519,6 +522,14 @@ public class GameController implements GameCallback {
|
|||
}
|
||||
}
|
||||
|
||||
private synchronized void informPersonal(UUID playerId, final String message) throws MageException {
|
||||
perform(playerId, new Command() {
|
||||
public void execute(UUID playerId) {
|
||||
gameSessions.get(playerId).informPersonal(message);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void error(String message, Exception ex) {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.append(message).append(ex.toString());
|
||||
|
|
|
|||
|
|
@ -28,8 +28,6 @@
|
|||
|
||||
package mage.server.game;
|
||||
|
||||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
import mage.game.Game;
|
||||
import mage.interfaces.callback.ClientCallback;
|
||||
import mage.server.User;
|
||||
|
|
@ -38,6 +36,9 @@ import mage.view.GameClientMessage;
|
|||
import mage.view.GameView;
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
import java.rmi.RemoteException;
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author BetaSteward_at_googlemail.com
|
||||
|
|
@ -84,6 +85,15 @@ public class GameWatcher {
|
|||
}
|
||||
}
|
||||
|
||||
public void informPersonal(final String message) {
|
||||
if (!killed) {
|
||||
User user = UserManager.getInstance().getUser(userId);
|
||||
if (user != null) {
|
||||
user.fireCallback(new ClientCallback("gameInformPersonal", game.getId(), new GameClientMessage(getGameView(), message)));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void gameOver(final String message) {
|
||||
if (!killed) {
|
||||
User user = UserManager.getInstance().getUser(userId);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue