Package mage.view

Examples of mage.view.TableClientMessage


        log.info(callback.getMethod());
        callback.setData(CompressUtil.decompress(callback.getData()));
        switch (callback.getMethod()) {
            case "startGame":
                {
                    TableClientMessage message = (TableClientMessage) callback.getData();
                    gameId = message.getGameId();
                    playerId = message.getPlayerId();
                    session.joinGame(message.getGameId());
                    startControlThread();
                    break;
                }
            case "gameInform":
                {
                    GameClientMessage message = (GameClientMessage) callback.getData();
                    log.info("Inform: " + message.getMessage());
                    gameView = message.getGameView();
                    break;
                }
            case "gameInit":
                break;
            case "gameTarget":
                {
                    GameClientMessage message = (GameClientMessage) callback.getData();
                    log.info("Target: " + message.getMessage());
                    switch (message.getMessage()) {
                        case "Select a starting player":
                            session.sendPlayerUUID(gameId, playerId);
                            break;
                        case "Select a card to discard":
                            log.info("hand size: " + gameView.getHand().size());
                            SimpleCardView card = gameView.getHand().values().iterator().next();
                            session.sendPlayerUUID(gameId, card.getId());
                            break;
                    }
                    break;
                }
            case "gameAsk":
                {
                    GameClientMessage message = (GameClientMessage) callback.getData();
                    log.info("Ask: " + message.getMessage());
                    if (message.getMessage().equals("Do you want to take a mulligan?")) {
                        session.sendPlayerBoolean(gameId, false);
                    }       break;
                }
            case "gameSelect":
                {
                    GameClientMessage message = (GameClientMessage) callback.getData();
                    log.info("Select: " + message.getMessage());
                    if (LoadPhaseManager.getInstance().isSkip(message.getGameView(), message.getMessage(), playerId)) {
                        log.info("Skipped: " + message.getMessage());
                        session.sendPlayerBoolean(gameId, false);
                    }       break;
                }
            case "gameOver":
                log.info("Game over");
View Full Code Here


            }
        }
    }

    public void joinedTable(final UUID roomId, final UUID tableId, boolean isTournament) {
        fireCallback(new ClientCallback("joinedTable", tableId, new TableClientMessage(roomId, tableId, isTournament)));
    }
View Full Code Here

    public void joinedTable(final UUID roomId, final UUID tableId, boolean isTournament) {
        fireCallback(new ClientCallback("joinedTable", tableId, new TableClientMessage(roomId, tableId, isTournament)));
    }

    public void gameStarted(final UUID gameId, final UUID playerId) {
        fireCallback(new ClientCallback("startGame", gameId, new TableClientMessage(gameId, playerId)));
    }
View Full Code Here

    public void gameStarted(final UUID gameId, final UUID playerId) {
        fireCallback(new ClientCallback("startGame", gameId, new TableClientMessage(gameId, playerId)));
    }

    public void draftStarted(final UUID draftId, final UUID playerId) {
        fireCallback(new ClientCallback("startDraft", draftId, new TableClientMessage(draftId, playerId)));
    }
View Full Code Here

    public void draftStarted(final UUID draftId, final UUID playerId) {
        fireCallback(new ClientCallback("startDraft", draftId, new TableClientMessage(draftId, playerId)));
    }

    public void tournamentStarted(final UUID tournamentId, final UUID playerId) {
        fireCallback(new ClientCallback("startTournament", tournamentId, new TableClientMessage(tournamentId, playerId)));
    }
View Full Code Here

    public void tournamentStarted(final UUID tournamentId, final UUID playerId) {
        fireCallback(new ClientCallback("startTournament", tournamentId, new TableClientMessage(tournamentId, playerId)));
    }

    public void sideboard(final Deck deck, final UUID tableId, final int time, boolean limited) {
        fireCallback(new ClientCallback("sideboard", tableId, new TableClientMessage(deck, tableId, time, limited)));
        sideboarding.put(tableId, deck);
    }
