feat: reroll 一键重刷
This commit is contained in:
1 parent
3eced7bdba
commit
816d9dffcc
21 files changed
+709
-27
No files matched your search
+5
-1
@@ -331,6 +331,9 @@ export const C2S = {
|
||||
// host confirmed — a seat that changed hands meanwhile is refused
|
||||
'room.kick': { seat: (v) => isInt(v, 0, MAX_SEATS - 1), playerId: isId },
|
||||
'room.start': {},
|
||||
// INFO_CHECK: the host proposes a full setup reroll; all human seats must consent.
|
||||
'room.rerollSetup': { setupRevision: (v) => isInt(v, 0, 2 ** 31) },
|
||||
'room.cancelReroll': { voteId: (v) => isInt(v, 1, 2 ** 31) },
|
||||
// operator loadout (DESIGN §16): stored per session/seat; accepted until the match leaves INFO_CHECK
|
||||
'room.loadout': { entries: isLoadoutEntries },
|
||||
// operator ownership (干员持有, 0.2.0 补位): stored per session / seat; a match takes the list its seat had when it
|
||||
@@ -346,7 +349,8 @@ export const C2S = {
|
||||
'room.removeSpectator': { playerId: isId },
|
||||
|
||||
// match
|
||||
'g.infoReady': {},
|
||||
'g.infoReady': { setupRevision: (v) => isInt(v, 0, 2 ** 31), $optional: ['setupRevision'] },
|
||||
'g.rerollVote': { voteId: (v) => isInt(v, 1, 2 ** 31), agree: isBool },
|
||||
'g.band': { bandId: isId },
|
||||
'g.bandSkip': {},
|
||||
// the strategy highlighted in the draft screen (user playtest #4 item 4): a turn that runs out takes it while it is
|
||||
|
||||
Reference in new issue
Block a user