mirror of
https://github.com/magefree/mage.git
synced 2025-12-20 02:30:08 -08:00
Draft stability improvements (#9435)
This commit is contained in:
parent
c8c663b976
commit
b9530e307d
13 changed files with 116 additions and 4 deletions
|
|
@ -736,6 +736,16 @@ public class MageServerImpl implements MageServer {
|
|||
});
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setBoosterLoaded(final UUID draftId, final String sessionId) throws MageException {
|
||||
execute("setBoosterLoaded", sessionId, () -> {
|
||||
managerFactory.sessionManager().getSession(sessionId).ifPresent(session -> {
|
||||
UUID userId = session.getUserId();
|
||||
managerFactory.draftManager().setBoosterLoaded(draftId, userId);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void quitMatch(final UUID gameId, final String sessionId) throws MageException {
|
||||
|
|
|
|||
|
|
@ -199,6 +199,10 @@ public class DraftController {
|
|||
public void sendCardMark(UUID userId, UUID cardId) {
|
||||
draftSessions.get(userPlayerMap.get(userId)).setMarkedCard(cardId);
|
||||
}
|
||||
|
||||
public void setBoosterLoaded(UUID userId) {
|
||||
draftSessions.get(userPlayerMap.get(userId)).setBoosterLoaded();
|
||||
}
|
||||
|
||||
private synchronized void updateDraft() throws MageException {
|
||||
for (final Entry<UUID, DraftSession> entry : draftSessions.entrySet()) {
|
||||
|
|
|
|||
|
|
@ -49,6 +49,11 @@ public class DraftManagerImpl implements DraftManager {
|
|||
public void sendCardMark(UUID draftId, UUID userId, UUID cardId) {
|
||||
draftControllers.get(draftId).sendCardMark(userId, cardId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setBoosterLoaded(UUID draftId, UUID userId) {
|
||||
draftControllers.get(draftId).setBoosterLoaded(userId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removeSession(UUID userId) {
|
||||
|
|
|
|||
|
|
@ -144,5 +144,9 @@ public class DraftSession {
|
|||
public void setMarkedCard(UUID markedCard) {
|
||||
this.markedCard = markedCard;
|
||||
}
|
||||
|
||||
public void setBoosterLoaded() {
|
||||
draft.setBoosterLoaded(playerId);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -19,6 +19,8 @@ public interface DraftManager {
|
|||
DraftPickView sendCardPick(UUID draftId, UUID userId, UUID cardId, Set<UUID> hiddenCards);
|
||||
|
||||
void sendCardMark(UUID draftId, UUID userId, UUID cardId);
|
||||
|
||||
void setBoosterLoaded(UUID draftId, UUID userId);
|
||||
|
||||
void removeSession(UUID userId);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue