feat : Score management 🔥
continuous-integration/drone/push Build is passing Details

pull/35/head
Jade VAN BRABANDT 2 years ago
parent 6ac8e515ac
commit eba391d3d8

@ -88,6 +88,8 @@ class ControllerUser
function verifySingleplayer() function verifySingleplayer()
{ {
$_SESSION["Score"]=0;
$_SESSION["PrevTime"]= new DateTime('now');
$difficulty = $_POST['difficulty']; $difficulty = $_POST['difficulty'];
$chapter = $_POST['chapter']; $chapter = $_POST['chapter'];
$difficultyIsOk = TRUE; $difficultyIsOk = TRUE;
@ -121,25 +123,29 @@ class ControllerUser
function verifQuestion() function verifQuestion()
//Only Handdle solo game //Only Handdle solo game
{ {
$_SESSION["CurrTime"]= new DateTime('now');
$answerNumber = $_POST["answer"]; $answerNumber = $_POST["answer"];
$numQuestion = $_POST["numQuestion"] + 1; $numQuestion = $_POST["numQuestion"] + 1;
if ($answerNumber != 1 or $answerNumber != 2 or $answerNumber != 3 or $answerNumber != 4) { if (!($answerNumber == 0 or $answerNumber == 1 or $answerNumber == 2 or $answerNumber == 3)) {
$_SESSION["error"] = "Valeur de choix de réponse invalide"; $_SESSION["error"] = "Valeur de choix de réponse invalide";
echo $this->twig->render($this->vues["singleplayer"], [ echo $this->twig->render($this->vues["singleplayer"], [
'questions' => $_SESSION["Questions"], 'questions' => $_SESSION["Questions"],
'numQuestion' => $numQuestion, 'numQuestion' => $numQuestion-1,
]); ]);
} else { } else {
if ($numQuestion > 9) { if ($numQuestion > 9) {
echo $this->twig->render($this->vues["home"]); var_dump($_SESSION["Score"]);
//EN GROS IL FAUT AFFICHER LE SCORE (C'est copilot qui a fait ça, la fin du commentaire j'veux dire) /// echo $this->twig->render($this->vues["ViewScore"], [
//Si faut paser un param score de page en page dittes le moi je le ferais dw /// 'score' => $_SESSION["Score"],
/// ];
} else { } else {
var_dump($_SESSION["Questions"][$numQuestion - 1]['idanswergood']);
var_dump($_SESSION["Questions"][$numQuestion - 1]['answers'][$answerNumber]['id']);
if ($_SESSION["Questions"][$numQuestion - 1]['idanswergood'] == $_SESSION["Questions"][$numQuestion - 1]['answers'][$answerNumber]['id']) { if ($_SESSION["Questions"][$numQuestion - 1]['idanswergood'] == $_SESSION["Questions"][$numQuestion - 1]['answers'][$answerNumber]['id']) {
// Player won $time = $_SESSION["PrevTime"]->diff($_SESSION["CurrTime"]);
} else { $_SESSION["Score"]= $_SESSION["Score"] + 80 + 40*((30-$time->s)/100*10/3);
//Player lost
} }
$_SESSION["PrevTime"] = $_SESSION["CurrTime"];
echo $this->twig->render($this->vues["singleplayer"], [ echo $this->twig->render($this->vues["singleplayer"], [
'questions' => $_SESSION["Questions"], 'questions' => $_SESSION["Questions"],
'numQuestion' => $numQuestion, 'numQuestion' => $numQuestion,
@ -155,6 +161,7 @@ class ControllerUser
//EN GROS IL FAUT AFFICHER LE SCORE (C'est copilot qui a fait ça, la fin du commentaire j'veux dire) //EN GROS IL FAUT AFFICHER LE SCORE (C'est copilot qui a fait ça, la fin du commentaire j'veux dire)
//Si faut paser un param score de page en page dittes le moi je le ferais dw //Si faut paser un param score de page en page dittes le moi je le ferais dw
} else { } else {
$_SESSION["PrevTime"] = $_SESSION["CurrTime"];
echo $this->twig->render($this->vues["singleplayer"], [ echo $this->twig->render($this->vues["singleplayer"], [
'questions' => $_SESSION["Questions"], 'questions' => $_SESSION["Questions"],
'numQuestion' => $numQuestion, 'numQuestion' => $numQuestion,

@ -3,3 +3,4 @@ function passerAction() {
document.getElementById("FormQuestion").action = "/passer"; document.getElementById("FormQuestion").action = "/passer";
document.getElementById("FormQuestion").submit(); document.getElementById("FormQuestion").submit();
} }
export {passerAction};

@ -1,3 +1,4 @@
import { passerAction } from "./passer.js";
let tempsExport = 0; let tempsExport = 0;
const dureeQuiz = 30; // Durée du quiz en secondes const dureeQuiz = 30; // Durée du quiz en secondes
const aiguilleElement = document.getElementById("aiguille"); const aiguilleElement = document.getElementById("aiguille");
@ -25,6 +26,8 @@ const dureeQuiz = 30; // Durée du quiz en secondes
if (tempsEcoule < animationDuration) { if (tempsEcoule < animationDuration) {
requestAnimationFrame(mettreAJourAiguille); requestAnimationFrame(mettreAJourAiguille);
} else {
passerAction();
} }
} }
requestAnimationFrame(mettreAJourAiguille); requestAnimationFrame(mettreAJourAiguille);

Loading…
Cancel
Save