implémentation des modes de difficulté

upgrade-menu
adplantade 5 years ago
parent 0b106bc457
commit 881f21e40a

@ -38,4 +38,5 @@ else if(get['mode']=="surv")
document.getElementById("chronotime").style.display="none";
}
diff=get["diff"];
difficulty=get["diff"];
console.log("difficulté = "+difficulty+" mode:"+get['mode']);

@ -231,9 +231,12 @@ var canvasT = document.getElementById('canvasTotal');
element[0]=-element[0];
})
}
toutDessiner(letab,lecanvas,lectx);
empiler();
if(lecanvas!=null)
{
toutDessiner(letab,lecanvas,lectx);
empiler();
}
}
function getRandomInt(max) { //rng entier [1;max]
@ -253,29 +256,52 @@ var canvasT = document.getElementById('canvasTotal');
tabObj=[copyMDArray(tab1),copyMDArray(tab2),copyMDArray(tab3),copyMDArray(tab4)];
tabObjCmp=[];
var actions=getRandomInt(4)+1;
var swapTreshold=10;
var switchTreshold=10;;
if(diff=="med") //70% tournerD, 30% swap
var swapTreshold=11;
var switchTreshold=11;
if(difficulty=="med") //70% tournerD, 30% swap
{
actions+=getRandomInt(3)+3;
swapTreshold=8;
}
if(diff=="hard") //50% tournerD, 30% swap, 20% switch
if(difficulty=="hard") //50% tournerD, 30% swap, 20% switch
{
actions+=getRandomInt(5)+5;
swapTreshold=6;
switchTreshold=9;
}
console.log("actions : "+actions+" difficulty="+difficulty);
while(actions>0){
if(diff!="easy")
if(difficulty!="easy")
act=getRandomInt(10);
else
act=1;
//if(switchTreshold<act<10) // faire un switch
tourneD(tabObj,canvasO,ctxO,getRandomInt(4)-1);
actions--;
console.log("act="+act+" left:"+actions);
if(switchTreshold<=act && actions>3) // faire un switch
{
var from=getRandomInt(4)-1;
var to=getRandomInt(4)-1;
while(from==to)
to=getRandomInt(4)-1;
[tabObj[from],tabObj[to]]=[tabObj[to],tabObj[from]];
console.log("switch "+from+"->"+to);
actions-=3;
}
else if(swapTreshold<=act && actions>2)
{
var from=getRandomInt(4)-1;
var dir=getRandomInt(2)==1 ? "H":"V";
swap(tabObj[from],null,ctxO,dir);
console.log("swap"+dir+" de "+from);
actions-=2;
}
else
{
tourneD(tabObj,canvasO,ctxO,getRandomInt(4)-1);
actions-=1;
}
}
empiler(true);
toutDessiner(tabObjCmp,canvasO,ctxO);
@ -327,8 +353,6 @@ var canvasT = document.getElementById('canvasTotal');
else
break;
}
console.log("firstAv="+firstAv);
if(mouseOnRes && !canvasNumber.includes("R")) //clic dans la réserve, relâche sur la pile en jeu
{

Loading…
Cancel
Save