Add real time and time with penalty

This commit is contained in:
2024-05-09 19:20:13 +04:00
parent dbd1cb24f8
commit 6b2e9c1dc2
+19 -5
View File
@@ -87,6 +87,9 @@ let gameTime = 0
let gameMinute = 0 let gameMinute = 0
let gameSecond = 0 let gameSecond = 0
let gamePenalty = 0 let gamePenalty = 0
let gameTimeWithPenalty = 0
let gameMinuteWithPenalty = 0
let gameSecondWithPenalty = 0
let intervalId let intervalId
/** /**
@@ -115,6 +118,7 @@ function resetGame() {
intervalId = null intervalId = null
gameTime = 0 gameTime = 0
gamePenalty = 0 gamePenalty = 0
gameTimeWithPenalty = 0
} }
/** /**
@@ -176,13 +180,17 @@ function communeObserver(){
if (!intervalId) { if (!intervalId) {
intervalId = setInterval(() => { intervalId = setInterval(() => {
gameTime++ gameTime++
gameTimeWithPenalty = gameTime + gamePenalty
if (gameTime >= 60) { if (gameTimeWithPenalty >= 60) {
gameMinuteWithPenalty = String(gameTimeWithPenalty / 60).split('.')[0]
gameMinute = String(gameTime / 60).split('.')[0] gameMinute = String(gameTime / 60).split('.')[0]
gameSecondWithPenalty = gameTimeWithPenalty % 60
gameSecond = gameTime % 60 gameSecond = gameTime % 60
timeElement.innerText = `${gameMinute} minute${gameMinute > 1 ? 's' : ''} ${gameSecond} seconde${gameSecond > 1 ? 's' : ''}` timeElement.innerText = `${gameMinuteWithPenalty} minute${gameMinuteWithPenalty > 1 ? 's' : ''} ${gameSecondWithPenalty} seconde${gameSecondWithPenalty > 1 ? 's' : ''}`
} else { } else {
timeElement.innerText = `${gameTime} seconde${gameTime > 1 ? 's' : ''}` timeElement.innerText = `${gameTimeWithPenalty} seconde${gameTimeWithPenalty > 1 ? 's' : ''}`
} }
}, 1000) }, 1000)
} }
@@ -261,7 +269,6 @@ function updateScore(isCorrect) {
ok.innerText = Number.parseInt(ok.innerText, 10) + 1 ok.innerText = Number.parseInt(ok.innerText, 10) + 1
} else { } else {
ko.innerText = Number.parseInt(ko.innerText, 10) + 1 ko.innerText = Number.parseInt(ko.innerText, 10) + 1
gameTime += 5
gamePenalty += 5 gamePenalty += 5
penaltyElement.style.opacity = 1 penaltyElement.style.opacity = 1
@@ -497,16 +504,23 @@ function loadMap() {
const percentageCorrectAnswers = (Number.parseInt(ok.innerText, 10) / totalAnswers) * 100 const percentageCorrectAnswers = (Number.parseInt(ok.innerText, 10) / totalAnswers) * 100
let elapsedTime = `${gameTime} seconde${gameTime > 1 ? 's' : ''}` let elapsedTime = `${gameTime} seconde${gameTime > 1 ? 's' : ''}`
let elapsedTimeWithPenalty = `${gameTimeWithPenalty} seconde${gameTimeWithPenalty > 1 ? 's' : ''}`
if (gameTime >= 60) { if (gameTime >= 60) {
elapsedTime = `${gameMinute} minute${gameMinute > 1 ? 's' : ''} ${gameSecond} seconde${gameSecond > 1 ? 's' : ''}` elapsedTime = `${gameMinute} minute${gameMinute > 1 ? 's' : ''} ${gameSecond} seconde${gameSecond > 1 ? 's' : ''}`
} }
if (gameTimeWithPenalty >= 60) {
elapsedTimeWithPenalty = `${gameMinuteWithPenalty} minute${gameMinuteWithPenalty > 1 ? 's' : ''} ${gameSecondWithPenalty} seconde${gameSecondWithPenalty > 1 ? 's' : ''}`
}
alert(`${Math.round(percentageCorrectAnswers)}% de bonnes réponses ! alert(`${Math.round(percentageCorrectAnswers)}% de bonnes réponses !
\nTemps écoulé : ${elapsedTime} ! ${gamePenalty ? ` \nTemps écoulé : ${elapsedTime} ! ${gamePenalty ? `
\nPénalité : ${gamePenalty} secondes` : ''}`) \nPénalité : ${gamePenalty} secondes` : '\nAucune pénalité !'}
\nTemps total : ${elapsedTimeWithPenalty}`)
clearInterval(intervalId) clearInterval(intervalId)
gameTime = 0 gameTime = 0
gameTimeWithPenalty = 0
setTimeout(() => { setTimeout(() => {
location.reload() location.reload()