• S'inscrire
    • Se connecter
    • Recherche
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes

    [GUI] Comment creer une fenetre pour afficher le contenu d'un fichier

    Sans suite
    1.6.2
    4
    12
    4292
    Charger plus de messages
    • Du plus ancien au plus récent
    • Du plus récent au plus ancien
    • Les plus votés
    Répondre
    • Répondre à l'aide d'un nouveau sujet
    Se connecter pour répondre
    Ce sujet a été supprimé. Seuls les utilisateurs avec les droits d'administration peuvent le voir.
    • mohshow
      mohshow dernière édition par

      Bonjour tous le monde,
      je souhaite créer un mod associé à mon outil de génération de liste d’objectif (Topic de présentation ici).

      En gros ce que je souhaite faire, c’est une fenêtre qui s’ouvre avec un raccourci clavier (Je l’ai déjà fait).
      Dans cette fenêtre, je veux qu’il affiche le contenu d’un fichier texte ou xml.
      J’ai déjà fait l’image du GUI. C’est un peu comme un livre signé dans minecraft.

      Je n’ai rien trouver sur internet qui soit clair et français. A part ca : http://www.minecraftforge.net/wiki/Containers_and_GUIs
      Mais ca parle surtout des Containers (interface de l’inventaire ou coffre par exemple).

      Il n’y a pas de tuto qui traite ce sujet dans le forum.

      Je débute dans le modding.

      1 réponse Dernière réponse Répondre Citer 0
      • robin4002
        robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par

        Dans les gui il y a une fonction qui sert à afficher des textes, tu as juste à faire un boucle for et une array list de toute les lignes que tu veux afficher, et pour lire le contenue d’un fichier texte, c’est du java, pas du modding forge.

        1 réponse Dernière réponse Répondre Citer 0
        • mohshow
          mohshow dernière édition par

          Merci pour tes infos.

          Je veux faire un peu comme un livre signé dans minecraft.

          Je veux afficher une fenetre comme ca:

          En grand dans le jeu, et dans cette fenetre sera afficher le contenu du fichier. Pourquoi pas mettre l’array directement dans le fichier. ^^
          Je verrai plus tard pour ajouter ces boutons…

          Pour le moment comme on fait pour afficher cette interface ?

          1 réponse Dernière réponse Répondre Citer 0
          • robin4002
            robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par

            Tu créer un gui avec la fonction pour afficher la texture (voir tutoriel sur le four, au pire je vais bientôt faire un tutoriel sur les gui & container)
            Tu veux que l’interface s’affiche suite à quel action ?

            1 réponse Dernière réponse Répondre Citer 0
            • mohshow
              mohshow dernière édition par

              Je veux qu’il s’affiche après avoir appuyer sur un raccourci clavier. Je l’ai deja fait.

              ObjectifKeyHandler.java: http://pastebin.com/cjzBMaV7

              1 réponse Dernière réponse Répondre Citer 0
              • robin4002
                robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par

                Il faudrait passer par un tick handler je pense.

                1 réponse Dernière réponse Répondre Citer 0
                • mohshow
                  mohshow dernière édition par

                  Vous savez quoi, pour le moment je vais laisser tomber pour la texture. Je verrai cà pour plus tard dans une autre version.

                  Là j’ai reussi à faire un fond noir avec texte dedans comme dans le menu pause.

                  Il me reste encore a ajouter un bouton pour revenir au jeu et faire une boucle for pour afficher le contenu du fichier.

                  GuiObjectif.java : http://pastebin.com/XTdPar1T

                  EDIT: J’ai reussi à mettre le bouton de retour en jeu. Je m’occupe maintenant la zone de texte.

                  1 réponse Dernière réponse Répondre Citer 0
                  • Minecraftienne
                    Minecraftienne dernière édition par

                    Moi aussi pour un journal de quêtes j’ai besoin de mettre une texture en fond, j’ai essayé un tas de méthodes et rien n’a fonctionné, je n’ai pas trouvé de tuto pour la 1.6 parlant de ça T_T

                    1 réponse Dernière réponse Répondre Citer 0
                    • Gugu
                      Gugu dernière édition par

                      Texture d’un GuiContainer :

                      
                      public class GuiSmelter extends GuiContainer
                      {
                      private TileEntitySmelter furnaceInventory;
                      
                      public GuiSmelter(InventoryPlayer par1InventoryPlayer, TileEntitySmelter par2TileEntityFurnace)
                      {
                      super(new ContainerSmelter(par1InventoryPlayer, par2TileEntityFurnace));
                      this.furnaceInventory = par2TileEntityFurnace;
                      }
                      
                      /**
                      * Draw the foreground layer for the GuiContainer (everything in front of the items)
                      */
                      protected void drawGuiContainerForegroundLayer(int par1, int par2)
                      {
                      String s = this.furnaceInventory.isInvNameLocalized() ? this.furnaceInventory.getInvName() : StatCollector.translateToLocal(this.furnaceInventory.getInvName());
                      this.fontRenderer.drawString(s, this.xSize / 2 - this.fontRenderer.getStringWidth(s) / 2, 6, 4210752);
                      this.fontRenderer.drawString(StatCollector.translateToLocal("container.inventory"), 8, this.ySize - 96 + 2, 4210752);
                      }
                      
                      /**
                      * Draw the background layer for the GuiContainer (everything behind the items)
                      */
                      protected void drawGuiContainerBackgroundLayer(float par1, int par2, int par3)
                      {
                      GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
                      Minecraft.getMinecraft().renderEngine.func_110577_a(new ResourceLocation("legendmod:textures/gui/smelterGui.png"));
                      int k = (this.width - this.xSize) / 2;
                      int l = (this.height - this.ySize) / 2;
                      this.drawTexturedModalRect(k, l, 0, 0, this.xSize, this.ySize);
                      int i1;
                      
                      if (this.furnaceInventory.isBurning())
                      {
                      i1 = this.furnaceInventory.getBurnTimeRemainingScaled(12);
                      this.drawTexturedModalRect(k + 56, l + 36 + 12 - i1, 176, 12 - i1, 14, i1 + 2);
                      }
                      
                      i1 = this.furnaceInventory.getCookProgressScaled(24);
                      this.drawTexturedModalRect(k + 79, l + 34, 176, 14, i1 + 1, 16);
                      }
                      }
                      
                      

                      "If you have a comprehensive explanation for everything then it decreases uncertainty and anxiety and reduces your cognitive load. And if you can use that simplifying algorithm to put yourself on the side of moral virtue then you’re constantly a good person with a minimum of effort."
                      ― Jordan B. Peterson

                      1 réponse Dernière réponse Répondre Citer 0
                      • mohshow
                        mohshow dernière édition par

                        Mais ca c’est pour un GUI Container. Container c’est à dire un interface avec des slots. (Ex: l’inventaire, table craft…)
                        En fait il faut utiliser la class GuiScreen au lieu de GuiContainer pour ce genre de chose.

                        Par contre là, ce qui m’intéresserait en ce moment, c’est comment faire des scrollbar verticale dans une zone de texte ?

                        1 réponse Dernière réponse Répondre Citer 0
                        • Gugu
                          Gugu dernière édition par

                          Je ne sais pas du tout :[

                          "If you have a comprehensive explanation for everything then it decreases uncertainty and anxiety and reduces your cognitive load. And if you can use that simplifying algorithm to put yourself on the side of moral virtue then you’re constantly a good person with a minimum of effort."
                          ― Jordan B. Peterson

                          1 réponse Dernière réponse Répondre Citer 0
                          • robin4002
                            robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par

                            GuiLanguage.java

                            1 réponse Dernière réponse Répondre Citer 0
                            • 1 / 1
                            • Premier message
                              Dernier message
                            Design by Woryk
                            Contact / Mentions Légales

                            MINECRAFT FORGE FRANCE © 2018

                            Powered by NodeBB