MFF

    Minecraft Forge France
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes
    • Forge Events
      • Automatique
      • Foncé
      • Clair
    • S'inscrire
    • Se connecter

    Ajouter un bouton à un GUI

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    63 Messages 6 Publieurs 14.0k Vues 1 Watching
    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.
    • robin4002R Hors-ligne
      robin4002 Moddeurs confirmés Rédacteurs Administrateurs
      dernière édition par

      En effet il ne devrait pas avoir de @Override sur le constructeur.

      1 réponse Dernière réponse Répondre Citer 0
      • DiabolicaTrixD Hors-ligne
        DiabolicaTrix Correcteurs Moddeurs confirmés
        dernière édition par

        Je voulais le mettre sur drawButton mais je me suis trompé, quoique je ne sais pas si il le faut vraiment

        1 réponse Dernière réponse Répondre Citer 0
        • Benjamin LoisonB Hors-ligne
          Benjamin Loison
          dernière édition par

          Toujours cette erreur : [size=x-smallImplicit super constructor GuiButton() is undefined. Must explicity invoke another constructor ligne 25 sur public GuiAC(…) :]

          ​package fr.altiscraft.altiscraft.common;
          
          import org.lwjgl.opengl.GL11;
          
          import cpw.mods.fml.relauncher.Side;
          import cpw.mods.fml.relauncher.SideOnly;
          import net.minecraft.client.Minecraft;
          import net.minecraft.client.audio.PositionedSoundRecord;
          import net.minecraft.client.audio.SoundHandler;
          import net.minecraft.client.gui.FontRenderer;
          import net.minecraft.client.gui.GuiButton;
          import net.minecraft.client.renderer.OpenGlHelper;
          import net.minecraft.util.ResourceLocation;
          
          @SideOnly(Side.CLIENT)
          public class GuiAC extends GuiButton {
          
          protected static final ResourceLocation buttonTextures = new ResourceLocation(ModAltisCraft.MODID,
          "textures/gui/widgets.png");
          
          public GuiAC(int p_i1020_1_, int p_i1020_2_, int p_i1020_3_, String p_i1020_4_) {
          super(p_i1020_1_, p_i1020_2_, p_i1020_3_, p_i1020_4_);
          }
          
          public GuiAC(int id, int xPosition, int yPosition, int width, int height, String displayString) {
          this.width = 200;
          this.height = 20;
          this.enabled = true;
          this.visible = true;
          this.id = id;
          this.xPosition = xPosition;
          this.yPosition = yPosition;
          this.width = width;
          this.height = height;
          this.displayString = displayString;
          }
          
          public void drawButton(Minecraft mc, int x, int y) {
          if (this.visible) {
          FontRenderer fontrenderer = mc.fontRenderer;
          mc.getTextureManager().bindTexture(buttonTextures);
          GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
          this.field_146123_n = x >= this.xPosition && y >= this.yPosition
          && x < this.xPosition + this.width && y < this.yPosition + this.height;
          int k = this.getHoverState(this.field_146123_n);
          GL11.glEnable(GL11.GL_BLEND);
          OpenGlHelper.glBlendFunc(770, 771, 1, 0);
          GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
          this.drawTexturedModalRect(this.xPosition, this.yPosition, 0, 46 + k * 20, this.width / 2, this.height);
          this.drawTexturedModalRect(this.xPosition + this.width / 2, this.yPosition, 200 - this.width / 2,
          46 + k * 20, this.width / 2, this.height);
          this.mouseDragged(mc, x, y);
          int l = 14737632;
          
          if (packedFGColour != 0) {
          l = packedFGColour;
          } else if (!this.enabled) {
          l = 10526880;
          } else if (this.field_146123_n) {
          l = 16777120;
          }
          
          this.drawCenteredString(fontrenderer, this.displayString, this.xPosition + this.width / 2,
          this.yPosition + (this.height - 8) / 2, l);
          }
          }
          }
          
          

          >! Développeur de Altis-Life (Arma III) sur Minecraft !
          >! Site web     : https://lemnoslife.com

          1 réponse Dernière réponse Répondre Citer 0
          • DiabolicaTrixD Hors-ligne
            DiabolicaTrix Correcteurs Moddeurs confirmés
            dernière édition par

            Essaie ça:

            ​package fr.altiscraft.altiscraft.common;
            
            import org.lwjgl.opengl.GL11;
            
            import cpw.mods.fml.relauncher.Side;
            import cpw.mods.fml.relauncher.SideOnly;
            import net.minecraft.client.Minecraft;
            import net.minecraft.client.audio.PositionedSoundRecord;
            import net.minecraft.client.audio.SoundHandler;
            import net.minecraft.client.gui.FontRenderer;
            import net.minecraft.client.gui.GuiButton;
            import net.minecraft.client.renderer.OpenGlHelper;
            import net.minecraft.util.ResourceLocation;
            
            @SideOnly(Side.CLIENT)
            public class GuiAC extends GuiButton {
            
            protected static final ResourceLocation buttonTextures = new ResourceLocation(ModAltisCraft.MODID,
            "textures/gui/widgets.png");
            
               public GuiAC(int id, int xPosition, int yPosition, String nomdubouton)
               {
                   super(id, xPosition, yPosition, longueurdubouton, largeurdubouton, nomdubouton);
               }
            
            public void drawButton(Minecraft mc, int x, int y) {
            if (this.visible) {
            FontRenderer fontrenderer = mc.fontRenderer;
            mc.getTextureManager().bindTexture(buttonTextures);
            GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
            this.field_146123_n = x >= this.xPosition && y >= this.yPosition
            && x < this.xPosition + this.width && y < this.yPosition + this.height;
            int k = this.getHoverState(this.field_146123_n);
            GL11.glEnable(GL11.GL_BLEND);
            OpenGlHelper.glBlendFunc(770, 771, 1, 0);
            GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
            this.drawTexturedModalRect(this.xPosition, this.yPosition, 0, 46 + k * 20, this.width / 2, this.height);
            this.drawTexturedModalRect(this.xPosition + this.width / 2, this.yPosition, 200 - this.width / 2,
            46 + k * 20, this.width / 2, this.height);
            this.mouseDragged(mc, x, y);
            int l = 14737632;
            
            if (packedFGColour != 0) {
            l = packedFGColour;
            } else if (!this.enabled) {
            l = 10526880;
            } else if (this.field_146123_n) {
            l = 16777120;
            }
            
            this.drawCenteredString(fontrenderer, this.displayString, this.xPosition + this.width / 2,
            this.yPosition + (this.height - 8) / 2, l);
            }
            }
            
            }
            

            Donc quand tu appelle ça donne: buttonList.add(new GuiAC(0, guiX + 8, guiY + 12 + 5, label));

            Il faut que tu retire la grandeur du bouton et que tu l’ajoute à la main dans ta classe GuiAC u il est écrit: longueurdubouton, largeurdubouton

            1 réponse Dernière réponse Répondre Citer 0
            • Benjamin LoisonB Hors-ligne
              Benjamin Loison
              dernière édition par

              C’est bon merci énormément mais sinon j’ai une autre question ^^ comment changer la couleur du message qu’on a mis lorsqu’on passe la souris dessus comme “RETIRER” ?

              >! Développeur de Altis-Life (Arma III) sur Minecraft !
              >! Site web     : https://lemnoslife.com

              1 réponse Dernière réponse Répondre Citer 0
              • DiabolicaTrixD Hors-ligne
                DiabolicaTrix Correcteurs Moddeurs confirmés
                dernière édition par

                Que evux-tu dire: “comme “RETIRER”?”?

                1 réponse Dernière réponse Répondre Citer 0
                • isadorI Hors-ligne
                  isador Moddeurs confirmés Modérateurs
                  dernière édition par

                  tu parle du changement de texture l’ors du mouseOver? dans ce cas la utilise la fonction isMouseOver et tu rebind la texture

                  1 réponse Dernière réponse Répondre Citer 0
                  • DiabolicaTrixD Hors-ligne
                    DiabolicaTrix Correcteurs Moddeurs confirmés
                    dernière édition par

                    public int getHoverState(boolean p_146114_1_)
                    {
                    byte b0 = 1;
                    
                    if (!this.enabled)
                    {
                    b0 = 0;
                    }
                    else if (p_146114_1_)
                    {
                    b0 = 2;
                    }
                    
                    return b0;
                    }
                    

                    Essaye de bidouiller avec ça, la fonction retourne 1 si le bouton est désactivé, 2 si le bouton est activé et deux si la souris la “survole”

                    1 réponse Dernière réponse Répondre Citer 0
                    • SCAREXS Hors-ligne
                      SCAREX
                      dernière édition par

                      Il faut regarder la position de la souris, regarde dans la classe GuiButton

                      Site web contenant mes scripts : http://SCAREXgaming.github.io

                      Pas de demandes de support par MP ni par skype SVP.
                      Je n'accepte sur skype que l…

                      1 réponse Dernière réponse Répondre Citer 0
                      • DiabolicaTrixD Hors-ligne
                        DiabolicaTrix Correcteurs Moddeurs confirmés
                        dernière édition par

                        J’ai justement envoyé la fonction que GuiButton utilise.

                        1 réponse Dernière réponse Répondre Citer 0
                        • SCAREXS Hors-ligne
                          SCAREX
                          dernière édition par

                          Pas vraiment, cette fonction ne fait pas tout, il faut changer le draw.

                          Site web contenant mes scripts : http://SCAREXgaming.github.io

                          Pas de demandes de support par MP ni par skype SVP.
                          Je n'accepte sur skype que l…

                          1 réponse Dernière réponse Répondre Citer 0
                          • DiabolicaTrixD Hors-ligne
                            DiabolicaTrix Correcteurs Moddeurs confirmés
                            dernière édition par

                            Ouais je sais mais j’ai dit ce que la fonction faisait, elle retourne 0, 1 ou 2

                            1 réponse Dernière réponse Répondre Citer 0
                            • Benjamin LoisonB Hors-ligne
                              Benjamin Loison
                              dernière édition par

                              Pour faire sur mon code du bouton “RETIRER”.

                              Bon par exemple mon ATM il est comme ça : 

                              Et quand on passe la souris sur le bouton “RETIRER” ça prend cette tête :

                              Mais j’aimerais que si on zoom bien on voit “RETIRER” (le texte) qui a changé de couleur fait à partir d’un montage comment le faire vraiment ?

                              >! Développeur de Altis-Life (Arma III) sur Minecraft !
                              >! Site web     : https://lemnoslife.com

                              1 réponse Dernière réponse Répondre Citer 0
                              • DiabolicaTrixD Hors-ligne
                                DiabolicaTrix Correcteurs Moddeurs confirmés
                                dernière édition par

                                1. if (packedFGColour != 0) {
                                2. l = packedFGColour;
                                3. } else if (!this.enabled) {
                                4. l = 10526880;
                                5. } else if (this.field_146123_n) {
                                6. l = 16777120; <– ICI
                                7. }

                                Tu modifie la valeur où j’ai écrit ici, c’est la couleur du texte quand ta souris est dessus. Les couleurs sont en décimal donc rouge est 16711680.

                                PS: Je t’ai envoyé un mp.

                                1 réponse Dernière réponse Répondre Citer 0
                                • Benjamin LoisonB Hors-ligne
                                  Benjamin Loison
                                  dernière édition par

                                  Résolu comme ça je crois 🙂

                                  >! Développeur de Altis-Life (Arma III) sur Minecraft !
                                  >! Site web     : https://lemnoslife.com

                                  1 réponse Dernière réponse Répondre Citer 0
                                  • Romain120105R Hors-ligne
                                    Romain120105
                                    dernière édition par

                                    Ça en fait des demandes d’aide….

                                    J'adore le modding !  :D

                                    1 réponse Dernière réponse Répondre Citer 0
                                    • 1
                                    • 2
                                    • 3
                                    • 4
                                    • 1 / 4
                                    • Premier message
                                      Dernier message
                                    Design by Woryk
                                    ContactMentions Légales

                                    MINECRAFT FORGE FRANCE © 2024

                                    Powered by NodeBB