Commit Graph

5 Commits

Author SHA1 Message Date
David Négrier
a373626e24 Removing all "any" from back.
To do this, I used generic-type-guard package which generates both an interface AND a valid type guard from code.
With this, we are 100% sure that the messages we receive are validated at runtime!
The client cannot pass us an object that is invalid! \o/
2020-06-09 23:07:19 +02:00
David Négrier
125a4d11af Refactored and optimized messages
Now, when a user moves, only his/her position is sent back to the other users. The position of all users is not sent each time.

The messages sent to the browser are now:

- the list of all users as a return to the join_room event (you can send responses to events in socket.io)
- a "join_room" event sent when a new user joins the room
- a "user_moved" event when a user moved
- a "user_left" event when a user left the room

The GameScene tracks all these events and reacts accordingly.

Also, I made a number of refactoring in the classes and removed the GameSceneInterface that was useless (it was implemented by the LogincScene for no reason at all)
2020-05-19 19:11:12 +02:00
David Négrier
4e745f20f7 More code removal 2020-05-15 22:08:53 +02:00
gparant
67c3eaa7f4 Fix Message send to add direction 2020-04-07 21:02:23 +02:00
gparant
e8da727cae Refactor and fix error hydration message socket io
- Position message send will be on format :
message :
                    userId : user identification
                    roomId: room identification
                    position: position of user in map
                        x: user x position on map
                        y: user y position on map
 - Create Point object and interface to have position x and y of user in map.
2020-04-04 16:25:03 +02:00