added Construct and Sideboard callbacks

This commit is contained in:
betasteward 2015-07-01 23:26:07 -04:00
parent a316b01b15
commit 27da366eea
12 changed files with 173 additions and 56 deletions

View file

@ -111,6 +111,7 @@ import mage.client.game.GamePanel;
import mage.client.plugins.impl.Plugins;
import mage.client.table.TablesPane;
import mage.client.tournament.TournamentPane;
import mage.client.util.DeckUtil;
import mage.client.util.EDTExceptionHandler;
import mage.client.util.GameManager;
import mage.client.util.SettingsManager;
@ -126,6 +127,7 @@ import mage.utils.MageVersion;
import mage.view.AbilityPickerView;
import mage.view.CardsView;
import mage.view.ChatMessage;
import mage.view.DeckView;
import mage.view.GameClientMessage;
import mage.view.GameEndView;
import mage.view.GameView;
@ -1647,6 +1649,31 @@ public class MageFrame extends javax.swing.JFrame implements MageClient {
public void gameError(UUID gameId, String message) {
this.showErrorDialog("Game Error", message);
}
@Override
public void sideboard(UUID tableId, DeckView deckView, int time, boolean limited) {
Deck deck = DeckUtil.construct(deckView);
if (limited) {
construct(deck, tableId, time);
} else {
sideboard(deck, tableId, time);
}
}
@Override
public void construct(UUID tableId, DeckView deckView, int time) {
Deck deck = DeckUtil.construct(deckView);
construct(deck, tableId, time);
}
protected void sideboard(Deck deck, UUID tableId, int time) {
showDeckEditor(DeckEditorMode.SIDEBOARDING, deck, tableId, time);
}
protected void construct(Deck deck, UUID tableId, int time) {
showDeckEditor(DeckEditorMode.LIMITED_BUILDING, deck, tableId, time);
}
}

View file

@ -31,19 +31,15 @@ import java.util.List;
import java.util.UUID;
import javax.swing.JOptionPane;
import javax.swing.SwingUtilities;
import mage.cards.decks.Deck;
import mage.client.MageFrame;
import mage.client.constants.Constants.DeckEditorMode;
import mage.client.draft.DraftPanel;
import mage.client.game.GamePanel;
import mage.client.util.DeckUtil;
import mage.client.util.audio.AudioManager;
import mage.client.util.object.SaveObjectUtil;
import mage.interfaces.callback.CallbackClient;
import mage.interfaces.callback.ClientCallback;
import mage.utils.CompressUtil;
import mage.view.ChatMessage;
import mage.view.DeckView;
import mage.view.DraftClientMessage;
import mage.view.DraftView;
import mage.view.GameView;
@ -308,25 +304,25 @@ public class CallbackClientImpl implements CallbackClient {
// 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 "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;
@ -484,13 +480,13 @@ public class CallbackClientImpl implements CallbackClient {
}
}
protected void sideboard(Deck deck, UUID tableId, int time) {
frame.showDeckEditor(DeckEditorMode.SIDEBOARDING, deck, tableId, time);
}
protected void construct(Deck deck, UUID tableId, int time) {
frame.showDeckEditor(DeckEditorMode.LIMITED_BUILDING, deck, tableId, time);
}
// protected void sideboard(Deck deck, UUID tableId, int time) {
// frame.showDeckEditor(DeckEditorMode.SIDEBOARDING, deck, tableId, time);
// }
//
// protected void construct(Deck deck, UUID tableId, int time) {
// frame.showDeckEditor(DeckEditorMode.LIMITED_BUILDING, deck, tableId, time);
// }
private void handleException(Exception ex) {
logger.fatal("Client error\n", ex);

View file

@ -4,27 +4,23 @@ import java.io.Serializable;
import java.util.Map;
import java.util.Set;
import java.util.UUID;
import mage.client.components.MageUI;
//import mage.interfaces.MageClient;
//import mage.interfaces.callback.ClientCallback;
import mage.remote.Connection;
//import mage.remote.Session;
//import mage.remote.SessionImpl;
import mage.utils.MageVersion;
import org.apache.log4j.Logger;
import org.junit.Ignore;
import javax.swing.*;
import java.util.concurrent.CountDownLatch;
import javax.swing.SwingUtilities;
import mage.choices.Choice;
import mage.client.components.MageUI;
import mage.interfaces.ServerState;
import mage.remote.Connection;
import mage.utils.MageVersion;
import mage.view.AbilityPickerView;
import mage.view.CardsView;
import mage.view.ChatMessage;
import mage.view.DeckView;
import mage.view.GameClientMessage;
import mage.view.GameEndView;
import mage.view.GameView;
import mage.view.UserRequestMessage;
import org.apache.log4j.Logger;
import org.junit.Ignore;
import org.mage.network.Client;
import org.mage.network.interfaces.MageClient;
import org.mage.network.messages.MessageType;
@ -228,6 +224,16 @@ public class MultiConnectTest {
public void gameError(UUID gameId, String message) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
@Override
public void sideboard(UUID tableId, DeckView deck, int time, boolean limited) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
@Override
public void construct(UUID tableId, DeckView deck, int time) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
}
public static void main(String[] argv) throws Exception {