fixed multi-human drafting

This commit is contained in:
BetaSteward 2011-02-08 11:34:28 -05:00
parent 5a785b9330
commit e2fd0299c7
31 changed files with 160 additions and 107 deletions

View file

@ -184,8 +184,11 @@ public class DraftController {
return this.draftSessionId;
}
public void sendCardPick(UUID sessionId, UUID cardId) {
draftSessions.get(sessionPlayerMap.get(sessionId)).sendCardPick(cardId);
public DraftPickView sendCardPick(UUID sessionId, UUID cardId) {
if (draftSessions.get(sessionPlayerMap.get(sessionId)).sendCardPick(cardId)) {
return getDraftPickView(sessionPlayerMap.get(sessionId), 0);
}
return null;
}
private synchronized void updateDraft() {

View file

@ -31,6 +31,7 @@ package mage.server.draft;
import java.util.UUID;
import java.util.concurrent.ConcurrentHashMap;
import mage.game.draft.Draft;
import mage.view.DraftPickView;
/**
*
@ -61,8 +62,8 @@ public class DraftManager {
draftControllers.remove(gameId);
}
public void sendCardPick(UUID draftId, UUID sessionId, UUID cardId) {
draftControllers.get(draftId).sendCardPick(sessionId, cardId);
public DraftPickView sendCardPick(UUID draftId, UUID sessionId, UUID cardId) {
return draftControllers.get(draftId).sendCardPick(sessionId, cardId);
}
public void removeSession(UUID sessionId) {

View file

@ -151,9 +151,10 @@ public class DraftSession {
killed = true;
}
public void sendCardPick(UUID cardId) {
public boolean sendCardPick(UUID cardId) {
cancelTimeout();
draft.addPick(playerId, cardId);
return draft.addPick(playerId, cardId);
}
}