diff --git a/src/replay/replay.service.ts b/src/replay/replay.service.ts index 04ace741bd2ed4dc1ee96a6a2359d745a219896c..c7794370edcedbe60604d429341f3282c79fb034 100644 --- a/src/replay/replay.service.ts +++ b/src/replay/replay.service.ts @@ -56,6 +56,14 @@ export class ReplayService { } */ async replayData(gameId) { + // + // this block returns game's initial location + // + let gameObj = await this.gameRepository.findOne({ + where: { id: gameId }, + select: ['center'], + }); + let gamelocation = [gameObj.center.lat, gameObj.center.lng]; // // this block returns all player data from the game // @@ -111,11 +119,28 @@ export class ReplayService { ); }), ); + // + // this block returns all map drawings from the game + // + let refs = await this.mapdrawingRepository.find({ + where: { gameId: gameId }, + select: ['mapDrawingId'], + }); + + let drawData = await Promise.all( + refs.map(async ref => { + return await this.mapHistoryRepository.find({ + where: { mapdrawing: ref.mapDrawingId }, + }); + }), + ); return { + location: gamelocation, players: currentdata, factions: currentFactions, scores: currentScore, + drawings: drawData, }; } // generate mockdata for a 3 day game