From a12ee1a0efdcfd4c55f9983225b3dda417ec8634 Mon Sep 17 00:00:00 2001
From: Mathieu Loiseau <mathieu.loiseau@liris.cnrs.fr>
Date: Mon, 13 Nov 2023 09:40:05 +0100
Subject: [PATCH] =?UTF-8?q?randomisation=20que=20quand=20randomis=C3=A9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 Assets/mainManager.cs | 42 ++++++++++++++++++++++--------------------
 1 file changed, 22 insertions(+), 20 deletions(-)

diff --git a/Assets/mainManager.cs b/Assets/mainManager.cs
index 9332390c..aa1e954a 100644
--- a/Assets/mainManager.cs
+++ b/Assets/mainManager.cs
@@ -70,9 +70,9 @@ public class mainManager : MonoBehaviour
             Debug.Log("depasse ce qui est disponible dans la structure, on refait jouer la derniere");
             currentSession = jsonStructureScript.data.sessions.Count - 1;
         }
-        
+
         newSystemeDeTraces.sendThisUserTracesToHMPlugin();
-        // on check si dans les TRACES, une epreuve a deja ete faite. Si c'est le cas et s'il y a une epreuve apres ce N° dans le json structure, alors on set currentEpreuve accordingly
+        // on check si dans les TRACES, une epreuve a deja ete faite. Si c'est le cas et s'il y a une epreuve apres ce N� dans le json structure, alors on set currentEpreuve accordingly
         playSteps();
     }
     private void resetClasse()
@@ -210,14 +210,14 @@ public class mainManager : MonoBehaviour
         }
         return anAssetSoundExists;
     }
-   
+
     public void flecheReadyDisplayed()
     {
         if (posScript.currentlyInstanciatedprefabImagePrincipale != null)
         {
             playerTurn = true;
 
-            // le son ready a bien été joué, on attends que le joueur clic sur la fleche ready.
+            // le son ready a bien �t� jou�, on attends que le joueur clic sur la fleche ready.
 
             posScript.currentlyInstanciatedprefabImagePrincipale.gameObject.SetActive(true);
 
@@ -235,7 +235,7 @@ public class mainManager : MonoBehaviour
             playerTurn = false;
             playSteps();
         }
-       
+
     }
     private bool epreuveitemscurrentSet = false;
     private List<EpreuveItem> epreuvesitemsCurrent;
@@ -246,7 +246,7 @@ public class mainManager : MonoBehaviour
         {
             texteCheat.text = texteCheat.text.Substring(150);
         }
-        // boutonnext cheat 
+        // boutonnext cheat
         if (boutonCheatNext)
         {
             if (playsoundCoroutine != null)
@@ -270,7 +270,9 @@ public class mainManager : MonoBehaviour
             }
             else
             {
-                epreuvesitemsCurrent = ShuffleList(epreuvesitemsCurrent);
+                if (e.randomiser){
+                    epreuvesitemsCurrent = ShuffleList(epreuvesitemsCurrent);
+                }
                 epreuveitemscurrentSet = true;
                 if (e.nbItemsMax == 0)
                 {
@@ -278,7 +280,7 @@ public class mainManager : MonoBehaviour
 
                 }
             }
-            
+
 
         }
         if (epreuvesitemsCurrent != null)
@@ -294,7 +296,7 @@ public class mainManager : MonoBehaviour
                 qcmmanager.playStepsQCM();
             }
         }
-        
+
     }
 
     public List<EpreuveItem> ShuffleList(List<EpreuveItem> list)
@@ -323,7 +325,7 @@ public class mainManager : MonoBehaviour
         if (epreuvesitemsCurrent == null || (currentItem >= epreuvesitemsCurrent.Count - 1) ||(currentItem>=e.nbItemsMax-1) )
         {
             // pas d'autre liste d'items dans cette epreuve
-            // on regarde s'il y a une autre epreuve dans la même session à lancer
+            // on regarde s'il y a une autre epreuve dans la m�me session � lancer
             if (currentEpreuve >= s.epreuves.Count - 1)
             {
                 //pas d'autre epreuve dans cette session, on clot la session
@@ -366,7 +368,7 @@ public class mainManager : MonoBehaviour
         {
             texteCheat.text += "/GOINTERACT";
         }
-        
+
     }
     private void Update()
     {
@@ -376,7 +378,7 @@ public class mainManager : MonoBehaviour
             {
                 reveilEnCours = true;
                 executeAsset(i.reveil, reveilDone, false);
-            
+
             // reveil
             }
         }
@@ -391,7 +393,7 @@ public class mainManager : MonoBehaviour
 
     public void boutonCheatNextClickedNow()
     {
-        // action 
+        // action
         if (boutonCheatNextImage.color == Color.white)
         {
             boutonCheatNext = true;
@@ -432,16 +434,16 @@ public class mainManager : MonoBehaviour
     }
     private IEnumerator replayButtonPlaySound(AudioClip unCLipSound, Action mafonction)
     {
-        
+
         mainAudioSource.Stop();
         mainAudioSource.clip = unCLipSound;
         mainAudioSource.Play();
-        
+
         while (!boutonCheatNext && mainAudioSource.isPlaying)
         {
             yield return new WaitForEndOfFrame();
         }
-        
+
         if (!boutonCheatNext)
         {
             yield return new WaitForSeconds(0.5f);
@@ -547,7 +549,7 @@ public class mainManager : MonoBehaviour
                 boutonQCM b = ggg.GetComponent<boutonQCM>();
                 list_choix_associed_with_prefabs[currentChoix].boutonqcmAssocied = b;
             }
-            
+
             currentChoix++;
             if (e.modalite == "QCM")
             {
@@ -572,7 +574,7 @@ public class mainManager : MonoBehaviour
                 {
                     StartCoroutine(justWaitOneFrameBeforeLaunchingFunction(instancieAndPlayCHoix));
                 }
-                
+
             }
             else
             {
@@ -612,7 +614,7 @@ public class mainManager : MonoBehaviour
         }
         else
         {
-            
+
             int sessionSuivante = currentSession + 2;
             BoutonnextsessionTexte.text = "Passer Session suivante "+ sessionSuivante.ToString()+"/"+ jsonStructureScript.data.sessions.Count.ToString();
             boutonSessionSuivante.SetActive(true);
@@ -627,7 +629,7 @@ public class mainManager : MonoBehaviour
             BoutonsessionActuelleTexte.text = "Retour session en cours " + sessionActuelle.ToString() + "/" + jsonStructureScript.data.sessions.Count.ToString();
             boutonSessionEnCours.SetActive(true);
         }
-       
+
         gameObjFin.SetActive(true);
 
     }
-- 
GitLab