Commit graph

43 commits

Author SHA1 Message Date
555e4386e3 Use the Show instance of IDs to improve debug 2019-12-26 19:31:43 +01:00
dc920bd80b Handle Player log out with multiple sessions and get rid of the too simple «logOut» function 2019-12-24 00:39:56 +01:00
4a535caccc Remove handling from LogOut messages that are no longer sent by client but by the server 2019-12-24 00:35:45 +01:00
c329ed556c Stop broadcasting to clients not yet logged in 2019-12-23 09:23:32 +01:00
96424bfa2e Implement multi-sessions for players 2019-12-17 15:01:33 +01:00
019909ba61 Use new LogIn server message, make sure the user is logged in after sending them the welcome message (so that they don't see themselves in the room) and broadcast the new LogIn message (to everyone including the newcomer) 2019-12-08 23:00:29 +01:00
e5ee61e848 Revert "Switch session logging out and relaying the log-out message to keep the sessionID accessible until the end" : the solution was to handle cases when the player wasn't logged in separately
This reverts commit 3bd2829cf2.
2019-11-20 18:27:41 +01:00
0d19c4f8dc Use the newest requirements in lib to define an ID prefix for the Session type 2019-11-20 18:26:23 +01:00
7a937355d2 Stop sending an error and simply ignore relay from an unauthenticated player because that should only happen on immediate logout for which there's nothing to do 2019-11-18 17:13:32 +01:00
3bd2829cf2 Switch session logging out and relaying the log-out message to keep the sessionID accessible until the end 2019-11-18 17:11:05 +01:00
a07285c7fc Remove deprecated comment 2019-11-18 17:09:12 +01:00
25bcf0631c Completely replace App.server by App.get, a function applying a projector to the server 2019-11-18 17:09:00 +01:00
bfb4837352 Separate PlayerIDs from SessionIDs and simplify protocol accordingly 2019-11-12 23:25:00 +01:00
50b24a0db6 Add a Player type back and slowly start separating SessionIDs (temporary) and PlayerID (permanent) 2019-11-05 18:14:24 +01:00
3aca8283e2 WIP: Still breaking everything, trying to replace PlayerID by SessionID now 2019-10-28 08:19:14 +01:00
a05d57fcea WIP : Start redesigning the protocol / informations kept on the server. Breaks pretty much everything 2019-10-23 17:47:18 +02:00
8c1902e6fd Remove all game storing from the server : a lot of remaining protocol operations are now meaningless and will require a huge redesign 2019-10-23 15:27:09 +02:00
d1eb8e957e Use PublicGame returned by the player and stop keeping track of the game's state internally 2019-10-22 18:10:29 +02:00
7804aeecef Use lighter syntax and adapt client code 2019-10-18 19:01:46 +02:00
55ec64fafc Use the new public field counting the turns and adapt the web
interface
2019-10-18 19:01:46 +02:00
8c107c0c2a Adapt code to new PublicGame data structure, output messages in the new format and break everything doing so 2019-10-18 19:01:46 +02:00
61d8616a5a WIP: Struggling with using the new public data types 2019-10-18 19:01:46 +02:00
0c5229ae6d Add a new Keys module to interface saltine and in the future implement keypair caching 2019-10-18 19:01:46 +02:00
13cd466e87 Use saltine package 2019-10-18 19:01:46 +02:00
c21a8f6512 Reorder modules alphabetically in imports 2019-10-13 22:00:35 +02:00
0778c4a675 Rename poorly named module Data to RW 2019-10-13 21:55:15 +02:00
e9205b67c7 Use the new APILanguage and simplify a lot of code 2019-08-24 23:29:40 +02:00
b2253b81d6 Handle the end of games 2019-08-12 23:07:49 +02:00
1ace122876 Use latest changes in the lib to send a log of what happened during a turn 2019-01-08 22:48:18 +01:00
Sasha
8b2034279a Pass the move just played along with the new game's state 2018-07-27 23:52:44 +02:00
Sasha
b785bdda22 Modify Game's export function to edit JSON content 2018-07-27 23:51:00 +02:00
Sasha
262b6e3e79 Revert to storing only 'On' games 2018-07-15 18:02:59 +02:00
Sasha
bf5990de47 Adapt code to new library change making player parametric in the key 2018-07-12 22:33:59 +02:00
Sasha
4cd6842c01 Use new parametric Game type in hanafuda library to expose Games more easily 2018-05-15 18:21:07 +02:00
Sasha
83201d5c95 Card-shaped cards in client GUI, sending move but not handled on server 2018-05-13 18:08:12 +02:00
Sasha
20001ebfc5 Start designing the client GUI to handle games 2018-05-12 15:32:00 +02:00
Sasha
02b291d23b Rename and implement correctly the type used to show a partial state of the game to players 2018-05-12 11:24:01 +02:00
Sasha
2cf5d48419 Basic client dialogs to login and start a new game 2018-05-11 12:31:53 +02:00
Sasha
a405c3d8ea Remove unused LANGUAGE pragmas 2018-04-18 15:30:58 +02:00
Sasha
2b3e3bbbef Taking the existing flow from Main into a separate Automaton module 2018-04-18 15:27:59 +02:00
Sasha
1d7a680d48 Remove unused Player.T type 2018-04-12 23:05:58 +02:00
Sasha
59f8751fb6 Use session keys in the client to remove ambiguity 2018-04-12 23:01:40 +02:00
Sasha
fab330b71d First draft, basic session handling 2018-04-11 13:26:41 +02:00