diff --git a/Description.md b/Description.md
index 0820dff36f0dc68e0f48f5274e4468d98d54f9c8..26773bbe8d14a9076f302881be1cd6516c5eed67 100644
--- a/Description.md
+++ b/Description.md
@@ -58,3 +58,12 @@ Au milieu de l'écran la course est centrée et les coureurs vont du départ à
 
 #### Etape 4 :
 Ecran de fin, si le joueur a perdu, sa réputation est affichée et un bouton rejouer est disponible ainsi qu'un message lui annonçant la raison de sa perte. Si le joueur a gagné, un bouton continuer est disponible afin de faire une nouvelle course en partant de la réputation actuelle.
+
+---
+### Bugs reconnus
+-   Le changement de la taille de la fênetre n'est pas supporté avec la route tracée. => La fenêtre est bloquée mais peut toujours être redimensionnée avec un logiciel tierce.
+-   Les points de départ et d'arrivée deviennent petit une fois le jeu lancer => lié à un changement permettant d'utiliser les coordonnées GPS.
+-   La route peut être caché par le HUD si elle est générée vers le haut => Ne se passe que vers le haut car une vérification sur l'écran se fait déjà.
+-   Par moment la génération de la route s'éffectue trop tôt et est donc incorrect une fois le recalibrage de la caméra => Nous n'avons pas encore trouvé pourquoi la fonction s'éxécute à ce moment là.
+-   Le compteur d'objets peut être négatif => Il y a normalement un bloqueur mais il ne marche pas à tout les coups
+-   Terminer la course rapidement permet de duppliquer sa motivation => Le système d'arrêt avec un bouton est pour simplifier, l'objectif est d'avoir un arrêt automatique à terme.
diff --git a/Images/readme/gameScreen.png b/Images/readme/gameScreen.png
new file mode 100644
index 0000000000000000000000000000000000000000..25f5eb1a7c77bcdf9d051c97d3e53c690f26bfe9
Binary files /dev/null and b/Images/readme/gameScreen.png differ
diff --git a/README.md b/README.md
index 564a1dd4606c6da3205432841030b01b15244f8f..a4f2198c577b57ef4a9101ac39e40026833a1145 100644
--- a/README.md
+++ b/README.md
@@ -20,18 +20,14 @@ Le projet The Legends Of Simon : Wild Garden consiste en jeu sérieux de gestion
 ---
 ## ***Présentation d'une partie***
 
-##### Choisir une zone
+##### Choisir une zone pour faire la course
 ![searchZone](/Images/readme/searchZone.png)
 
-##### Placer le départ et l'arrivée
-![placeStart](/Images/readme/placeStart.png)
-
-![placeEnd](/Images/readme/placeEnd.png)
-
-##### Route placée automatiquement à partir du départ et de l'arrivée
+##### Placer un départ et une arrivée, cela crée une route automatiquement
 ![autoRoad](/Images/readme/autoRoad.png)
 
-#### Exemple d'une course sans obstacles
+##### Les joueurs cours, on peut poser ou supprimer des obstacles pour influencer la difficulté
+![gameScreen](/Images/readme/gameScreen.png)
 ![runnerGif](/Images/readme/runnerGif.gif)
 
 ---
diff --git a/T3-Unity/Assets/Scripts/Button UI/ExitScene.cs b/T3-Unity/Assets/Scripts/Button UI/ExitScene.cs
index d9e6bbb46a66cebe94d85f052f7ba9a0474e415b..de58b428bcebeb9e8d71a43daa2adcb5736bbb48 100644
--- a/T3-Unity/Assets/Scripts/Button UI/ExitScene.cs	
+++ b/T3-Unity/Assets/Scripts/Button UI/ExitScene.cs	
@@ -3,11 +3,11 @@
     using UnityEngine;
 
     //! @authors cgroxy
