2 Commits

Author SHA1 Message Date
bb817ad3af Implement ringbuffer for websocket messages
This implements a ringbuffer that is used to decouple the raw websocket
connection from the messages that the game handler handles.

There is still a problem:
Test_MessageBuffer_GetWaitsForNewDataIfOldOneWasAlreadyGotten fails
because buf.Get() returns an old value instead of waiting for a new one.
This must be fixed.

Additionally, the Insert() and Get() methods must be thread-safe at
some point. But since Get() blocks when there is no data, there would be
a deadlock if I see this right.
2023-11-20 01:42:46 +01:00
5acc573fc0 Set groundwork for allowing reconnections
1. Make websocket connection a complex type instead of storing it raw in
   the player
2. Update dependencies
2023-10-12 22:30:03 +02:00