Implement bounded Richese Nexus Betrayal auctions
This commit is contained in:
1 parent
a921c0da9b
commit
9c0000e469
25 files changed
+2208
-39
No files matched your search
+2
-1
@@ -12,12 +12,13 @@ type TurnView = Pick<
|
||||
| 'phaseOpening'
|
||||
| 'automaticContinuationPending'
|
||||
> &
|
||||
Partial<Pick<GameView, 'biddingEnd' | 'kullReaction'>>;
|
||||
Partial<Pick<GameView, 'biddingEnd' | 'kullReaction' | 'richeseBetrayalReaction'>>;
|
||||
|
||||
/** The single current decision owner for the table banner and seat highlight.
|
||||
* Shared response windows have no single acting seat. Only public view fields
|
||||
* participate; this does not decide which gameplay actions are legal. */
|
||||
export function tableActionOwner(g: TurnView): string | null {
|
||||
if (g.richeseBetrayalReaction) return null;
|
||||
if (g.kullReaction && g.status === 'playing')
|
||||
return g.players.some(p => p.id === g.kullReaction!.player)
|
||||
? g.kullReaction.player : null;
|
||||
|
||||
Reference in new issue
Block a user