diff --git a/ElderInternalIgnition/ElderInternalIgnition.cbp b/ElderInternalIgnition/ElderInternalIgnition.cbp
index 5d8ef81ab533274d5e058ecfa5ff10d1704a9577..10dd3bb8b8c7fe57734807dc1e10a6fb3ffa6a36 100644
--- a/ElderInternalIgnition/ElderInternalIgnition.cbp
+++ b/ElderInternalIgnition/ElderInternalIgnition.cbp
@@ -49,6 +49,10 @@
 			<Option compilerVar="CC" />
 		</Unit>
 		<Unit filename="../src/ClassesXML.h" />
+		<Unit filename="../src/Interface.c">
+			<Option compilerVar="CC" />
+		</Unit>
+		<Unit filename="../src/Interface.h" />
 		<Unit filename="../src/SDL.c">
 			<Option compilerVar="CC" />
 		</Unit>
@@ -57,6 +61,11 @@
 			<Option compilerVar="CC" />
 		</Unit>
 		<Unit filename="../src/TerrainsXML.h" />
+		<Unit filename="../src/TexturesXML.c">
+			<Option compilerVar="CC" />
+			<Option target="&lt;{~None~}&gt;" />
+		</Unit>
+		<Unit filename="../src/TexturesXML.h" />
 		<Unit filename="../src/affichage.h" />
 		<Unit filename="../src/affichageConsole2.c">
 			<Option compilerVar="CC" />
