Merge pull request #506 from thecodingmachine/fixreconnect

Fixing reconnection
This commit is contained in:
David Négrier 2020-12-18 16:28:19 +01:00 committed by GitHub
commit 4940e7db98
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -155,14 +155,14 @@ export class GameScene extends ResizableScene implements CenterListener {
private playerName!: string;
private characterLayers!: string[];
constructor(private room: Room, MapUrlFile: string) {
constructor(private room: Room, MapUrlFile: string, customKey?: string|undefined) {
super({
key: room.id
key: customKey ?? room.id
});
this.Terrains = [];
this.groups = new Map<number, Sprite>();
this.instance = room.getInstance();
this.MapUrlFile = MapUrlFile;
this.RoomId = room.id;
@ -517,7 +517,7 @@ export class GameScene extends ResizableScene implements CenterListener {
this.simplePeer.unregister();
const gameSceneKey = 'somekey' + Math.round(Math.random() * 10000);
const game: Phaser.Scene = new GameScene(this.room, this.MapUrlFile);
const game: Phaser.Scene = new GameScene(this.room, this.MapUrlFile, gameSceneKey);
this.scene.add(gameSceneKey, game, true,
{
initPosition: {
@ -579,8 +579,8 @@ export class GameScene extends ResizableScene implements CenterListener {
this.ConsoleGlobalMessageManager = new ConsoleGlobalMessageManager(this.connection, this.userInputManager, this.connection.isAdmin());
this.scene.wake();
this.scene.sleep(ReconnectingSceneName);
this.scene.wake();
this.scene.stop(ReconnectingSceneName);
//init user position and play trigger to check layers properties
this.gameMap.setPosition(this.CurrentPlayer.x, this.CurrentPlayer.y);
@ -1220,6 +1220,6 @@ export class GameScene extends ResizableScene implements CenterListener {
});
}))
}
}