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.
    • 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
                                  • 2 / 4
                                  • Premier message
                                    Dernier message
                                  Design by Woryk
                                  ContactMentions Légales

                                  MINECRAFT FORGE FRANCE © 2024

                                  Powered by NodeBB