diff --git a/resources/GUI.xml b/resources/GUI.xml
new file mode 100644
index 0000000000000000000000000000000000000000..da74b1997ec1beb509d088cf47b488e0ff8cb6b0
--- /dev/null
+++ b/resources/GUI.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<Interface>
+  <Textures>
+    <Skin id="SI_RESUME" f_default="../resources/Skins/continuer.bmp">
+    </Skin>
+    <Skin id="ST_QUIT" f_default="../resources/Skins/quitter.bmp">
+    </Skin>
+  </Textures>
+</Interface>
diff --git a/resources/Skins.xml b/resources/Skins.xml
deleted file mode 100644
index 9ca62f9ab2c37e74e42e92ad31b53539585fb6cf..0000000000000000000000000000000000000000
--- a/resources/Skins.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<Skins>
-
-  <Personnages>
-    <Skin id="SP_MAGE"  f_default="../resources/Skins/mage.bmp"  f_selected="../resources/Skins/mage_selected.bmp" f_healed="../resources/Skins/mage_healed.bmp" f_damaged="../resources/Skins/mage_damaged.bmp">
-    </Skin>
-    <Skin id="SP_WAR"  f_default="../resources/Skins/guerrier.bmp"  f_selected="../resources/Skins/guerrier_selected.bmp" f_healed="../resources/Skins/guerrier_healed.bmp" f_damaged="../resources/Skins/guerrier_damaged.bmp">
-    </Skin>
-    <Skin id="SP_HEAL"  f_default="../resources/Skins/guerisseur.bmp"  f_selected="../resources/Skins/guerisseur_selected.bmp" f_healed="../resources/Skins/guerisseur_healed.bmp" f_damaged="../resources/Skins/guerisseur_damaged.bmp">
-    </Skin>
-    <Skin id="SP_ROGUE"  f_default="../resources/Skins/voleur.bmp"  f_selected="../resources/Skins/voleur_selected.bmp" f_healed="../resources/Skins/voleur_healed.bmp" f_damaged="../resources/Skins/voleur_damaged.bmp">
-    </Skin>
-    <Skin id="SP_ARCHER"  f_default="../resources/Skins/voleurarcher.bmp"  f_selected="../resources/Skins/archer_selected.bmp" f_healed="../resources/Skins/archer_healed.bmp" f_damaged="../resources/Skins/archer_damaged.bmp">
-    </Skin>
-  </Personnages>
-
-  <Terrains>
-    <Skin id="ST_FOREST"  f_default="../resources/Skins/foret.bmp">
-    </Skin>
-    <Skin id="ST_PLAIN"  f_default="../resources/Skins/plaine.bmp">
-    </Skin>
-    <Skin id="ST_MOUNTAIN"  f_default="../resources/Skins/montagne.bmp">
-    </Skin>
-    <Skin id="ST_WATER"  f_default="../resources/Skins/eau.bmp">
-    </Skin>
-    <Skin id="ST_ACTIVE"  f_default="../resources/Skins/case_brillante.bmp">
-    </Skin>
-  </Terrains>
-
-  <Interface>
-    <Skin id="SI_RESUME"  f_default="../resources/Skins/continuer.bmp">
-    </Skin>
-    <Skin id="ST_QUIT"  f_default="../resources/Skins/quitter.bmp">
-    </Skin>
-  </Interface>
-
-</Skins>
diff --git a/src/Interface.c b/src/Interface.c
new file mode 100644
index 0000000000000000000000000000000000000000..efad5ec0d72f139c9ef2fc798604169ca13efa7b
--- /dev/null
+++ b/src/Interface.c
@@ -0,0 +1,45 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <roxml.h>
+
+#include "Interface.h"
+#include "structures.h"
+
+/*!
+* \file Interface.c
+* \brief Fichier contenant le code des fonctions d'aquisition des classes.
+*/
+
+Skins_GUI* Get_Skins_GUI(char *filename)
+{
+    node_t *rootXML, *Interface, *Textures, *Skin;
+    int nb_Skins=0, i=0;
+
+    rootXML = roxml_load_doc(filename);
+    Interface = roxml_get_chld(rootXML, NULL, 0);
+    Textures = roxml_get_chld(Interface, NULL, 0);
+
+    nb_Skins = roxml_get_chld_nb(Textures);
+
+    Skins_GUI* Textures_Interface = NULL;
+    Textures_Interface = malloc(nb_Skins * sizeof(Skins_GUI));
+
+    for(i=0; i<nb_Skins; i++)
+    {
+        char *id_text, *f_default;
+        Skin = roxml_get_chld(Textures, NULL, i);
+
+        id_text = roxml_get_content(roxml_get_attr(Skin, "id", 0), NULL, 0, NULL);
+        f_default = roxml_get_content(roxml_get_attr(Skin, "f_default", 0), NULL, 0, NULL);
+
+        strcpy(Textures_Interface[i].id, id_text);
+        strcpy(Textures_Interface[i].GUI_default, f_default);
+
+        /* Tests *//*
+        printf("ID vaut : %s\n",Textures_Interface[i].id);
+        printf("Default vaut : %s\n",Textures_Interface[i].GUI_default);*/
+        /* ---- */
+    }
+
+    return Textures_Interface;
+}
diff --git a/src/Interface.h b/src/Interface.h
new file mode 100644
index 0000000000000000000000000000000000000000..550b7406f7ae5382e8ce554ccf78b514720c6275
--- /dev/null
+++ b/src/Interface.h
@@ -0,0 +1,15 @@
+/*!
+* \file Interface.h
+* \brief Fichier contenant les signatures des fonctions liees à l'interface.
+*/
+
+#ifndef TEXTURESXML_H_INCLUDED
+#define TEXTURESXML_H_INCLUDED
+
+#include <roxml.h>
+#include "structures.h"
+
+Skins_GUI* Get_Skins_GUI(char *filename);
+
+
+#endif // TEXTURESXML_H_INCLUDED
diff --git a/src/main.c b/src/main.c
index cf42786680526100815a787be916173dd8de505a..998074b93cebf6977ec82dc59cd1cf7a33f38b69 100644
--- a/src/main.c
+++ b/src/main.c
@@ -7,10 +7,20 @@
 #include "SDL.h"
 #include "roxml.h"
 #include "carte.h"
+#include "Interface.h"
 
