diff --git a/events b/events index e9d5d8d..cdddb9a 160000 --- a/events +++ b/events @@ -1 +1 @@ -Subproject commit e9d5d8d909e4ba952f6bed53ead08642466431d1 +Subproject commit cdddb9a073ecc42938136427a4c378945b7742db diff --git a/src/games/entities/player.entity.ts b/src/games/entities/player.entity.ts index 7fac84d..939456f 100644 --- a/src/games/entities/player.entity.ts +++ b/src/games/entities/player.entity.ts @@ -23,5 +23,5 @@ export class Player { game: Game; @Column({ default: 0 }) - score: number; + score: number = 0; } diff --git a/src/games/services/lobby.service.ts b/src/games/services/lobby.service.ts index 20cceb5..36e83d3 100644 --- a/src/games/services/lobby.service.ts +++ b/src/games/services/lobby.service.ts @@ -28,10 +28,13 @@ export class LobbyService { const createdGame = this.gameRepository.create(); createdGame.owner = owner; createdGame.seed = randomUUID(); + await this.gameRepository.save(createdGame); - await this.joinGame(createdGame, owner); + const g = new GameResponseDTO(createdGame); this.eventEmitter.emit('sse.lobby', new LobbyCreateEvent(g)); + + await this.joinGame(createdGame, owner); return createdGame; } @@ -39,7 +42,6 @@ export class LobbyService { const player = this.playerRepository.create(); player.user = user; player.game = game; - this.eventEmitter.emit('sse.lobby', new LobbyJoinEvent(player, game)); this.eventEmitter.emit('sse.game.' + game.id, new GameJoinEvent(player)); await this.playerRepository.save(player); diff --git a/src/main.ts b/src/main.ts index b0e6f2e..1c608d8 100644 --- a/src/main.ts +++ b/src/main.ts @@ -1,4 +1,4 @@ -import { NestFactory, Reflector } from '@nestjs/core'; +import { NestFactory } from '@nestjs/core'; import * as session from 'express-session'; import { AppModule } from './app.module'; import { SwaggerModule, DocumentBuilder } from '@nestjs/swagger'; diff --git a/types.d.ts/express-session.d.ts b/types.d.ts/express-session.d.ts index 0947bee..d98b218 100644 --- a/types.d.ts/express-session.d.ts +++ b/types.d.ts/express-session.d.ts @@ -1,7 +1,7 @@ import { User } from '../users/entities/user.entity'; declare module 'express-session' { interface SessionData { - user: User; + user?: User; tokenData: { access_token: string; token_type: string;