Add readme of features and communication in back
This commit is contained in:
parent
fbcb48f9ad
commit
1100edecb7
@ -94,3 +94,6 @@ Vagrant destroy
|
|||||||
* `Vagrant ssh`: connect on your VM Vagrant.
|
* `Vagrant ssh`: connect on your VM Vagrant.
|
||||||
* `Vagrant halt`: stop your VM Vagrant.
|
* `Vagrant halt`: stop your VM Vagrant.
|
||||||
* `Vagrant destroy`: delete your VM Vagrant.
|
* `Vagrant destroy`: delete your VM Vagrant.
|
||||||
|
|
||||||
|
## Features developed
|
||||||
|
You have more details of features developed in back [README.md](./back/README.md).
|
61
back/README.md
Normal file
61
back/README.md
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
# Back Features
|
||||||
|
|
||||||
|
## Login
|
||||||
|
To start your game, you must authenticate on the server back.
|
||||||
|
When you are authenticated, the back server return token and rooms started.
|
||||||
|
```
|
||||||
|
POST => /login
|
||||||
|
Params :
|
||||||
|
email: email of user.
|
||||||
|
```
|
||||||
|
|
||||||
|
## Join a room
|
||||||
|
When a user is connected, the user can join a room.
|
||||||
|
So you must send emit `join-room` with information user:
|
||||||
|
```
|
||||||
|
Socket.io => 'join-room'
|
||||||
|
|
||||||
|
userId: user id of gamer
|
||||||
|
roomId: room id when user enter in game
|
||||||
|
position: {
|
||||||
|
x: position x on map
|
||||||
|
y: position y on map
|
||||||
|
}
|
||||||
|
```
|
||||||
|
All data users are stocked on socket client.
|
||||||
|
|
||||||
|
## Send position user
|
||||||
|
When user move on the map, you can share new position on back with event `user-position`.
|
||||||
|
The information sent:
|
||||||
|
```
|
||||||
|
Socket.io => 'user-position'
|
||||||
|
|
||||||
|
userId: user id of gamer
|
||||||
|
roomId: room id when user enter in game
|
||||||
|
position: {
|
||||||
|
x: position x on map
|
||||||
|
y: position y on map
|
||||||
|
}
|
||||||
|
```
|
||||||
|
All data users are updated on socket client.
|
||||||
|
|
||||||
|
## Receive positions of all users
|
||||||
|
The application sends position of all users in each room in every few 10 milliseconds.
|
||||||
|
The data will pushed on event `user-position`:
|
||||||
|
```
|
||||||
|
Socket.io => 'user-position'
|
||||||
|
|
||||||
|
[
|
||||||
|
{
|
||||||
|
userId: user id of gamer
|
||||||
|
roomId: room id when user enter in game
|
||||||
|
position: {
|
||||||
|
x: position x on map
|
||||||
|
y: position y on map
|
||||||
|
}
|
||||||
|
},
|
||||||
|
...
|
||||||
|
]
|
||||||
|
```
|
||||||
|
|
||||||
|
[<<< back](../README.md)
|
@ -22,7 +22,7 @@ export class Point implements PointInterface{
|
|||||||
}
|
}
|
||||||
|
|
||||||
export class MessageUserPosition extends Message{
|
export class MessageUserPosition extends Message{
|
||||||
position: PointInterface
|
position: PointInterface;
|
||||||
|
|
||||||
constructor(message: string) {
|
constructor(message: string) {
|
||||||
super(message);
|
super(message);
|
||||||
|
Loading…
Reference in New Issue
Block a user