-int init_jeu(char *filename){ /* crée les différents types de terrains, de classes et d'attaques en lisant dans un fichier */
-   FILE *fichier_init;
-   fichier_init=fopen(filename,"r");
+
+/*!
+ * \fn int init_jeu(char *filename)
+ * \brief Fonction d'initialisation du jeu
+ *
+ * \param Le fichier d'initialisation
+ * \return un entier
+ */
+int init_jeu(char *filename)
+{
+    FILE *fichier_init;
+    fichier_init=fopen(filename,"r");
     if (fichier_init!=NULL)
     {
         node_t *rootXML, *ConfigXML, *Classes, *Terrains;
@@ -62,7 +72,9 @@ int init_jeu(char *filename){ /* cr
 
         fclose(fichier_init);
 
-    }else{
+    }
+    else
+    {
         fprintf(stderr,"Erreur dans l'ouverture du fichier");
         return 1;
     }
@@ -70,40 +82,49 @@ int init_jeu(char *filename){ /* cr
 }
 
 
-
-
-int main()
+/*!
+ * \fn Game_Package Construire_Package()
+ * \brief Fonction de construction d'un package contenant l'univers du jeu
+ *
+ * \return un Game_Package
+ */
+Game_Package Construire_Package()
 {
+    Game_Package Pack;
 
-//init_jeu("../resources/Init_jeu.xml");
+    Classe* Classes_Pack = Librairie_Classes("../resources/Classes.xml");
+    Terrain* Terrains_Pack = Librairie_Terrains("../resources/Terrains.xml");
+    Skins_GUI* GUI_Pack = Get_Skins_GUI("../resources/GUI.xml");
 
-char *Map_A = ExtraireCarte(4);
-printf("Map en version texte : %s\n", Map_A);
+    Pack.Classes_Package = Classes_Pack;
+    Pack.Terrains_Package = Terrains_Pack;
+    Pack.GUI_Package = GUI_Pack;
 
+    return Pack;
+}
 
-/* -------------------------------------*/
-/* Creation d'un package de jeu */
-/* -------------------------------------*/
-
-Game_Package Pack_A;
-
-Classe* Classes_Pack = Librairie_Classes("../resources/Classes.xml");
-Terrain* Terrains_Pack = Librairie_Terrains("../resources/Terrains.xml");
 
+int main()
+{
 
-Pack_A.Classes_Package = Classes_Pack;
-Pack_A.Terrains_Package = Terrains_Pack;
+//init_jeu("../resources/Init_jeu.xml");
 
+    char *Map_A = ExtraireCarte(4);
+    printf("Map en version texte : %s\n", Map_A);
 
 
+    Game_Package Pack_A = Construire_Package();
 
-/* -------------------------------------*/
-/* -------------------------------------*/
+    /* -------------------------------------*/
+    /* Comment utiliser le package : */
+    /* -------------------------------------*/
 
-printf("On a : %s\n",Pack_A.Terrains_Package[0].skin_default);
+    printf("L'attaque 1 du mage est : %s\n",Pack_A.Classes_Package[0].attaques[0].nom);
+    printf("Le nom du terrain 1 est : %s\n",Pack_A.Terrains_Package[0].nomTerrain);
+    printf("L'adresse de la texture GUI 1 est : %s\n",Pack_A.GUI_Package[0].GUI_default);
 
-main_SDL(Map_A);
+    main_SDL(Map_A);
 
 
-return 0;
+    return 0;
 }
diff --git a/src/structures.h b/src/structures.h
index de2f7972db7429e29c5e2edb46b74ed9234294fa..17e4dbd303e48fedd990158fea8e7fc83ed5a4b1 100644
--- a/src/structures.h
+++ b/src/structures.h
@@ -51,10 +51,8 @@ typedef enum {faux, vrai} boolean;
 } Skins_Charac;
 
  typedef struct Skins_GUI{
-    char charac_default[50];
-    char charac_selected[50];
-    char charac_healed[50];
-    char charac_damaged[50];
+    char id[50];
+    char GUI_default[50];
 } Skins_GUI;
 
 
@@ -175,6 +173,7 @@ typedef struct Effet_Competence{
 typedef struct Game_Package{
     Classe* Classes_Package;
     Terrain* Terrains_Package;
+    Skins_GUI* GUI_Package;
 }Game_Package;