feat(place): final end time + destruction wave
This commit is contained in:
@@ -6,10 +6,10 @@ either). Each message is a short string: a one-letter type tag followed by
|
||||
'|'-separated fields, in a fixed order the client already knows from this
|
||||
table:
|
||||
|
||||
s|<next>|<width>|<height>|<on>
|
||||
s|<next>|<width>|<height>|<end>
|
||||
initial personal state, once per connection
|
||||
(next = epoch ms cooldown ends, or empty if free now;
|
||||
on = 1 if placing pixels is allowed, 0 if frozen)
|
||||
end = epoch ms placement ends, or empty if never)
|
||||
p|<x>|<y>|<c> a pixel was placed - broadcast to everyone,
|
||||
including the placer (no separate ack needed)
|
||||
k|<next> your own placement was accepted; carries your
|
||||
@@ -17,13 +17,16 @@ table:
|
||||
r|c|<next> rejected: still on cooldown
|
||||
r|a rejected: not logged in
|
||||
r|i rejected: invalid x/y/color
|
||||
r|d rejected: placement is disabled by an admin
|
||||
e|<width>|<height>|<on>
|
||||
r|d rejected: placement is over (past <end>)
|
||||
e|<width>|<height>|<end>
|
||||
an admin edited this event's settings (grid size
|
||||
and/or placement toggle) - broadcast to everyone.
|
||||
and/or end time) - broadcast to everyone.
|
||||
If the size changed, a client should re-fetch
|
||||
/api/.../place/canvas rather than try to remap its
|
||||
local pixels.
|
||||
w placement just ended - broadcast to everyone at
|
||||
<end> (see tasks.py). Clients play the wipe wave
|
||||
and blank their board.
|
||||
|
||||
Client -> server has exactly one message shape, the same as the broadcast:
|
||||
p|<x>|<y>|<c>
|
||||
|
||||
Reference in New Issue
Block a user