diff options
| author | Maks Jopek <maksymilian.jopek@prym-soft.pl> | 2021-04-24 00:34:07 +0200 |
|---|---|---|
| committer | Maks Jopek <maksymilian.jopek@prym-soft.pl> | 2021-04-24 00:34:07 +0200 |
| commit | 13dcc2c8fc1d11e3b94432fffc4c4f186bd94d29 (patch) | |
| tree | 077a963bae31729dffa6c7c678af112680bb6d38 /backend/ts/startGame.ts | |
| parent | 457ee1d7caa899bbe86bf7a1390f940b5b3176b7 (diff) | |
| download | fia-13dcc2c8fc1d11e3b94432fffc4c4f186bd94d29.tar.gz fia-13dcc2c8fc1d11e3b94432fffc4c4f186bd94d29.tar.zst fia-13dcc2c8fc1d11e3b94432fffc4c4f186bd94d29.zip | |
Playing almost working
Diffstat (limited to 'backend/ts/startGame.ts')
| -rw-r--r-- | backend/ts/startGame.ts | 41 |
1 files changed, 8 insertions, 33 deletions
diff --git a/backend/ts/startGame.ts b/backend/ts/startGame.ts index 4188d29..eb19bc0 100644 --- a/backend/ts/startGame.ts +++ b/backend/ts/startGame.ts @@ -1,41 +1,16 @@ import { } from "../../helpers/helpers"; -import { makeQuery, Color, GameBoard, Chequer, Coordinates, Data } from "../../helpers/helpersBack"; -import { Request, Response } from "express"; +import { makeQuery, nextTurnEndsAt, Color, GameBoard, Chequer, Coordinates, Data, getData, HomesOrBases, Square, tColors } from "../../helpers/helpersBack"; -export default async function startGame(req: Request, res: Response) { - if (req.session === undefined) { - res.status(500); - res.send(""); - return; - } - - makeQuery("UPDATE `fia` SET `started` = 1 WHERE `id`= ?", [req.session.gid]); - let dbRes: {gameBoard: GameBoard, data: Data} - = (await makeQuery("SELECT `gameBoard`, `playersCount` FROM `fia` WHERE `id` = ?", [req.session.gid]))[0]; +export default async function startGame(gid: number) { + let dbRes: {gameBoard: GameBoard, data: Data} = + (await makeQuery("SELECT `gameBoard`, `data` FROM `fia` WHERE `id` = ?", [gid]))[0]; for (let player of dbRes.data) { - let chequer: Chequer = { color: player.color, x: 1, y: 1 }, - start: Coordinates; - - switch (player.color) { - case Color.red: start = { x: 1, y: 1 }; break; - case Color.blue: start = { x: 8, y: 1 }; break; - case Color.yellow: start = { x: 1, y: 8 }; break; - default /* Color.green */: start = { x: 8, y: 8 }; break; - // case Color.green: start = { x: 8, y: 8 }; break; + for(let square of dbRes.gameBoard.bases[player.color as keyof HomesOrBases]) { + square.chequer = player.color; } - - for (let i = 0; i < 2; i++) { - for (let j = 0; j < 2; j++) { - //@ts-ignore - 8 + 1 <= 11 which is max of Coordinates - [chequer.x, chequer.y] = [start.x + i, start.y + j]; - } - } - - dbRes.gameBoard.push(chequer); } - await makeQuery("UPDATE `fia` SET `gameBoard` = ? WHERE `id`= ?", [dbRes.gameBoard, req.session.gid]); - - res.send(""); + await makeQuery("UPDATE `fia` SET `gameBoard` = ?, `started` = 1, `timeTillTurnEnd` = ? WHERE `id`= ?", + [dbRes.gameBoard, nextTurnEndsAt(), gid]); }
\ No newline at end of file |
