fix: Hex Wars - getGameForUser crash bei alten Spielen und finished-Branch
This commit is contained in:
@@ -173,7 +173,13 @@ function getGameForUser(id, requesterId) {
|
|||||||
const myScore = requesterId === game.owner_id ? ownerScore : oppScore;
|
const myScore = requesterId === game.owner_id ? ownerScore : oppScore;
|
||||||
const oppSc = requesterId === game.owner_id ? oppScore : ownerScore;
|
const oppSc = requesterId === game.owner_id ? oppScore : ownerScore;
|
||||||
|
|
||||||
if (!terrain.length) return { ...game, myScore:0, oppScore:0 };
|
const myHead = requesterId === game.owner_id ? game.owner_head : game.opp_head;
|
||||||
|
const oppHead = requesterId === game.owner_id ? game.opp_head : game.owner_head;
|
||||||
|
|
||||||
|
// Altes Spiel ohne Terrain: direkt zurückgeben, kein Fog
|
||||||
|
if (!terrain.length) {
|
||||||
|
return { ...game, myScore:0, oppScore:0, myHead, oppHead };
|
||||||
|
}
|
||||||
|
|
||||||
// Bei beendetem Spiel: vollständiges Grid ohne Fog
|
// Bei beendetem Spiel: vollständiges Grid ohne Fog
|
||||||
let maskedGrid, maskedTerrain;
|
let maskedGrid, maskedTerrain;
|
||||||
@@ -186,15 +192,10 @@ function getGameForUser(id, requesterId) {
|
|||||||
maskedTerrain = terrain.map((row,r) => row.map((cell,c) => visible[r][c] ? cell : -1));
|
maskedTerrain = terrain.map((row,r) => row.map((cell,c) => visible[r][c] ? cell : -1));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Kopf des anfragenden Spielers mitliefern (für Frontend-Validierung)
|
|
||||||
const myHead = requesterId === game.owner_id ? game.owner_head : game.opp_head;
|
|
||||||
const oppHead = requesterId === game.owner_id ? game.opp_head : game.owner_head;
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
...game,
|
...game,
|
||||||
grid: JSON.stringify(maskedGrid),
|
grid: JSON.stringify(maskedGrid),
|
||||||
terrain: JSON.stringify(maskedTerrain),
|
terrain: JSON.stringify(maskedTerrain),
|
||||||
fog: JSON.stringify(visible),
|
|
||||||
myScore,
|
myScore,
|
||||||
oppScore: oppSc,
|
oppScore: oppSc,
|
||||||
myHead,
|
myHead,
|
||||||
|
|||||||
Reference in New Issue
Block a user