Added a quit match option. FFA game gets no more killed if host left mage or quitted match.

This commit is contained in:
LevelX2 2013-07-02 22:15:49 +02:00
parent ec9bb538ed
commit 7b260c960b
15 changed files with 178 additions and 54 deletions

View file

@ -100,6 +100,7 @@ public interface MageServer {
void sendPlayerBoolean(UUID gameId, String sessionId, Boolean data) throws MageException;
void sendPlayerInteger(UUID gameId, String sessionId, Integer data) throws MageException;
void concedeGame(UUID gameId, String sessionId) throws MageException;
void quitMatch(UUID gameId, String sessionId) throws MageException;
void undo(UUID gameId, String sessionId) throws MageException;
GameView getGameView(UUID gameId, String sessionId, UUID playerId) throws MageException;

View file

@ -929,6 +929,21 @@ public class SessionImpl implements Session {
return false;
}
@Override
public boolean quitMatch(UUID gameId) {
try {
if (isConnected()) {
server.quitMatch(gameId, sessionId);
return true;
}
} catch (MageException ex) {
handleMageException(ex);
} catch (Throwable t) {
handleThrowable(t);
}
return false;
}
@Override
public boolean undo(UUID gameId) {
try {

View file

@ -53,6 +53,8 @@ public interface GamePlay {
boolean concedeGame(UUID gameId);
boolean quitMatch(UUID gameId);
boolean submitDeck(UUID tableId, DeckCardLists deck);
boolean updateDeck(UUID tableId, DeckCardLists deck);