Teleport notification

- Create end point to permit the teleport notification. The map url will be /teleport/token_user
- Create message teleport
- Create receive feature in phaser to teleport

TODO
Teleport player on black room.
This commit is contained in:
Gregoire Parant 2020-10-13 11:39:07 +02:00
parent 3c2f134e4e
commit 65406f844e
8 changed files with 96 additions and 19 deletions

View file

@ -22,7 +22,8 @@ import {
WebRtcSignalToClientMessage,
WebRtcSignalToServerMessage,
WebRtcStartMessage,
ReportPlayerMessage
ReportPlayerMessage,
TeleportMessageMessage
} from "../Messages/generated/messages_pb"
import {UserSimplePeerInterface} from "../WebRtc/SimplePeer";
@ -129,6 +130,8 @@ export class RoomConnection implements RoomConnection {
this.dispatch(EventMessage.PLAY_GLOBAL_MESSAGE, message.getPlayglobalmessage());
} else if (message.hasStopglobalmessage()) {
this.dispatch(EventMessage.STOP_GLOBAL_MESSAGE, message.getStopglobalmessage());
} else if (message.hasTeleportmessagemessage()) {
this.dispatch(EventMessage.TELEPORT, message.getTeleportmessagemessage());
} else {
throw new Error('Unknown message received');
}
@ -466,6 +469,12 @@ export class RoomConnection implements RoomConnection {
});
}
public receiveTeleportMessage(callback: (messageId: string) => void) {
return this.onMessage(EventMessage.TELEPORT, (message: TeleportMessageMessage) => {
callback(message.getMap());
});
}
public emitGlobalMessage(message: PlayGlobalMessageInterface){
console.log('emitGlobalMessage', message);
const playGlobalMessage = new PlayGlobalMessage();