-    //! @brief "Insérer description rapide"
-    //! @details "Insérer description détaillée"
+    //! @brief Quitter l'appliquation
+    //! @details Cette classe permet de quitter l'application
     public class ExitScene : MonoBehaviour
     {
-        //! @brief "Insérer description rapide"
+        //! @brief Quitte l'application
         public void Exit()
         {
             Application.Quit();
diff --git a/T3-Unity/Assets/Scripts/Button UI/MenuToggle.cs b/T3-Unity/Assets/Scripts/Button UI/MenuToggle.cs
index afe3f377f4f7e627c1dfe4bc18140f5b0750d024..7ab8f62a7ee1451554e4c39174ef11b04ca62262 100644
--- a/T3-Unity/Assets/Scripts/Button UI/MenuToggle.cs	
+++ b/T3-Unity/Assets/Scripts/Button UI/MenuToggle.cs	
@@ -3,27 +3,27 @@
     using UnityEngine;
 
     //! @authors cgroxy
-    //! @brief "Insérer description rapide"
-    //! @details "Insérer description détaillée"
+    //! @brief active l'ui
+    //! @details Cette classe permet d'activer l'UI
     public class MenuToggle : MonoBehaviour
     {
-        public GameObject Canvas; //!< "Insérer description de la variable"
-        public GameObject Button; //!< "Insérer description de la variable"
+        public GameObject Canvas; //!< Set le canvas qui va être modifier
+        public GameObject Button; //!< Le boutton qui va permettre de trigger l'event
 
         //! @brief Se lance au lancement du script.
-        //! @details Définie le plan @a _yPlane.
+        //! @details désactive l'UI au lancement
         void Start()
         {
             Canvas.gameObject.SetActive(false);
         }
 
-        //! @brief "Insérer description rapide"
+        //! @brief "rend l'UI visible"
         public void changeCanvasProperty()
         {
             Canvas.gameObject.SetActive(true);
         }
 
-        //! @brief "Insérer description rapide"
+        //! @brief "Désacitve le boutton utilisé"
         public void changeButtonsProperty()
         {
             Button.gameObject.SetActive(false);
diff --git a/T3-Unity/Assets/Scripts/Obstacle/Medium/DragDropM.cs b/T3-Unity/Assets/Scripts/Obstacle/Medium/DragDropM.cs
index 15c334fec6eea966c2929fbfb77e354e08b621ef..6d4959686a47acfa3a469fb78de9a74275d2d9a0 100644
--- a/T3-Unity/Assets/Scripts/Obstacle/Medium/DragDropM.cs
+++ b/T3-Unity/Assets/Scripts/Obstacle/Medium/DragDropM.cs
@@ -5,17 +5,18 @@ using UnityEngine.EventSystems;
 using TMPro;
 
     //! @authors cgroxy
-    //! @brief "Insérer description rapide"
-    //! @details "Insérer description détaillée"
+    //! @brief gêre le placement d'obstacles et leurs limites sur la map
+    //! @details Cette classe permet de gerer le déplacement des objets obstacles sur la map et leurs limite de placement
 public class DragDropM : MonoBehaviour, IDragHandler, IDropHandler
 {
         // Champs publiques
     [SerializeField] private Canvas canvas;
+    public TMP_Text textshowed; //!< texte affiché
 
-        // Champs privés
-    private RectTransform rectransform; //!< "Insérer description de la variable"
-    public TMP_Text textshowed; //!< "Insérer description de la variable"
-    bool block = true; //!< "Insérer description de la variable"
+    // Champs privés
+    private RectTransform rectransform; //!< déplacement de l'objet
+
+    bool block = true; //!< bloque lorsque on pose un objet sur la map
 
         //! @brief Se lance au lancement du script.
     private void Awake()
@@ -25,8 +26,8 @@ public class DragDropM : MonoBehaviour, IDragHandler, IDropHandler
     }
 
         //! @param enventData Donnée de l'event @b OnDrop(PointerEventData)
-        //! @brief "Insérer description rapide"
-        //! @details "Insérer description détaillée"
+        //! @brief déplacement des objets 
+        //! @details Lorsque l'on clique sur un objet il suit la souris jusqu'a son relachement, et ne fonctionne pas quand la limite est atteinte
     public void OnDrag(PointerEventData eventData)
     {
 
@@ -44,8 +45,8 @@ public class DragDropM : MonoBehaviour, IDragHandler, IDropHandler
     }
 
         //! @param enventData Donnée de l'event @b OnDrop(PointerEventData)
-        //! @brief "Insérer description rapide"
-        //! @details "Insérer description détaillée"
+        //! @brief modifique différentes valeurs lorsque l'on pose l'objet
+        //! @details Augement la difficultée et diminue les nombre d'objets max lorsque l'on place un obstacle
     public void OnDrop(PointerEventData eventData)
     {
 
diff --git a/T3-Unity/Assets/Scripts/Obstacle/Medium/midObj.cs b/T3-Unity/Assets/Scripts/Obstacle/Medium/midObj.cs
index 5feb58145637219ed866143537432d327e52f1ff..e8e64b4f0012054b69192ec5aca26ba22881c8c9 100644
--- a/T3-Unity/Assets/Scripts/Obstacle/Medium/midObj.cs
+++ b/T3-Unity/Assets/Scripts/Obstacle/Medium/midObj.cs
@@ -4,15 +4,16 @@
     using UnityEngine.EventSystems;
 
     //! @authors cgroxy
-    //! @brief "Insérer description rapide"
-    //! @details "Insérer description détaillée"
+    //! @brief Détruit l'obstacle si posé sur la poubelle 
+    //! @details Cette classe permet de d'étruire un objet quand il est posé sur un autre objet poubelle 
+    //! tout en modifiant la difficulté en fonction de la force de l'objet
     public class midObj : MonoBehaviour, IDropHandler
     {
-        private GameObject go; //!< "Insérer description de la variable"
+        private GameObject go; //!< permet de trouver un GameObject
 
         //! @param enventData Donnée de l'event @b OnDrop(PointerEventData)
-        //! @brief "Insérer description rapide"
-        //! @details "Insérer description détaillée"
+        //! @brief supprime l'objet quand il est posé sur la poubelle 
+        //! @details lorsque l'on relache l'objet sur la poubelle il se fait détruire et retire la difficultée et rajoute un objet dans le nombre max
         public void OnDrop(PointerEventData eventData)
         {
 
diff --git a/T3-Unity/Assets/Scripts/Obstacle/Medium/midObj1.cs b/T3-Unity/Assets/Scripts/Obstacle/Medium/midObj1.cs
index c2a6b2da3ebaa9298c9a4c342af0567d5305b2da..df3095e7a3dd1fde5ec27eac7f1b838cd0271fe5 100644
--- a/T3-Unity/Assets/Scripts/Obstacle/Medium/midObj1.cs
+++ b/T3-Unity/Assets/Scripts/Obstacle/Medium/midObj1.cs
@@ -4,15 +4,16 @@
     using UnityEngine.EventSystems;
 
     //! @authors cgroxy
-    //! @brief "Insérer description rapide"
-    //! @details "Insérer description détaillée"
+    //! @brief Détruit l'obstacle si posé sur la poubelle 
+    //! @details Cette classe permet de d'étruire un objet quand il est posé sur un autre objet poubelle 
+    //! tout en modifiant la difficulté en fonction de la force de l'objet
     public class midObj1 : MonoBehaviour, IDropHandler
     {
-        private GameObject go; //!< "Insérer description de la variable"
+        private GameObject go; //!< permet de trouver un GameObject
 
         //! @param enventData Donnée de l'event @b OnDrop(PointerEventData)
-        //! @brief "Insérer description rapide"
-        //! @details "Insérer description détaillée"
+        //! @brief supprime l'objet quand il est posé sur la poubelle 
+        //! @details lorsque l'on relache l'objet sur la poubelle il se fait détruire et retire la difficultée et rajoute un objet dans le nombre max
         public void OnDrop(PointerEventData eventData)
         {
 
diff --git a/T3-Unity/Assets/Scripts/Obstacle/Medium/midObj2.cs b/T3-Unity/Assets/Scripts/Obstacle/Medium/midObj2.cs
index 7c431108525f3dbe72d3c1164fd203baa151fad1..49816acb321fa3f905fb83d3fa2e1ae195d6d846 100644
--- a/T3-Unity/Assets/Scripts/Obstacle/Medium/midObj2.cs
+++ b/T3-Unity/Assets/Scripts/Obstacle/Medium/midObj2.cs
@@ -4,15 +4,16 @@
     using UnityEngine.EventSystems;
 
     //! @authors cgroxy
-    //! @brief "Insérer description rapide"
-    //! @details "Insérer description détaillée"
+    //! @brief Détruit l'obstacle si posé sur la poubelle 
+    //! @details Cette classe permet de d'étruire un objet quand il est posé sur un autre objet poubelle 
+    //! tout en modifiant la difficulté en fonction de la force de l'objet
     public class midObj2 : MonoBehaviour, IDropHandler
     {
-        private GameObject go; //!< "Insérer description de la variable"
+        private GameObject go; //!< permet de trouver un GameObject
 
         //! @param enventData Donnée de l'event @b OnDrop(PointerEventData)
-        //! @brief "Insérer description rapide"
-        //! @details "Insérer description détaillée"
+        //! @brief supprime l'objet quand il est posé sur la poubelle 
+        //! @details lorsque l'on relache l'objet sur la poubelle il se fait détruire et retire la difficultée et rajoute un objet dans le nombre max
         public void OnDrop(PointerEventData eventData)
         {
 
diff --git a/T3-Unity/Assets/Scripts/Obstacle/Medium/midObj3.cs b/T3-Unity/Assets/Scripts/Obstacle/Medium/midObj3.cs
index 9acd4310c17a60d9d30d7a209b99bcc1a6ad42d0..0ebf4f40ba478d62cfeb1a6cc110d2db793d43bd 100644
--- a/T3-Unity/Assets/Scripts/Obstacle/Medium/midObj3.cs
+++ b/T3-Unity/Assets/Scripts/Obstacle/Medium/midObj3.cs
@@ -2,17 +2,17 @@
 {
     using UnityEngine;
     using UnityEngine.EventSystems;
-
     //! @authors cgroxy
-    //! @brief "Insérer description rapide"
-    //! @details "Insérer description détaillée"
+    //! @brief Détruit l'obstacle si posé sur la poubelle 
+    //! @details Cette classe permet de d'étruire un objet quand il est posé sur un autre objet poubelle 
+    //! tout en modifiant la difficulté en fonction de la force de l'objet
     public class midObj3 : MonoBehaviour, IDropHandler
     {
-        private GameObject go; //!< "Insérer description de la variable"
+        private GameObject go; //!< permet de trouver un GameObject
 
         //! @param enventData Donnée de l'event @b OnDrop(PointerEventData)
-        //! @brief "Insérer description rapide"
-        //! @details "Insérer description détaillée"
+        //! @brief supprime l'objet quand il est posé sur la poubelle 
+        //! @details lorsque l'on relache l'objet sur la poubelle il se fait détruire et retire la difficultée et rajoute un objet dans le nombre max
         public void OnDrop(PointerEventData eventData)
         {
 
diff --git a/T3-Unity/Assets/Scripts/Obstacle/Medium/midObj4.cs b/T3-Unity/Assets/Scripts/Obstacle/Medium/midObj4.cs
index 4c7fe069fe23ec214f762cca2053d6f69925968f..50273035ad00e5cf8dd8167edb4fd9298a776677 100644
--- a/T3-Unity/Assets/Scripts/Obstacle/Medium/midObj4.cs
+++ b/T3-Unity/Assets/Scripts/Obstacle/Medium/midObj4.cs
@@ -4,15 +4,16 @@
     using UnityEngine.EventSystems;
 
     //! @authors cgroxy
-    //! @brief "Insérer description rapide"
-    //! @details "Insérer description détaillée"
+    //! @brief Détruit l'obstacle si posé sur la poubelle 
+    //! @details Cette classe permet de d'étruire un objet quand il est posé sur un autre objet poubelle 
+    //! tout en modifiant la difficulté en fonction de la force de l'objet
     public class midObj4 : MonoBehaviour, IDropHandler
     {
-        private GameObject go; //!< "Insérer description de la variable"
+        private GameObject go; //!< permet de trouver un GameObject
 
         //! @param enventData Donnée de l'event @b OnDrop(PointerEventData)
-        //! @brief "Insérer description rapide"
-        //! @details "Insérer description détaillée"
+        //! @brief supprime l'objet quand il est posé sur la poubelle 
+        //! @details lorsque l'on relache l'objet sur la poubelle il se fait détruire et retire la difficultée et rajoute un objet dans le nombre max
         public void OnDrop(PointerEventData eventData)
         {
 
diff --git a/T3-Unity/Assets/Scripts/Obstacle/Strong/DragDropS.cs b/T3-Unity/Assets/Scripts/Obstacle/Strong/DragDropS.cs
index 5f1b973bf801bd6e183c02676ce65e6df18c1e69..be1f1435d37ff3a22432b904401e7974a3b6ebce 100644
--- a/T3-Unity/Assets/Scripts/Obstacle/Strong/DragDropS.cs
+++ b/T3-Unity/Assets/Scripts/Obstacle/Strong/DragDropS.cs
@@ -4,24 +4,30 @@ using UnityEngine;
 using UnityEngine.EventSystems;
 using TMPro;
 
-
+//! @authors cgroxy
+//! @brief gêre le placement d'obstacles et leurs limites sur la map
+//! @details Cette classe permet de gerer le déplacement des objets obstacles sur la map et leurs limite de placement
 public class DragDropS : MonoBehaviour, IDragHandler, IDropHandler
 {
-
+    // Champs publiques
     [SerializeField] private Canvas canvas;
+    public TMP_Text textshowed; //!< texte affiché
 
-    private RectTransform rectransform;
-    public TMP_Text textshowed;
-    bool block = true;
+    // Champs privés
+    private RectTransform rectransform;//!< déplacement de l'objet
 
+    bool block = true; //!< bloque lorsque on pose un objet sur la map
 
+    //! @brief Se lance au lancement du script.
     private void Awake()
     {
         rectransform = GetComponent<RectTransform>();
 
     }
 
-
+    //! @param enventData Donnée de l'event @b OnDrop(PointerEventData)
+    //! @brief déplacement des objets 
+    //! @details Lorsque l'on clique sur un objet il suit la souris jusqu'a son relachement, et ne fonctionne pas quand la limite est atteinte
     public void OnDrag(PointerEventData eventData)
     {
 
@@ -37,6 +43,9 @@ public class DragDropS : MonoBehaviour, IDragHandler, IDropHandler
 
     }
 
+    //! @param enventData Donnée de l'event @b OnDrop(PointerEventData)
+    //! @brief modifique différentes valeurs lorsque l'on pose l'objet
+    //! @details Augement la difficultée et diminue les nombre d'objets max lorsque l'on place un obstacle
     public void OnDrop(PointerEventData eventData)
     {
 
diff --git a/T3-Unity/Assets/Scripts/Obstacle/Strong/strongObj.cs b/T3-Unity/Assets/Scripts/Obstacle/Strong/strongObj.cs
index 0d1e1b853e13b01fe2d4303984ac79e0d37e08f6..545f062b2894c25926f1d7fe56821e15cea887f9 100644
--- a/T3-Unity/Assets/Scripts/Obstacle/Strong/strongObj.cs
+++ b/T3-Unity/Assets/Scripts/Obstacle/Strong/strongObj.cs
@@ -3,10 +3,17 @@ using System.Collections.Generic;
 using UnityEngine;
 using UnityEngine.EventSystems;
 
+//! @authors cgroxy
+//! @brief Détruit l'obstacle si posé sur la poubelle 
+//! @details Cette classe permet de d'étruire un objet quand il est posé sur un autre objet poubelle 
+//! tout en modifiant la difficulté en fonction de la force de l'objet
 public class strongObj : MonoBehaviour, IDropHandler
 {
-    private GameObject go;
+    private GameObject go; //!< permet de trouver un GameObject
 
+    //! @param enventData Donnée de l'event @b OnDrop(PointerEventData)
+    //! @brief supprime l'objet quand il est posé sur la poubelle 
+    //! @details lorsque l'on relache l'objet sur la poubelle il se fait détruire et retire la difficultée et rajoute un objet dans le nombre max
     public void OnDrop(PointerEventData eventData)
     {
         
diff --git a/T3-Unity/Assets/Scripts/Obstacle/Strong/strongObj1.cs b/T3-Unity/Assets/Scripts/Obstacle/Strong/strongObj1.cs
index fc5077695c8c85820b1c3b6b31516fd56f246bab..b37413c6cf08a66e342af3b432fbc2f501be3f32 100644
--- a/T3-Unity/Assets/Scripts/Obstacle/Strong/strongObj1.cs
+++ b/T3-Unity/Assets/Scripts/Obstacle/Strong/strongObj1.cs
@@ -2,10 +2,18 @@
 using System.Collections.Generic;
 using UnityEngine;
 using UnityEngine.EventSystems;
+
+//! @authors cgroxy
+//! @brief Détruit l'obstacle si posé sur la poubelle 
+//! @details Cette classe permet de d'étruire un objet quand il est posé sur un autre objet poubelle 
+//! tout en modifiant la difficulté en fonction de la force de l'objet
 public class strongObj1 : MonoBehaviour,IDropHandler
 {
-    private GameObject go;
+    private GameObject go; //!< permet de trouver un GameObject
 
+    //! @param enventData Donnée de l'event @b OnDrop(PointerEventData)
+    //! @brief supprime l'objet quand il est posé sur la poubelle 
+    //! @details lorsque l'on relache l'objet sur la poubelle il se fait détruire et retire la difficultée et rajoute un objet dans le nombre max
     public void OnDrop(PointerEventData eventData)
     {
 
diff --git a/T3-Unity/Assets/Scripts/Obstacle/Strong/strongObj2.cs b/T3-Unity/Assets/Scripts/Obstacle/Strong/strongObj2.cs
index 1c9add8432c04a46258c74fa2c34b2cbccf0107e..cec8c2c964367a98a3391dcbbd8d13e6cadc9e47 100644
--- a/T3-Unity/Assets/Scripts/Obstacle/Strong/strongObj2.cs
+++ b/T3-Unity/Assets/Scripts/Obstacle/Strong/strongObj2.cs
@@ -2,10 +2,18 @@
 using System.Collections.Generic;
 using UnityEngine;
 using UnityEngine.EventSystems;
+
+//! @authors cgroxy
+//! @brief Détruit l'obstacle si posé sur la poubelle 
+//! @details Cette classe permet de d'étruire un objet quand il est posé sur un autre objet poubelle 
+//! tout en modifiant la difficulté en fonction de la force de l'objet
 public class strongObj2 : MonoBehaviour, IDropHandler
 {
-    private GameObject go;
+    private GameObject go; //!< permet de trouver un GameObject
 
+    //! @param enventData Donnée de l'event @b OnDrop(PointerEventData)
+    //! @brief supprime l'objet quand il est posé sur la poubelle 
+    //! @details lorsque l'on relache l'objet sur la poubelle il se fait détruire et retire la difficultée et rajoute un objet dans le nombre max
     public void OnDrop(PointerEventData eventData)
     {
 
diff --git a/T3-Unity/Assets/Scripts/Obstacle/Strong/strongObj3.cs b/T3-Unity/Assets/Scripts/Obstacle/Strong/strongObj3.cs
index 36e1ad8dff847dbfa9eb01c8e9f464e60c6c37fd..905396b23ae8b8c946ce454d1244ddc466cc698c 100644
--- a/T3-Unity/Assets/Scripts/Obstacle/Strong/strongObj3.cs
+++ b/T3-Unity/Assets/Scripts/Obstacle/Strong/strongObj3.cs
@@ -2,10 +2,18 @@
 using System.Collections.Generic;
 using UnityEngine;
 using UnityEngine.EventSystems;
+
+//! @authors cgroxy
+//! @brief Détruit l'obstacle si posé sur la poubelle 
+//! @details Cette classe permet de d'étruire un objet quand il est posé sur un autre objet poubelle 
+//! tout en modifiant la difficulté en fonction de la force de l'objet
 public class strongObj3 : MonoBehaviour, IDropHandler
 {
-    private GameObject go;
+    private GameObject go; //!< permet de trouver un GameObject
 
+    //! @param enventData Donnée de l'event @b OnDrop(PointerEventData)
+    //! @brief supprime l'objet quand il est posé sur la poubelle 
+    //! @details lorsque l'on relache l'objet sur la poubelle il se fait détruire et retire la difficultée et rajoute un objet dans le nombre max
     public void OnDrop(PointerEventData eventData)
     {
 
diff --git a/T3-Unity/Assets/Scripts/Obstacle/Strong/strongObj4.cs b/T3-Unity/Assets/Scripts/Obstacle/Strong/strongObj4.cs
index 8b043d1ce63c5f3c37816fcf96d5bec799d47af3..c7f6d302377d950ed51583deaf7661e0d555adf2 100644
--- a/T3-Unity/Assets/Scripts/Obstacle/Strong/strongObj4.cs
+++ b/T3-Unity/Assets/Scripts/Obstacle/Strong/strongObj4.cs
@@ -2,10 +2,18 @@
 using System.Collections.Generic;
 using UnityEngine;
 using UnityEngine.EventSystems;
+
+//! @authors cgroxy
+//! @brief Détruit l'obstacle si posé sur la poubelle 
+//! @details Cette classe permet de d'étruire un objet quand il est posé sur un autre objet poubelle 
+//! tout en modifiant la difficulté en fonction de la force de l'objet
 public class strongObj4 : MonoBehaviour, IDropHandler
 {
-    private GameObject go;
+    private GameObject go; //!< permet de trouver un GameObject
 
+    //! @param enventData Donnée de l'event @b OnDrop(PointerEventData)
+    //! @brief supprime l'objet quand il est posé sur la poubelle 
+    //! @details lorsque l'on relache l'objet sur la poubelle il se fait détruire et retire la difficultée et rajoute un objet dans le nombre max
     public void OnDrop(PointerEventData eventData)
     {
 
diff --git a/T3-Unity/Assets/Scripts/Obstacle/weak/DragDropW.cs b/T3-Unity/Assets/Scripts/Obstacle/weak/DragDropW.cs
index b5c0e78e52c6ab893b7cea1b041f99f6d052fa55..9a30f8ebd4fbc1c3a793706482b1d8c391559ffc 100644
--- a/T3-Unity/Assets/Scripts/Obstacle/weak/DragDropW.cs
+++ b/T3-Unity/Assets/Scripts/Obstacle/weak/DragDropW.cs
@@ -4,23 +4,30 @@ using UnityEngine;
 using UnityEngine.EventSystems;
 using TMPro;
 
+//! @authors cgroxy
+//! @brief gêre le placement d'obstacles et leurs limites sur la map
+//! @details Cette classe permet de gerer le déplacement des objets obstacles sur la map et leurs limite de placement
 public class DragDropW : MonoBehaviour, IDragHandler, IDropHandler
 {
-
+    // Champs publiques
     [SerializeField] private Canvas canvas;
+    public TMP_Text textshowed; //!< texte affiché
 
-    private RectTransform rectransform;
-    public TMP_Text textshowed;
-    bool block = true;
+    // Champs privés
+    private RectTransform rectransform;//!< déplacement de l'objet
 
+    bool block = true; //!< bloque lorsque on pose un objet sur la map
 
+    //! @brief Se lance au lancement du script.
     private void Awake()
     {
         rectransform = GetComponent<RectTransform>();
-        
+
     }
- 
 
+    //! @param enventData Donnée de l'event @b OnDrop(PointerEventData)
+    //! @brief déplacement des objets 
+    //! @details Lorsque l'on clique sur un objet il suit la souris jusqu'a son relachement, et ne fonctionne pas quand la limite est atteinte
     public void OnDrag(PointerEventData eventData)
     {
 
@@ -35,6 +42,9 @@ public class DragDropW : MonoBehaviour, IDragHandler, IDropHandler
         }
     }
 
+    //! @param enventData Donnée de l'event @b OnDrop(PointerEventData)
+    //! @brief modifique différentes valeurs lorsque l'on pose l'objet
+    //! @details Augement la difficultée et diminue les nombre d'objets max lorsque l'on place un obstacle
     public void OnDrop(PointerEventData eventData)
     {
         
diff --git a/T3-Unity/Assets/Scripts/Obstacle/weak/weakObj.cs b/T3-Unity/Assets/Scripts/Obstacle/weak/weakObj.cs
index 2ed57a9abc30ea458e55360adc2f537f2858ebdb..6d70a05b955926d1342838c744a97731cecc5676 100644
--- a/T3-Unity/Assets/Scripts/Obstacle/weak/weakObj.cs
+++ b/T3-Unity/Assets/Scripts/Obstacle/weak/weakObj.cs
@@ -3,10 +3,17 @@ using System.Collections.Generic;
 using UnityEngine;
 using UnityEngine.EventSystems;
 
+//! @authors cgroxy
+//! @brief Détruit l'obstacle si posé sur la poubelle 
+//! @details Cette classe permet de d'étruire un objet quand il est posé sur un autre objet poubelle 
+//! tout en modifiant la difficulté en fonction de la force de l'objet
 public class weakObj : MonoBehaviour, IDropHandler
 {
-    private GameObject go;
-    
+    private GameObject go; //!< permet de trouver un GameObject
+
+    //! @param enventData Donnée de l'event @b OnDrop(PointerEventData)
+    //! @brief supprime l'objet quand il est posé sur la poubelle 
+    //! @details lorsque l'on relache l'objet sur la poubelle il se fait détruire et retire la difficultée et rajoute un objet dans le nombre max
     public void OnDrop(PointerEventData eventData)
     {
 
diff --git a/T3-Unity/Assets/Scripts/Obstacle/weak/weakObj1.cs b/T3-Unity/Assets/Scripts/Obstacle/weak/weakObj1.cs
index e1e08de13cacf89b2e2b15be088c2c8914ae89f7..25f67329d12229f218e157c61acddbadb8fa309e 100644
--- a/T3-Unity/Assets/Scripts/Obstacle/weak/weakObj1.cs
+++ b/T3-Unity/Assets/Scripts/Obstacle/weak/weakObj1.cs
@@ -2,10 +2,18 @@
 using System.Collections.Generic;
 using UnityEngine;
 using UnityEngine.EventSystems;
+
+//! @authors cgroxy
+//! @brief Détruit l'obstacle si posé sur la poubelle 
+//! @details Cette classe permet de d'étruire un objet quand il est posé sur un autre objet poubelle 
+//! tout en modifiant la difficulté en fonction de la force de l'objet
 public class weakObj1 : MonoBehaviour, IDropHandler
 {
-    private GameObject go;
+    private GameObject go; //!< permet de trouver un GameObject
 
+    //! @param enventData Donnée de l'event @b OnDrop(PointerEventData)
+    //! @brief supprime l'objet quand il est posé sur la poubelle 
+    //! @details lorsque l'on relache l'objet sur la poubelle il se fait détruire et retire la difficultée et rajoute un objet dans le nombre max
     public void OnDrop(PointerEventData eventData)
     {
 
diff --git a/T3-Unity/Assets/Scripts/Obstacle/weak/weakObj2.cs b/T3-Unity/Assets/Scripts/Obstacle/weak/weakObj2.cs
index 0615f08c035e8841fe9e0bf860e78d9bd50980c5..46daa7c3309f1d6f5918e63fb11473a6c9ae2e5e 100644
--- a/T3-Unity/Assets/Scripts/Obstacle/weak/weakObj2.cs
+++ b/T3-Unity/Assets/Scripts/Obstacle/weak/weakObj2.cs
@@ -2,10 +2,18 @@
 using System.Collections.Generic;
 using UnityEngine;
 using UnityEngine.EventSystems;
+
+//! @authors cgroxy
+//! @brief Détruit l'obstacle si posé sur la poubelle 
+//! @details Cette classe permet de d'étruire un objet quand il est posé sur un autre objet poubelle 
+//! tout en modifiant la difficulté en fonction de la force de l'objet
 public class weakObj2 : MonoBehaviour, IDropHandler
 {
-    private GameObject go;
+    private GameObject go; //!< permet de trouver un GameObject
 
+    //! @param enventData Donnée de l'event @b OnDrop(PointerEventData)
+    //! @brief supprime l'objet quand il est posé sur la poubelle 
+    //! @details lorsque l'on relache l'objet sur la poubelle il se fait détruire et retire la difficultée et rajoute un objet dans le nombre max
     public void OnDrop(PointerEventData eventData)
     {
 
diff --git a/T3-Unity/Assets/Scripts/Obstacle/weak/weakObj3.cs b/T3-Unity/Assets/Scripts/Obstacle/weak/weakObj3.cs
index a92cd7055c5b2dd59b29b43c5a1d086dbd3c8521..2955f5c38f439c6e60572c5d098a68479a00704f 100644
--- a/T3-Unity/Assets/Scripts/Obstacle/weak/weakObj3.cs
+++ b/T3-Unity/Assets/Scripts/Obstacle/weak/weakObj3.cs
@@ -2,10 +2,18 @@
 using System.Collections.Generic;
 using UnityEngine;
 using UnityEngine.EventSystems;
+
+//! @authors cgroxy
+//! @brief Détruit l'obstacle si posé sur la poubelle 
+//! @details Cette classe permet de d'étruire un objet quand il est posé sur un autre objet poubelle 
+//! tout en modifiant la difficulté en fonction de la force de l'objet
 public class weakObj3 : MonoBehaviour, IDropHandler
 {
-    private GameObject go;
+    private GameObject go; //!< permet de trouver un GameObject
 
+    //! @param enventData Donnée de l'event @b OnDrop(PointerEventData)
+    //! @brief supprime l'objet quand il est posé sur la poubelle 
+    //! @details lorsque l'on relache l'objet sur la poubelle il se fait détruire et retire la difficultée et rajoute un objet dans le nombre max
     public void OnDrop(PointerEventData eventData)
     {
 
diff --git a/T3-Unity/Assets/Scripts/Obstacle/weak/weakObj4.cs b/T3-Unity/Assets/Scripts/Obstacle/weak/weakObj4.cs
index cb6e5dbc4053ea63ade2b22d5c58bffa8a12ac6b..3d903f79a6e8267e20cf8bcd0721ba4e7d01902e 100644
--- a/T3-Unity/Assets/Scripts/Obstacle/weak/weakObj4.cs
+++ b/T3-Unity/Assets/Scripts/Obstacle/weak/weakObj4.cs
@@ -2,10 +2,18 @@
 using System.Collections.Generic;
 using UnityEngine;
 using UnityEngine.EventSystems;
+
+//! @authors cgroxy
+//! @brief Détruit l'obstacle si posé sur la poubelle 
+//! @details Cette classe permet de d'étruire un objet quand il est posé sur un autre objet poubelle 
+//! tout en modifiant la difficulté en fonction de la force de l'objet
 public class weakObj4 : MonoBehaviour, IDropHandler
 {
-    private GameObject go;
+    private GameObject go; //!< permet de trouver un GameObject
 
+    //! @param enventData Donnée de l'event @b OnDrop(PointerEventData)
+    //! @brief supprime l'objet quand il est posé sur la poubelle 
+    //! @details lorsque l'on relache l'objet sur la poubelle il se fait détruire et retire la difficultée et rajoute un objet dans le nombre max
     public void OnDrop(PointerEventData eventData)
     {
 
diff --git a/T3-Unity/Assets/Scripts/UI/DiffScale.cs b/T3-Unity/Assets/Scripts/UI/DiffScale.cs
index b17b54d39e0b29814fe9bdb1464370446c5c1024..4eb99fbcbb14cebace704301d802504f9d17f218 100644
--- a/T3-Unity/Assets/Scripts/UI/DiffScale.cs
+++ b/T3-Unity/Assets/Scripts/UI/DiffScale.cs
@@ -4,10 +4,15 @@ using UnityEngine;
 using UnityEngine.EventSystems;
 using TMPro;
 
+//! @authors cgroxy
+//! @brief Parmet de limiter la difficultée et le nombre d'obstacles tout en les affichants correctement
+//! @details Cette classe impose des valeurs minimale pour la difficultée et les nombre d'obstacles et gêre leurs affichage
 public class DiffScale : MonoBehaviour
 {
-    public TMP_Text textshowed;
-    // Start is called before the first frame update
+    // Champs publiques
+    public TMP_Text textshowed; //!< permet de changer le texte qui affiche le nombre d'obstacles
+
+    //! @brief Se lance au lancement du script.
     void Start()
     {
         Ui.motiv = 5f;
@@ -15,7 +20,8 @@ public class DiffScale : MonoBehaviour
         Ui.nbObst = 5;
     }
 
-    // Update is called once per frame
+    //! @brief Se lance à chaque frame
+    //! @details impose des valeurs minimale pour la difficultée et le nombre d'obstacles tout en les affichants ensuite
     void Update()
     {
         float ech = Ui.difficulty/10;
diff --git a/T3-Unity/Assets/Scripts/UI/MotivScale.cs b/T3-Unity/Assets/Scripts/UI/MotivScale.cs
index 6ce9f45990827464eaff227642e1e7936091d149..d4039efeff72fba907b18fa96962d6421dfc7f12 100644
--- a/T3-Unity/Assets/Scripts/UI/MotivScale.cs
+++ b/T3-Unity/Assets/Scripts/UI/MotivScale.cs
@@ -2,15 +2,17 @@
 using System.Collections.Generic;
 using UnityEngine;
 
+//! @authors cgroxy
+//! @brief Permet de set la difficultée en fonction de la réputation 
+//! @details Cette classe modifie la difficultée néssécaire pour d'augementer la motivation des coureurs en fonction de la réputation et affiche la barre de motivation
 public class MotivScale : MonoBehaviour
 {
-    public static int diff_max;
-    public static int diff_min;
-    void Start()
-    {
-        
-    }
+    // Champs publiques
+    public static int diff_max; //!< balise pour la difficulté maximale
+    public static int diff_min; //!< balise pour la difficulté minimale
 
+    //! @brief Se lance à chaque frame
+    //! @details Set la difficultés en fonction de la réputation et affiche la bare de motivation
     void Update()
     {
         
diff --git a/T3-Unity/Assets/Scripts/UI/Ui.cs b/T3-Unity/Assets/Scripts/UI/Ui.cs
index e2d9b966e030de08784eaf2f442cc99cf0f258f5..0a443ba8d2fd6b91c01daafea309b63a98c9b00e 100644
--- a/T3-Unity/Assets/Scripts/UI/Ui.cs
+++ b/T3-Unity/Assets/Scripts/UI/Ui.cs
@@ -3,20 +3,23 @@ using System.Collections.Generic;
 using UnityEngine;
 using TMPro;
 
+
+//! @authors cgroxy
+//! @brief Contient bon nombre de variables utiles
+//! @details cette classe s'occupe de garder et d'instancier différentes valeurs utiles pour les autres classes liées a l'UI
 public class Ui : MonoBehaviour
 {
+    // Champs publiques
+    public static bool stop = false; //!<
+    public static bool start = false; //!<
+
 
-    public static bool stop = false;
-    public static bool start = false;
-   
+    public static float motiv; //!< Stocke la moyenne de la motivation des joueurs
+    public static float difficulty; //!< Stocke la difficultée
 
-    public static float motiv;
-    public static float difficulty;
+    public static int fame; //!< Stocke la réputation
+    public static int nbObst = 5; //!< Stocke le nombre d'objets à placer 
 
-    public static int fame;
-    public static int nbObst = 5;
+    public static string nameObj; //!< stocke le nom des objets appelés 
 
-    public static string nameObj;
-    public GameObject prefab;
-    public Canvas parent;
 }
diff --git a/T3-Unity/Assets/Scripts/UI/ValidateGame.cs b/T3-Unity/Assets/Scripts/UI/ValidateGame.cs
index b8a1b521a2baf06cc82d01cd4ed93d558cb881d7..4469d5fbb87eb72f66402012d7f5df8317ec508f 100644
--- a/T3-Unity/Assets/Scripts/UI/ValidateGame.cs
+++ b/T3-Unity/Assets/Scripts/UI/ValidateGame.cs
@@ -3,16 +3,21 @@
     using UnityEngine;
     using TMPro;
 
-    //! @authors 
-    //! @brief 
-    //! @details 
+    //! @authors cgroxy
+    //! @brief Modifie la réputation une fois une course terminée 
+    //! @details cette classe s'occupe de augementer le réputation a chaque fois qu'une course est achevée 
     public class ValidateGame : MonoBehaviour
     {
+        // Champs publiques
+        public TMP_Text textshowed; //!< permet de changer le texte qui affiche la réputation
 
-        public TMP_Text textshowed;
-        int actual_fame;
+        int actual_fame; //!< réputation ajoutée 
+
+        // Champs privés
         private static ValidateGame instance;
 
+        //! @brief Se lance au lancement du script.
+        //! @details Définie l'affichage de la réputation
         private void Start()
         {
             instance = this;
@@ -21,11 +26,15 @@
             textshowed.text = "Réputation : " + actual_fame.ToString();
         }
 
+        //! @brief getteur de l'instance
+        //! @detail permet de retourner l'instance
         public static ValidateGame getInstance()
         {
             return instance;
         }
 
+        //! @brief change la valeur de la réputation
+        //! @detail permet de ajouter une certaine valeur à la reputation en fonction de la motivation une fois une course finie et de stoper la motivation
         public void changeFame()
         {
             actual_fame = Ui.fame;
@@ -53,7 +62,8 @@
             SaveVariable.Save();
         }
 
-
+        //! @brief lance la réputation
+        //! @detail 
         public void startFame()
         {
             if (Ui.stop == true)
diff --git a/T3-Unity/Assets/Scripts/UI/nbObstacle.cs b/T3-Unity/Assets/Scripts/UI/nbObstacle.cs
index dfe5b4b2dc117508f1e27e83559c8881d9b91060..92bde9ee96f4c232faa7c03fecbe77c85f2d68ef 100644
--- a/T3-Unity/Assets/Scripts/UI/nbObstacle.cs
+++ b/T3-Unity/Assets/Scripts/UI/nbObstacle.cs
@@ -3,11 +3,17 @@ using System.Collections.Generic;
 using UnityEngine;
 using TMPro;
 
+//! @authors cgroxy
+//! @brief change le texte des obstacles
+//! @details Cette classe permet de changer le texte qui affiche le noumbre d'obstacle plaçable sur la map
+
 public class nbObstacle : MonoBehaviour
 {
+    // Champs publiques
+    public TMP_Text textshowed; //!< permet de changer le texte qui affiche la réputation
 
-    public TMP_Text textshowed;
-
+    //! @brief Se lance au lancement du script.
+    //! @details Change le texte des obstacles
     private void Start()
     {
         textshowed.GetComponent<TMP_Text>().text = "Obstacles restants : " + Ui.nbObst.ToString();