Fix Recursion changePlayer()

This commit is contained in:
2026-03-01 22:13:14 +01:00
parent 4b02b6d312
commit 0cf310ea59
+16 -13
View File
@@ -313,32 +313,35 @@ foreach ($players as $p) {
function changePlayer() { function changePlayer() {
console.log("Demande de changement de joueur..."); console.log("Demande de changement de joueur...");
getActualPlayerMoney();
getCurrentPlayer();
let currentPlayerMoney = money[currentPlayerId] || 0;
let formData = new FormData(); let formData = new FormData();
formData.append('game_id', actualGameID); formData.append('game_id', actualGameID);
formData.append('action', 'next_player'); // On envoie une action spécifique formData.append('action', 'next_player');
fetch('change_player.php', { fetch('change_player.php', {
method: 'POST', method: 'POST',
body: formData body: formData
}) })
.then(r => r.json()) .then(r => {
// On vérifie si la réponse est bien du JSON
if (!r.ok) throw new Error("Erreur réseau");
return r.json();
})
.then(data => { .then(data => {
if (data.success) { if (data.success) {
console.log("Joueur changé avec succès !"); console.log("Joueur changé avec succès !");
location.reload(); // On recharge pour voir le halo se déplacer // On attend un tout petit peu avant de recharger pour laisser la BDD respirer
setTimeout(() => {
location.reload();
}, 100);
} else { } else {
alert("Erreur : " + data.message); alert("Erreur serveur : " + data.message);
} }
}) })
.catch(err => console.error("Erreur fetch:", err)); .catch(err => {
if (currentPlayerMoney <= 0) { console.error("Erreur complète :", err);
alert("Ce joueur est tapis ou couché, joueur suivant"); // Si le joueur n'a plus d'argent, on l'empêche de changer de joueur alert("Erreur lors du changement de joueur. Vérifie la console (F12).");
changePlayer(); // Appel récursif pour sauter au joueur suivant });
return;
}
} }
function deleteGame(idPartie) { function deleteGame(idPartie) {