ptites amélioration au niveau des alertes et des incrémentation de score

This commit is contained in:
Theo Mougnibas 2024-12-10 14:59:58 +01:00
parent 0b82736fc4
commit 2177d03435
4 changed files with 62 additions and 15 deletions

View file

@ -64,3 +64,8 @@ th {
table tr:hover {
background-color: #f1f1f1;
}
video{
visibility: visible;
}

View file

@ -1,8 +1,29 @@
// prévention de l'empilement d'alertes, qui entrainerait la suppression de tous les messages sauf le dernier
// Pour cela, on utilise une file et une fonction asynchrone qui boucle et vide la file alerte par alerte
let file_alertes = []
function ouvrirAlerte(message){
file_alertes.push(message)
// si c'est la seule alerte en attente, on l'affiche
if(file_alertes.length == 1 ) {
afficherAlerte(file_alertes[0])
}
// sinon, elle sera automatiquement affichée lors de la fermeture de l'alerte juste avant dans la file
}
// Fonction pour afficher une alerte mais plus jolie que celle par défaut
function ouvrirAlerte(message) {
function afficherAlerte(message) {
// on signale une alerte en train d'être visionnée
flag = true
// on prend les elements
var modal = document.getElementById('alerte_jolie');
var messageElement = document.getElementById('message_alerte_jolie');
let modal = document.getElementById('alerte_jolie');
var messageElement = Ldocument.getElementById('message_alerte_jolie');
// Mettre le message
messageElement.textContent = message;
@ -19,4 +40,13 @@ function fermerAlerte() {
// et on cache en changeant la propriété css
modal.style.display = "none";
}
// enlève notre élément de la file
file_alertes.shift()
// affiche récursivement les autres alertes en attentes
if(file_alertes.length > 0){
afficherAlerte(file_alertes[0])
}
}

View file

@ -30,7 +30,7 @@ function firstClick(){
function scoreCount(){
const score_aff = document.getElementById("score_affichage")
score += 1
score += boost
score_aff.innerText="SCORE : " + score
// check refresh la table magasin pour afficher une amélioration si un palier est atteint

View file

@ -8,6 +8,9 @@ let sacado = {}
// premet de ne pas laisser le joueur acheter html 5 si il n'a pas débloqué html 1.0 etc..
let evolution = 0
// variable qui permet d'augmenter la taille de l'incrément du score pour chaque clic, en fonction de la technlologie déloquée
let boost = 1
async function remplirMagasin(){
@ -26,12 +29,12 @@ async function remplirMagasin(){
const tr = document.createElement("tr")
const nom = document.createElement("td")
nom.innerText = el.nom
const boost = document.createElement("td")
boost.innerText = el.boost
const cout = document.createElement("td")
cout.innerText = el.cout
const case_nom = document.createElement("td")
case_nom.innerText = el.nom
const case_boost = document.createElement("td")
case_boost.innerText = el.boost
const case_cout = document.createElement("td")
case_cout.innerText = el.cout
const test = document.createElement("td")
const btn_acheter = document.createElement("button")
@ -69,7 +72,16 @@ async function remplirMagasin(){
score -= t.cout
const score_aff = document.getElementById("score_affichage")
score_aff.innerText="SCORE : " + score
// augmentation du boost d'incrément
ouvrirAlerte("Incrémentation de la rentabilité de tes clicks de "+t.boost+" points !!")
if(t.props.evolution == 0){
boost += t.boost -1 // car sinon, le premier boost ne va pas entrainer un nombre rond de points par click :)
}else{
boost += t.boost
}
// incrémente le score implicite d'evolution pour permettre à la prochaine amelioration de s'afficher
evolution += 1
@ -93,9 +105,9 @@ async function remplirMagasin(){
test.appendChild(btn_acheter)
tr.appendChild(nom)
tr.appendChild(boost)
tr.appendChild(cout)
tr.appendChild(case_nom)
tr.appendChild(case_boost)
tr.appendChild(case_cout)
tr.appendChild(test)
table.appendChild(tr)