forked from External/mage
fixed multi-human drafting
This commit is contained in:
parent
5a785b9330
commit
e2fd0299c7
31 changed files with 160 additions and 107 deletions
|
|
@ -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() {
|
||||
|
|
|
|||
|
|
@ -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) {
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue