mirror of
https://github.com/magefree/mage.git
synced 2025-12-25 04:52:07 -08:00
fixed issue 206 - game over message is no longer modal
This commit is contained in:
parent
2e97eb38fd
commit
77ed081e70
3 changed files with 16 additions and 9 deletions
|
|
@ -60,7 +60,7 @@ public class FeedbackPanel extends javax.swing.JPanel {
|
|||
private final static Logger logger = Logger.getLogger(FeedbackPanel.class);
|
||||
|
||||
public enum FeedbackMode {
|
||||
INFORM, QUESTION, CONFIRM, CANCEL, SELECT
|
||||
INFORM, QUESTION, CONFIRM, CANCEL, SELECT, END
|
||||
}
|
||||
|
||||
private boolean selected = false;
|
||||
|
|
@ -117,6 +117,12 @@ public class FeedbackPanel extends javax.swing.JPanel {
|
|||
this.btnRight.setText("Done");
|
||||
this.helper.setState("", false, "Done", true);
|
||||
break;
|
||||
case END:
|
||||
this.btnLeft.setVisible(false);
|
||||
this.btnRight.setVisible(true);
|
||||
this.btnRight.setText("OK");
|
||||
this.helper.setState("", false, "Done", true);
|
||||
break;
|
||||
}
|
||||
this.btnSpecial.setVisible(special);
|
||||
this.btnSpecial.setText("Special");
|
||||
|
|
@ -352,6 +358,8 @@ public class FeedbackPanel extends javax.swing.JPanel {
|
|||
}
|
||||
if (mode == FeedbackMode.SELECT && (evt.getModifiers() & ActionEvent.CTRL_MASK) == ActionEvent.CTRL_MASK) {
|
||||
session.sendPlayerInteger(gameId, 0);
|
||||
} else if (mode == FeedbackMode.END) {
|
||||
MageFrame.getGame(gameId).hideGame();
|
||||
} else {
|
||||
session.sendPlayerBoolean(gameId, false);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -214,6 +214,7 @@ public class GamePanel extends javax.swing.JPanel {
|
|||
this.playerId = null;
|
||||
session = MageFrame.getSession();
|
||||
MageFrame.addGame(gameId, this);
|
||||
this.feedbackPanel.init(gameId);
|
||||
this.feedbackPanel.clear();
|
||||
this.btnConcede.setVisible(false);
|
||||
this.btnSwitchHands.setVisible(false);
|
||||
|
|
@ -467,10 +468,10 @@ public class GamePanel extends javax.swing.JPanel {
|
|||
this.feedbackPanel.getFeedback(FeedbackMode.INFORM, information, false, gameView.getSpecial(), null);
|
||||
}
|
||||
|
||||
public void modalMessage(String message) {
|
||||
JOptionPane.showMessageDialog(this, message, "", JOptionPane.INFORMATION_MESSAGE);
|
||||
}
|
||||
|
||||
public void endMessage(String message) {
|
||||
this.feedbackPanel.getFeedback(FeedbackMode.END, message, false, false, null);
|
||||
}
|
||||
|
||||
public int modalQuestion(String message, String title) {
|
||||
return JOptionPane.showConfirmDialog(this, message, title, JOptionPane.YES_NO_OPTION);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -117,8 +117,7 @@ public class CallbackClientImpl implements CallbackClient {
|
|||
else if (callback.getMethod().equals("replayDone")) {
|
||||
GamePanel panel = frame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.modalMessage((String) callback.getData());
|
||||
panel.hideGame();
|
||||
panel.endMessage((String) callback.getData());
|
||||
}
|
||||
}
|
||||
else if (callback.getMethod().equals("replayUpdate")) {
|
||||
|
|
@ -136,8 +135,7 @@ public class CallbackClientImpl implements CallbackClient {
|
|||
else if (callback.getMethod().equals("gameOver")) {
|
||||
GamePanel panel = frame.getGame(callback.getObjectId());
|
||||
if (panel != null) {
|
||||
panel.modalMessage((String) callback.getData());
|
||||
panel.hideGame();
|
||||
panel.endMessage((String) callback.getData());
|
||||
}
|
||||
}
|
||||
else if (callback.getMethod().equals("gameError")) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue