add: victoire par sortie de 3 bonnes portes

This commit is contained in:
2026-08-01 02:25:11 +02:00
parent fedd606f15
commit 32b042b72c
2 changed files with 20 additions and 1 deletions

View File

@@ -129,10 +129,19 @@
showGameOver("Mauvaise porte. Vous avez perdu."); showGameOver("Mauvaise porte. Vous avez perdu.");
} }
}) })
socket.on("victory", ()=> {
document.getElementById("victoryScreen").style.display = "block";
myRole = null;
});
</script> </script>
<div id="gameOverScreen" style="display: none;"> <div id="gameOverScreen" style="display: none;">
<h2>Partie terminee</h2> <h2>Partie terminee</h2>
<p id="gameOverMessage"></p> <p id="gameOverMessage"></p>
</div> </div>
<div id="victoryScreen" style="display: none;">
<h2>Victoire !</h2>
<p>Vous avez franchi les portes a temps.</p>
</div>
</body> </body>
</html> </html>

View File

@@ -15,6 +15,7 @@ let waitingPlayer = null;
app.use(express.static(path.join(__dirname, "..", "client"))); app.use(express.static(path.join(__dirname, "..", "client")));
const correctDoor = { x : 2, y : 6}; const correctDoor = { x : 2, y : 6};
const DOORS_TO_WIN = 3;
io.on("connection", (socket) => { io.on("connection", (socket) => {
console.log("Un client s'est connecte : ${socket.id}"); console.log("Un client s'est connecte : ${socket.id}");
@@ -39,7 +40,7 @@ io.on("connection", (socket) => {
socket.data.role = socketRole; socket.data.role = socketRole;
partner.data.role = partnerRole; partner.data.role = partnerRole;
const pairState = { gameOver: false}; const pairState = { gameOver: false, doorsPassed: 0};
socket.data.pairState = pairState; socket.data.pairState = pairState;
partner.data.pairState = pairState; partner.data.pairState = pairState;
@@ -70,6 +71,15 @@ io.on("connection", (socket) => {
return; return;
} }
pairState.doorsPassed++;
if (pairState.doorsPassed >= DOORS_TO_WIN){
pairState.gameOver = true;
socket.emit("victory");
if (partnerSocket) partnerSocket.emit("victory");
return;
}
const temp = socket.data.role; const temp = socket.data.role;
socket.data.role = partnerSocket.data.role; socket.data.role = partnerSocket.data.role;
partnerSocket.data.role = temp; partnerSocket.data.role = temp;