Files
echoes/client/js/main.js

55 lines
1.1 KiB
JavaScript

/*
main.js
point d'entree pour les scripts
*/
import { socket } from "./socket.js";
import { player } from "./player.js";
import { roleState } from "./role.js";
import { render, drawBlind } from "./canvas.js";
import { setupMovement } from "./movement.js";
import { showGameOver, showVictory, updateTimerDisplay } from "./ui.js";
import { speakInstruction} from "guideVoice.js";
setupMovement();
socket.on("status", (msg) => console.log("Status: ", (msg));
roleState.current = role;
if (role === "explorateur") {
render();
} else {
drawBlind();
}
});
socket.on("new_round", (startPos) => {
player.x = startPos.x;
player.y = startPos.y;
});
socket.on("door_result", (result) => {
if (!result.correct){
roleState.current = null;
showGameOver("Mauvaise porte. Vous avez perdu.");
}
});
socket.on("timeout", () => {
roleState.current = null;
showGameOver("Temps ecoule. Vous avez perdu.");
});
socket.on("victory", () => {
roleState.current = null;
showVictory();
});
socket.on("timer", (timeLeft) => {
updateTimerDisplay(timeLeft);
});
socket.on("instruction", (data) => {
speakInstruction(data.texte);
})