bug fix et opti !!!!

This commit is contained in:
thaaoblues 2024-12-17 21:16:55 +01:00
parent 51368fe0a8
commit d4e5705411

View file

@ -79,8 +79,7 @@ async function remplirMagasinTechnologies(){
// finalement, on lui débit son compte de points tel un vendeur de voitures // finalement, on lui débit son compte de points tel un vendeur de voitures
score -= t.cout score -= t.cout
const score_aff = document.getElementById("score_affichage") majAffichageScore()
score_aff.innerText="SCORE : " + score
// augmentation du boost d'incrément // augmentation du boost d'incrément
ouvrirAlerte("Incrémentation de la rentabilité de tes clicks de "+t.boost+" points !!") ouvrirAlerte("Incrémentation de la rentabilité de tes clicks de "+t.boost+" points !!")
@ -139,15 +138,11 @@ async function remplirMagasinCollegues(){
let collegues = data["collegues"] let collegues = data["collegues"]
for(const key in collegues){ for(const key in collegues){
// ne va pas s'embeter à proecess si on a deja acheté l'amelioration // ne va pas s'embeter à proecess si déjà présent dans le magasin
if(!sacado[key] && !magasin_coll[key]){ // ou si le score d'évolution n'est pas assez élevé
el = collegues[key] const el = collegues[key]
if(!magasin_coll[key] && evolution_coll === parseInt(el.evolution)){
// calcul du cout en fonction du nombre de collegue de ce type déjà acheté
if(key in sacado){
el.cout = Number(el.cout * (1.1)**sacado[key]).toFixed(1)
}
const tr = document.createElement("tr") const tr = document.createElement("tr")
@ -176,10 +171,16 @@ async function remplirMagasinCollegues(){
/* fonction qui va s'activer lorsqu'on achète l'objet*/ /* fonction qui va s'activer lorsqu'on achète l'objet*/
btn_acheter.addEventListener("click", (event) =>{ btn_acheter.addEventListener("click", (event) =>{
// calcul du cout en fonction du nombre de collegue de ce type déjà acheté
let exp = 0
if(key in sacado){
exp = sacado[key]
}
const cout_reel = Number(el.cout * (1.1)**exp).toFixed(1)
// ne laisse acheter que si on a l'argent // ne laisse acheter que si on a l'argent
if(score >= c.cout){ if(score >= cout_reel){
if(!(key in sacado)){ if(!(key in sacado)){
@ -203,7 +204,7 @@ async function remplirMagasinCollegues(){
ouvrirAlerte("Vous avez débloqué "+ c.nom+" !!"+collegues[key]["narration"]) ouvrirAlerte("Vous avez débloqué "+ c.nom+" !!"+collegues[key]["narration"])
ouvrirAlerte("Incrémentation de la rentabilité passive de "+c.revenu_passif+" points !!") ouvrirAlerte("Incrémentation de la rentabilité passive de "+c.revenu_passif+" points !!")
}, (6000)); }, (4000));
// on ajoute l'amélioration dans l'abre des compétences débloquées // on ajoute l'amélioration dans l'abre des compétences débloquées
sacado[key] = 1 sacado[key] = 1
@ -220,9 +221,11 @@ async function remplirMagasinCollegues(){
revenu_passif += c.revenu_passif revenu_passif += c.revenu_passif
// finalement, on lui débit son compte de points tel un vendeur de voitures // finalement, on lui débit son compte de points tel un vendeur de voitures
score -= c.cout console.log(cout_reel)
const score_aff = document.getElementById("score_affichage") console.log(score)
score_aff.innerText="SCORE : " + score console.log(score-cout_reel)
score = score - cout_reel
majAffichageScore()
// on change le futur cout dans le tableau // on change le futur cout dans le tableau
document.getElementById("case_cout_"+key).innerText = Number(c.cout * (1.1)**sacado[key]).toFixed(1) document.getElementById("case_cout_"+key).innerText = Number(c.cout * (1.1)**sacado[key]).toFixed(1)
@ -238,23 +241,21 @@ async function remplirMagasinCollegues(){
btn_acheter.innerText = "Acheter" btn_acheter.innerText = "Acheter"
// n'afficher l'amélioration que si le score est assez élevé // met à jour le contenu du magasin
if(evolution_coll === parseInt(c.props.evolution)){ // pour ne pas re-afficher cette ligne et éviter un clignotement
// met à jour le contenu du magasin magasin_coll[key] = true
// pour ne pas re-afficher cette ligne et éviter un clignotement
magasin_coll[key] = true
action.appendChild(btn_acheter) action.appendChild(btn_acheter)
tr.appendChild(case_nom) tr.appendChild(case_nom)
tr.appendChild(case_boost) tr.appendChild(case_boost)
tr.appendChild(case_cout) tr.appendChild(case_cout)
tr.appendChild(case_wiki) tr.appendChild(case_wiki)
tr.appendChild(action) tr.appendChild(action)
table.appendChild(tr) table.appendChild(tr)
}
} }
@ -262,13 +263,17 @@ async function remplirMagasinCollegues(){
} }
function majAffichageScore(){
const score_aff = document.getElementById("score_affichage")
score = Number((score).toFixed(1))
score_aff.textContent ="SCORE : " + rendreNombreLisible(score)
}
// fonction appelée à chaque clic de souris // fonction appelée à chaque clic de souris
function scoreCount(){ function scoreCount(){
const score_aff = document.getElementById("score_affichage")
score += boost score += boost
score_aff.innerText="SCORE : " + Number(score).toFixed(1) majAffichageScore()
// check refresh la table magasin pour afficher une amélioration si un palier est atteint // check refresh la table magasin pour afficher une amélioration si un palier est atteint
remplirMagasinTechnologies() remplirMagasinTechnologies()
remplirMagasinCollegues() remplirMagasinCollegues()
@ -277,21 +282,16 @@ function scoreCount(){
// revenu passif à chaque seconde // revenu passif à chaque seconde
function augmenterScorePassivement(){ function augmenterScorePassivement(){
const score_aff = document.getElementById("score_affichage")
score += revenu_passif score += revenu_passif
console.log("nv score : ",score) majAffichageScore()
score_aff.innerText="SCORE : " + Number((score).toFixed(1));
setTimeout(() => { setTimeout(() => {
augmenterScorePassivement() augmenterScorePassivement()
}, 1000) }, 1000)
} }
function leBoostDuProf(){ function leBoostDuProf(){
const score_aff = document.getElementById("score_affichage")
score += 10000000000000000 score += 10000000000000000
console.log("nv score : ",score) majAffichageScore()
score_aff.innerText="SCORE : " + Number((score).toFixed(1));
} }
@ -334,4 +334,59 @@ function genererConfetti() {
container.innerHTML = "" container.innerHTML = ""
}, 10000); }, 10000);
}
function rendreNombreLisible(n){
let ret = n
if(n>=1000){
const quantifiers = [
"Millier", // 10^3
"Million", // 10^6
"Milliard", // 10^9
"Billion", // 10^12
"Billiard", // 10^15
"Trillion", // 10^18
"Trilliard", // 10^21
"Quadrillion", // 10^24
"Quadrilliard", // 10^27
"Quintillion", // 10^30
"Quintilliard", // 10^33
"Sextillion", // 10^36
"Sextilliard", // 10^39
"Septillion", // 10^42
"Septilliard", // 10^45
"Octillion", // 10^48
"Octilliard", // 10^51
"Nonillion", // 10^54
"Nonilliard", // 10^57
"Décillion", // 10^60
"Décilliard", // 10^63
"Undécillion", // 10^66
];
// on enlève la virgule et la partie decimal pour ne pas
// fausser la longueur du string
const rpz_string = Number(n).toFixed(0)+""
// les qualificatifs étant par puissance de mille,
// compte la puissance de 10 mais divisée par 3
const puiss_mil = Math.floor((rpz_string.length-1)/3)
// ici, on ne garde que jusqu'à la centaine de l'unité choisie
// et on le met dans la variable de retour
ret = Math.floor( n/(10**(3*puiss_mil)) )
// enfin, on rajoute le quantificateur, avec un 's' si on est pas à l'unité
let q = " "+ quantifiers[puiss_mil -1]
if(ret != 1){
q +='s'
}
ret += q
}
return ret
} }