Erneutes Spielen sicherer Gemacht

This commit is contained in:
2025-05-06 17:04:54 +02:00
parent 9b56ad321a
commit 6607cd500e
4 changed files with 77 additions and 30 deletions

View File

@@ -186,16 +186,16 @@ class Snake{
const exsitingtile = this.playground.getTile(tile.x, tile.y);
// TODO: Klammert man das ein Kann man alleine Spielen, da es keine Kolisionserkennung gibt
// if(exsitingtile === undefined){
// // End Game weil außerhalb des Spielfeldes
// await this.game.endGame(`${this.player.username} hat die Wand berührt!`);
// return;
// }
// if(exsitingtile?.class === "Snake"){
// // Eng Game weil schon belegt mit anderer oder eigender Schlange
// await this.game.endGame(`Es gab eine Kollision!`);
// return;
// }
if(exsitingtile === undefined){
// End Game weil außerhalb des Spielfeldes
await this.game.endGame(`${this.player.username} hat die Wand berührt!`);
return;
}
if(exsitingtile?.class === "Snake"){
// Eng Game weil schon belegt mit anderer oder eigender Schlange
await this.game.endGame(`Es gab eine Kollision!`);
return;
}
this.playground.setTile(tile.x, tile.y, tile);
}

View File

@@ -78,6 +78,9 @@ class Game{
Nur wenn noch beide Spieler da sind
*/
let replayPossible = false;
const replayTime = 5000;
if(this.players.length === 2){
const lobbyManager = this.gameManager.lobbyManager;
@@ -92,16 +95,22 @@ class Game{
0,
newUserList,
lobbyManager,
10000
replayTime
);
lobbyManager.oldLobbys.push(tempLobby);
replayPossible = true;
}
this.io.to(`game-${this.code}`).emit("gameEnd", {
msg: msg,
score: this.score,
rang: scoreDb?.rank || "-"
rang: scoreDb?.rank || "-",
replay: {
possible: replayPossible,
time: replayTime
}
});
}