mirror of
https://github.com/magefree/mage.git
synced 2025-12-24 20:41:58 -08:00
added Construct and Sideboard callbacks
This commit is contained in:
parent
a316b01b15
commit
27da366eea
12 changed files with 173 additions and 56 deletions
|
|
@ -1,5 +1,6 @@
|
|||
package org.mage.network;
|
||||
|
||||
import org.mage.network.messages.callback.ConstructCallback;
|
||||
import io.netty.bootstrap.ServerBootstrap;
|
||||
import io.netty.channel.Channel;
|
||||
import io.netty.channel.ChannelInitializer;
|
||||
|
|
@ -28,6 +29,7 @@ import mage.choices.Choice;
|
|||
import mage.view.AbilityPickerView;
|
||||
import mage.view.CardsView;
|
||||
import mage.view.ChatMessage;
|
||||
import mage.view.DeckView;
|
||||
import mage.view.DraftClientMessage;
|
||||
import mage.view.DraftView;
|
||||
import mage.view.GameClientMessage;
|
||||
|
|
@ -66,6 +68,7 @@ import org.mage.network.messages.callback.GameTargetCallback;
|
|||
import org.mage.network.messages.callback.GameUpdateCallback;
|
||||
import org.mage.network.messages.callback.InformClientCallback;
|
||||
import org.mage.network.messages.callback.JoinedTableCallback;
|
||||
import org.mage.network.messages.callback.SideboardCallback;
|
||||
import org.mage.network.messages.callback.UserRequestDialogCallback;
|
||||
|
||||
/**
|
||||
|
|
@ -326,12 +329,16 @@ public class Server {
|
|||
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
|
||||
}
|
||||
|
||||
public void sideboard(String sessionId, UUID tableId, TableClientMessage tableClientMessage) {
|
||||
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
|
||||
public void sideboard(String sessionId, UUID tableId, DeckView deck, int time, boolean limited) {
|
||||
Channel ch = findChannel(sessionId);
|
||||
if (ch != null)
|
||||
ch.writeAndFlush(new SideboardCallback(tableId, deck, time, limited)).addListener(WriteListener.getInstance());
|
||||
}
|
||||
|
||||
public void construct(String sessionId, UUID tableId, TableClientMessage tableClientMessage) {
|
||||
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
|
||||
public void construct(String sessionId, UUID tableId, DeckView deck, int time) {
|
||||
Channel ch = findChannel(sessionId);
|
||||
if (ch != null)
|
||||
ch.writeAndFlush(new ConstructCallback(tableId, deck, time)).addListener(WriteListener.getInstance());
|
||||
}
|
||||
|
||||
public void startTournament(String sessionId, UUID tournamentId, TableClientMessage tableClientMessage) {
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ import mage.interfaces.ServerState;
|
|||
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;
|
||||
|
|
@ -55,5 +56,8 @@ public interface MageClient {
|
|||
public void gameEndInfo(UUID gameId, GameEndView view);
|
||||
|
||||
public void userRequestDialog(UUID gameId, UserRequestMessage userRequestMessage);
|
||||
|
||||
public void sideboard(UUID tableId, DeckView deck, int time, boolean limited);
|
||||
public void construct(UUID tableId, DeckView deck, int time);
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,28 @@
|
|||
package org.mage.network.messages.callback;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.view.DeckView;
|
||||
import org.mage.network.handlers.client.ClientMessageHandler;
|
||||
import org.mage.network.messages.ClientMessage;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author BetaSteward
|
||||
*/
|
||||
public class ConstructCallback extends ClientMessage {
|
||||
private final UUID tableId;
|
||||
private final DeckView deck;
|
||||
private final int time;
|
||||
|
||||
public ConstructCallback(UUID tableId, DeckView deck, int time) {
|
||||
this.tableId = tableId;
|
||||
this.deck = deck;
|
||||
this.time = time;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handleMessage(ClientMessageHandler handler) {
|
||||
handler.getClient().construct(tableId, deck, time);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
package org.mage.network.messages.callback;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.view.DeckView;
|
||||
import org.mage.network.handlers.client.ClientMessageHandler;
|
||||
import org.mage.network.messages.ClientMessage;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author BetaSteward
|
||||
*/
|
||||
public class SideboardCallback extends ClientMessage {
|
||||
private final UUID tableId;
|
||||
private final DeckView deck;
|
||||
private final int time;
|
||||
private final boolean limited;
|
||||
|
||||
public SideboardCallback(UUID tableId, DeckView deck, int time, boolean limited) {
|
||||
this.tableId = tableId;
|
||||
this.deck = deck;
|
||||
this.time = time;
|
||||
this.limited = limited;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handleMessage(ClientMessageHandler handler) {
|
||||
handler.getClient().sideboard(tableId, deck, time, limited);
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue