From 201381342cf28d5736de3a915ffaf31f422486f5 Mon Sep 17 00:00:00 2001 From: legonzaur Date: Tue, 31 Dec 2024 12:37:57 +0100 Subject: [PATCH] fet : add game delete --- netcode/handlers/game.handler.ts | 4 ++++ pages/game/[id].vue | 34 +++++++++++++++++++++----------- store/game.store.ts | 10 ++++++++++ 3 files changed, 36 insertions(+), 12 deletions(-) diff --git a/netcode/handlers/game.handler.ts b/netcode/handlers/game.handler.ts index 29fa804..93c3a58 100644 --- a/netcode/handlers/game.handler.ts +++ b/netcode/handlers/game.handler.ts @@ -17,9 +17,13 @@ export const handlers = { }, start: (event: GameStartEvent) => { const gameStore = useGameStore(); + const userStore = useUserStore(); gameStore.game.started = true; gameStore.game.currentPlayer = event.currentPlayer; gameStore.currentWord = null; + if (userStore.self && userStore.self.id == event.currentPlayer.userId) { + void gameStore.getCurrentWord(gameStore.game.id); + } }, delete: (event: GameDeleteEvent) => { const gameStore = useGameStore(); diff --git a/pages/game/[id].vue b/pages/game/[id].vue index e7c07cc..eab0f85 100644 --- a/pages/game/[id].vue +++ b/pages/game/[id].vue @@ -30,6 +30,10 @@ function joinGame() { gameStore.joinGame(gameId); } +function deleteGame() { + gameStore.deleteGame(gameId); +} + const isCurrentTurn = computed( () => userStore.self && userStore.self?.id == game.value?.currentPlayer?.userId @@ -95,18 +99,24 @@ const selfPlayer = computed(() => {{ game }} - - + +
Messages diff --git a/store/game.store.ts b/store/game.store.ts index 5b31f05..b576720 100644 --- a/store/game.store.ts +++ b/store/game.store.ts @@ -58,6 +58,16 @@ export const useGameStore = defineStore("game", { } ); }, + async deleteGame(id: number) { + const config = useRuntimeConfig(); + const data = await $fetch( + config.public.endpoint + `/games/` + id, + { + method: "DELETE", + credentials: "include", + } + ); + }, async getCurrentWord(id: number) { const config = useRuntimeConfig(); const data = await $fetch(