Compare commits

...

2 Commits

Author SHA1 Message Date
fabien
333949f761 choisir le niveau d'alea 2024-09-12 21:05:08 +02:00
fabien
874955b86e esthétisme 2024-09-12 20:53:18 +02:00

View File

@@ -63,10 +63,10 @@
while(tables < maxgameplayed && essai < 10) { while(tables < maxgameplayed && essai < 10) {
essai++; essai++;
selectedGame = findgame(playersAvailableInSession, gameThisSession); selectedGame = findgame(playersAvailableInSession, gameThisSession);
showDebug( "try for " +selectedGame +", players disponibles "+playersAvailableInSession.length ); //showDebug( "try for " +selectedGame +", players disponibles "+playersAvailableInSession.length );
possibleplayers = chooseplayers(playersAvailableInSession, selectedGame); possibleplayers = chooseplayers(playersAvailableInSession, selectedGame);
showDebug ("players dispo " +possibleplayers.length + " <br/>" ); // showDebug ("players dispo " +possibleplayers.length + " <br/>" );
//youpi , une table faite //youpi , une table faite
if(possibleplayers.length >= playerAtTable ) { if(possibleplayers.length >= playerAtTable ) {
@@ -148,14 +148,18 @@
selectedjoueur = ""; selectedjoueur = "";
bestscore=0; bestscore=0;
iterateur = playersAvailableInSession.length; iterateur = playersAvailableInSession.length;
for (player of playersAvailableInSession ) { playersorted = playersAvailableInSession
if( player.gamesPlayed.includes(selectedGame) ) continue; .filter(p=>!p.gamesPlayed.includes(selectedGame));
if ( document.getElementById("shuffle").checked ) {
playersorted = playersorted.sort((a,b) =>0.5 - Math.random());
}
for (player of playersorted ) {
preference[player] = { forte:[], faible:[], nulle : [], score:0} ; preference[player] = { forte:[], faible:[], nulle : [], score:0} ;
for (opositeplayer of playersAvailableInSession ) { for (opositeplayer of playersorted ) {
if( player === opositeplayer || opositeplayer.gamesPlayed.includes(selectedGame) ) if( player === opositeplayer )
continue; //lui-mmeme ou déjà joué a ce jeu, niet! continue; //lui-meme, niet!
nbrencontre= player.opponents.filter(o => o ===opositeplayer).length; nbrencontre= player.opponents.filter(o => o ===opositeplayer).length;
if (nbrencontre==0) { if (nbrencontre==0) {
preference[player].forte.push(opositeplayer); preference[player].forte.push(opositeplayer);
@@ -205,22 +209,24 @@
show ("<span style='color:green' >"+ text +"</span><br/>"); show ("<span style='color:green' >"+ text +"</span><br/>");
} }
function showWarning(text){ function showWarning(text){
show ("<span style='color:red' >"+ text +"</span><br/>"); show ("<span style='color:red' >"+ text +"</span><br/>");
} }
function showDebug(text){
show ("<span style='color:gray' >"+ text +"</span><br/>");
}
function show(text) {
elem = document.getElementById("results");
elem.insertAdjacentHTML( 'beforeend', text);
}
function showDebug(text){
show ("<span style='color:gray' >"+ text +"</span><br/>");
}
function show(text) {
elem = document.getElementById("results");
elem.insertAdjacentHTML( 'beforeend', text);
}
</script> </script>
<div id="param" style="float:left;width:50%; text-align:center"> <div id="param" style="float:left;width:50%; text-align:center">
Nombres de jouers (nom inventés) <input id="players" name="players" placeholder="nombre de joueurs" type ="text"/><br/> Nombres de jouers (nom inventés) <input id="players" name="players" placeholder="nombre de joueurs" type ="text"/><br/>
Nombres de joueurs par tables <input id="tables" name="tables" placeholder="nombre de joueurs par table" type ="text"/><br/> Nombres de joueurs par tables <input id="tables" name="tables" placeholder="nombre de joueurs par table" type ="text"/><br/>
Nombres de jeux à jouer <input id="games" name="games" placeholder="nombre de jeux" type ="text"/><br> Nombres de jeux à jouer <input id="games" name="games" placeholder="nombre de jeux" type ="text"/><br>
Maximiser le nombre d'adversaires ( tournoi rallongé) <input id="shuffle" name="shuffle" type="checkbox"/><br>
<button onclick="compute();" > Calculer</button> <button onclick="compute();" > Calculer</button>
</div> </div>
<div id="results" style="float:left;width:50%;"> <div id="results" style="float:left;width:50%;">