diff --git a/lib/rooms/server/random-player-state.js b/lib/rooms/server/random-player-state.js index ac8bb337..833ba10c 100644 --- a/lib/rooms/server/random-player-state.js +++ b/lib/rooms/server/random-player-state.js @@ -16,6 +16,7 @@ class RandomPlayerState this.tileHeight = room.roomWorld.mapJson.tileheight; this.grid = room.roomWorld.pathFinder.grid; this.always = room.joinInRandomPlaceAlways; + this.initialPositionThreshold = 50; this.roomInitialPoint = { x: room.roomData.returnPointDefault[RoomsConst.RETURN_POINT_KEYS.X], y: room.roomData.returnPointDefault[RoomsConst.RETURN_POINT_KEYS.Y] @@ -51,7 +52,14 @@ class RandomPlayerState playerPositionIsRoomStartingPoint(currentPlayer) { - return currentPlayer.state.x === this.roomInitialPoint.x && currentPlayer.state.y === this.roomInitialPoint.y; + let roomMaxX = this.roomInitialPoint.x + this.initialPositionThreshold; + let roomMinX = this.roomInitialPoint.x - this.initialPositionThreshold; + let roomMaxY = this.roomInitialPoint.y + this.initialPositionThreshold; + let roomMinY = this.roomInitialPoint.y - this.initialPositionThreshold; + return currentPlayer.state.x < roomMaxX + && currentPlayer.state.y < roomMaxY + && currentPlayer.state.x > roomMinX + && currentPlayer.state.y > roomMinY; } }