View Full Code Here

        fireCallback(new ClientCallback("sideboard", tableId, new TableClientMessage(deck, tableId, time, limited)));
        sideboarding.put(tableId, deck);
    }

    public void construct(final Deck deck, final UUID tableId, final int time) {
        fireCallback(new ClientCallback("construct", tableId, new TableClientMessage(deck, tableId, time)));
    }
View Full Code Here

                try {
                    logger.debug(callback.getMessageId() + " -- " + callback.getMethod());
                    switch (callback.getMethod()) {
                        case "startGame":
                            {
                                TableClientMessage message = (TableClientMessage) callback.getData();
                                GameManager.getInstance().setCurrentPlayerUUID(message.getPlayerId());
                                gameStarted(message.getGameId(), message.getPlayerId());
                                break;
                            }
                        case "startTournament":
                            {
                                TableClientMessage message = (TableClientMessage) callback.getData();
                                tournamentStarted(message.getGameId(), message.getPlayerId());
                                break;
                            }
                        case "startDraft":
                            {
                                TableClientMessage message = (TableClientMessage) callback.getData();
                                draftStarted(message.getGameId(), message.getPlayerId());
                                break;
                            }
                        case "replayGame":
                            replayGame(callback.getObjectId());
                            break;
                        case "showTournament":
                            showTournament(callback.getObjectId());
                            break;
                        case "watchGame":
                            watchGame(callback.getObjectId());
                            break;
                        case "chatMessage":
                            {
                                ChatMessage message = (ChatMessage) callback.getData();
                                ChatPanel panel = MageFrame.getChat(callback.getObjectId());
                                if (panel != null) {
                                    // play the to the message connected sound
                                    if (message.getSoundToPlay() != null) {
                                        switch (message.getSoundToPlay()) {
                                            case PlayerLeft:
                                                AudioManager.playPlayerLeft();
                                                break;
                                            case PlayerQuitTournament:
                                                AudioManager.playPlayerQuitTournament();
                                                break;
                                            case PlayerSubmittedDeck:
                                                AudioManager.playPlayerSubmittedDeck();
                                                break;
                                            case PlayerWhispered:
                                                AudioManager.playPlayerWhispered();
                                                break;
                                        }
                                    }
                                    // send start message to chat if not done yet
                                    if (!panel.isStartMessageDone()) {
                                        createChatStartMessage(panel);
                                    }
                                    // send the message to subchat if exists and it's not a game message
                                    if (!message.getMessageType().equals(MessageType.GAME) && panel.getConnectedChat() != null) {
                                        panel.getConnectedChat().receiveMessage(message.getUsername(), message.getMessage(), message.getTime(), message.getMessageType(), ChatMessage.MessageColor.BLACK);
                                    } else {
                                        panel.receiveMessage(message.getUsername(), message.getMessage(), message.getTime(), message.getMessageType(),  message.getColor());
                                    }
                                   
                                }       break;
                            }
                        case "serverMessage":
                            if (callback.getData() != null) {
                                ChatMessage message = (ChatMessage) callback.getData();
                                if (message.getColor().equals(ChatMessage.MessageColor.RED)) {
                                    JOptionPane.showMessageDialog(null, message.getMessage(), "Server message", JOptionPane.WARNING_MESSAGE);
                                } else {
                                    JOptionPane.showMessageDialog(null, message.getMessage(), "Server message", JOptionPane.INFORMATION_MESSAGE);
                                }
                            }   break;
                        case "joinedTable":
                            {
                                TableClientMessage message = (TableClientMessage) callback.getData();
                                joinedTable(message.getRoomId(), message.getTableId(), message.getFlag());
                                break;
                            }
                        case "replayInit":
                            {
                                GamePanel panel = MageFrame.getGame(callback.getObjectId());
                                if (panel != null) {
                                    panel.init((GameView) callback.getData());
                                }       break;
                            }
                        case "replayDone":
                            {
                                GamePanel panel = MageFrame.getGame(callback.getObjectId());
                                if (panel != null) {
                                    panel.endMessage((String) callback.getData(), callback.getMessageId());
                                }       break;
                            }
                        case "replayUpdate":
                            {
                                GamePanel panel = MageFrame.getGame(callback.getObjectId());
                                if (panel != null) {
                                    panel.updateGame((GameView) callback.getData());
                                }       break;
                            }
                        case "gameInit":
                            {
                                GamePanel panel = MageFrame.getGame(callback.getObjectId());
                                if (panel != null) {
                                    panel.init((GameView) callback.getData());
                                }       break;
                            }
                        case "gameOver":
                            {
                                GamePanel panel = MageFrame.getGame(callback.getObjectId());
                                if (panel != null) {
                                    panel.endMessage((String) callback.getData(), callback.getMessageId());
                                }       break;
                            }
                        case "gameError":
                            frame.showErrorDialog("Game Error", (String) callback.getData());
                            break;
                        case "gameAsk":
                            {
                                GameClientMessage message = (GameClientMessage) callback.getData();
                                GamePanel panel = MageFrame.getGame(callback.getObjectId());
                                if (panel != null) {
                                    panel.ask(message.getMessage(), message.getGameView(), callback.getMessageId());
                                }       break;
                            }
                        case "gameTarget": // e.g. Pick triggered ability
                            {
                                GameClientMessage message = (GameClientMessage) callback.getData();
                                GamePanel panel = MageFrame.getGame(callback.getObjectId());
                                if (panel != null) {
                                    panel.pickTarget(message.getMessage(), message.getCardsView(), message.getGameView(),
                                            message.getTargets(), message.isFlag(), message.getOptions(), callback.getMessageId());
                                }       break;
                            }
                        case "gameSelect":
                            {
                                GameClientMessage message = (GameClientMessage) callback.getData();
                                GamePanel panel = MageFrame.getGame(callback.getObjectId());
                                if (panel != null) {
                                    panel.select(message.getMessage(), message.getGameView(), callback.getMessageId(), message.getOptions());
                                }       break;
                            }
                        case "gameChooseAbility":
                            {
                                GamePanel panel = MageFrame.getGame(callback.getObjectId());
                                if (panel != null) {
                                    panel.pickAbility((AbilityPickerView) callback.getData());
                                }       break;
                            }
                        case "gameChoosePile":
                            {
                                GameClientMessage message = (GameClientMessage) callback.getData();
                                GamePanel panel = MageFrame.getGame(callback.getObjectId());
                                if (panel != null) {
                                    panel.pickPile(message.getMessage(), message.getPile1(), message.getPile2());
                                }       break;
                            }
                        case "gameChooseChoice":
                            {
                                GameClientMessage message = (GameClientMessage) callback.getData();
                                GamePanel panel = MageFrame.getGame(callback.getObjectId());

                                if (panel != null) {
                                    panel.getChoice(message.getChoice(), callback.getObjectId());
                                }       break;
                            }
                        case "gamePlayMana":
                            {
                                GameClientMessage message = (GameClientMessage) callback.getData();
                                GamePanel panel = MageFrame.getGame(callback.getObjectId());
                                if (panel != null) {
                                    panel.playMana(message.getMessage(), message.getGameView(), callback.getMessageId());
                                }       break;
                            }
                        case "gamePlayXMana":
                            {
                                GameClientMessage message = (GameClientMessage) callback.getData();
                                GamePanel panel = MageFrame.getGame(callback.getObjectId());
                                if (panel != null) {
                                    panel.playXMana(message.getMessage(), message.getGameView(), callback.getMessageId());
                                }       break;
                            }
                        case "gameSelectAmount":
                            {
                                GameClientMessage message = (GameClientMessage) callback.getData();
                                GamePanel panel = MageFrame.getGame(callback.getObjectId());
                                if (panel != null) {
                                    panel.getAmount(message.getMin(), message.getMax(), message.getMessage());
                                }       break;
                            }
                        case "gameUpdate":
                            {
                                GamePanel panel = MageFrame.getGame(callback.getObjectId());
                                if (panel != null) {
                                    panel.updateGame((GameView) callback.getData());
                                }       break;
                            }
                        case "endGameInfo":
                            MageFrame.getInstance().showGameEndDialog((GameEndView) callback.getData());
                            break;
                        case "showUserMessage":
                            List<String> messageData = (List<String>) callback.getData();
                            if (messageData.size() == 2) {
                                JOptionPane.showMessageDialog(null, messageData.get(1), messageData.get(0), JOptionPane.WARNING_MESSAGE);
                            }   break;
                        case "gameInform":
                            if (callback.getMessageId() > gameInformMessageId) {
                                {
                                    GameClientMessage message = (GameClientMessage) callback.getData();
                                    GamePanel panel = MageFrame.getGame(callback.getObjectId());
                                    if (panel != null) {
                                        panel.inform(message.getMessage(), message.getGameView(), callback.getMessageId());
                                    }
                                }
// no longer needed because phase skip handling on server side now
                            } else {
                                logger.warn(new StringBuilder("message out of sequence - ignoring").append("MessageId = ").append(callback.getMessageId()).append(" method = ").append(callback.getMethod()));
                                //logger.warn("message out of sequence - ignoring");
                            }
                            gameInformMessageId = messageId;
                            break;
                        case "gameInformPersonal":
                            {
                                GameClientMessage message = (GameClientMessage) callback.getData();
                                GamePanel panel = MageFrame.getGame(callback.getObjectId());
                                if (panel != null) {
                                    JOptionPane.showMessageDialog(panel, message.getMessage(), "Game message",
                                            JOptionPane.INFORMATION_MESSAGE);
                                }       break;
                            }
                        case "sideboard":
                            {
                                TableClientMessage message = (TableClientMessage) callback.getData();
                                DeckView deckView = message.getDeck();
                                Deck deck = DeckUtil.construct(deckView);
                                if (message.getFlag()) {
                                    construct(deck, message.getTableId(), message.getTime());
                                } else {
                                    sideboard(deck, message.getTableId(), message.getTime());
                                }       break;
                            }
                        case "construct":
                            {
                                TableClientMessage message = (TableClientMessage) callback.getData();
                                DeckView deckView = message.getDeck();
                                Deck deck = DeckUtil.construct(deckView);
                                construct(deck, message.getTableId(), message.getTime());
                                break;
                            }
                        case "draftOver":
                            MageFrame.removeDraft(callback.getObjectId());
                            break;
                        case "draftPick":
                            {
                                DraftClientMessage message = (DraftClientMessage) callback.getData();
                                DraftPanel panel = MageFrame.getDraft(callback.getObjectId());
                                if (panel != null) {
                                    panel.loadBooster(message.getDraftPickView());
                                }       break;
                            }
                        case "draftUpdate":
                            {
                                DraftPanel panel = MageFrame.getDraft(callback.getObjectId());
                                if (panel != null) {
                                    panel.updateDraft((DraftView) callback.getData());
                                }
                                break;
                            }
                        case "draftInform":
//                            if (callback.getMessageId() > messageId) {
                            {
                                DraftClientMessage message = (DraftClientMessage) callback.getData();
                            }
//                            } else {
//                                logger.warn("message out of sequence - ignoring");
//                            }
//                            break;
                        case "draftInit":
                            {
                                DraftClientMessage message = (DraftClientMessage) callback.getData();
                                DraftPanel panel = MageFrame.getDraft(callback.getObjectId());
                                if (panel != null) {
                                    panel.loadBooster(message.getDraftPickView());
                                }       break;
                            }
                        case "tournamentInit":
                            break;
                    }
View Full Code Here

TOP

Related Classes of mage.view.TableClientMessage

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.