MFF

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

    Fonction des bouton du menu Ingame "GUI"

    Planifier Épinglé Verrouillé Déplacé Sans suite
    1.7.10
    40 Messages 7 Publieurs 6.9k 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

      Salut,

      Commences par formater et organiser ton code, car il est illisible. Impossible de se retrouver avec ça.

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

        Je te l’es un peut ré-organiser

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

          Je crois qu’on a pas la même définition du mot organisé.
          Tu as pleins de boucle et de condition répété de façon inutile.
          En plus de rendre le code dégueulasse il est aussi lent à être exécuté.

          public class ClientProxy extends CommonProxy
          {
          public ClientProxy()
          {
          MinecraftForge.EVENT_BUS.register(this);
          }
          
          // Gui
          @SubscribeEvent
          public void onInitGuiIngameEvent(InitGuiEvent.Post event)
          {
          if(event.gui instanceof GuiIngameMenu)
          {
          // on cache les boutons de base
          for(Object b : event.buttonList)
          {
          int buttonId = ((GuiButton)b).id;
          if(buttonId == 1 || buttonId == 4 || buttonId == 0 || buttonId == 2 || buttonId == 7 || buttonId == 5)
          {
          ((GuiButton)b).visible = false;
          }
          }
          int i = event.gui.height = -16;
          event.buttonList.add(new GuiButton(40, event.gui.width / 2 + 2, i + 8 * 31, 98, 20, "§6Votez")
          {});
          
          event.buttonList.add(new GuiButton(41, event.gui.width / 2 - 100, i + 8 * 31, 100, 20, "§cDéconnexion")
          {});
          
          event.buttonList.add(new GuiButton(42, event.gui.width / 2 - 100, i + 8 * 28, 100, 20, "§7Option")
          {});
          
          event.buttonList.add(new GuiButton(43, event.gui.width / 2 + 2, i + 8 * 28, 98, 20, "§2TeamSpeak")
          {
          @Override
          public void mouseReleased(int x, int y)
          {
          if(Desktop.isDesktopSupported())
          {
          try
          {
          Desktop.getDesktop().browse(new URI("ts3server://90.11*.**.***"));
          }
          catch(IOException e)
          {
          e.printStackTrace();
          }
          catch(URISyntaxException e)
          {
          e.printStackTrace();
          }
          }
          }
          });
          
          event.buttonList.add(new GuiButton(44, event.gui.width / 2 + 2, i + 8 * 25, 98, 20, "§3Site")
          {
          @Override
          public void mouseReleased(int x, int y)
          {
          if(Desktop.isDesktopSupported())
          {
          try
          {
          Desktop.getDesktop().browse(new URI("https://www.x******.fr"));
          }
          catch(IOException e)
          {
          e.printStackTrace();
          }
          catch(URISyntaxException e)
          {
          e.printStackTrace();
          }
          }
          }
          });
          event.buttonList.add(new GuiButton(45, event.gui.width / 2 - 100, i + 8 * 25, 100, 20, "§5Succès")
          {});
          
          event.buttonList.add(new GuiButton(46, event.gui.width / 2 - 100, i + 8 * 22, "§eRetour au Jeu")
          {});
          }
          }
          }
          

          Comme ça c’est déjà beaucoup plus propre.
          Ensuite pour les actions il te suffit d’ajouter la fonction mouseReleased comme c’est déjà le cas pour le bouton TeamSpeak

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

            Ok merci,
            Mais le probléme c’est que même le bouton TeamSpeak et site ne marche pas :c

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

              Dans la fonction mouseReleased, ajoutes :
              System.out.println(“test”);
              et regardes si test s’affiche dans la console.

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

                Sa ne fonctionne pas rien ne s’écrit dans la console

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

                  Utilises l’événement GuiScreenEvent.ActionPerformedEvent alors.

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

                    C’est pas logique que le code ne soit pas appelé, regarde si le bouton fait du bruit quand tu cliques dessus.

                    Petite question, pourquoi faire ça : int i = event.gui.height = -16; ?

                    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
                    • T Hors-ligne
                      titoux99
                      dernière édition par

                      Nan scarex sa fais aucun bruit :c

                      Je ne sais plus éxactement mais ça c’est pour changer la place du bouton nan ?

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

                        @‘SCAREX’:

                        C’est pas logique que le code ne soit pas appelé, regarde si le bouton fait du bruit quand tu cliques dessus.

                        Petite question, pourquoi faire ça : int i = event.gui.height = -16; ?

                        Je n’avais même pas vu x)

                        @‘titoux99’:

                        Nan scarex sa fais aucun bruit :c

                        Je ne sais plus éxactement mais ça c’est pour changer la place du bouton nan ?

                        Non, ça ne sert à rien. Autant mettre directement -16 à la place de i dans le code. Surtout que là tu fais une double initialisation.

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

                          Et surtout que la taille d’un gui ne peut pas être négative.

                          (Je vais voir plus tard pourquoi ce n’est pas appelé et j’éditerai mon message)

                          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
                          • T Hors-ligne
                            titoux99
                            dernière édition par

                            Toujours pas de solution ? :c

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

                              Je t’ai donné une piste :
                              @‘robin4002’:

                              Utilises l’événement GuiScreenEvent.ActionPerformedEvent alors.

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

                                J’ai testé le code, tout marche très bien une fois que tu as changé ceci : int i = event.gui.height = -16; en ceci : int i = -16;
                                Je suppose donc que tu n’avais pas fait la modification lorsque l’on te l’avait dit.

                                En revanche tu n’as pas caché tous les boutons, si tu veux vraiment retirer tous les boutons je te conseille plutôt de ne pas mettre de condition ou de bien penser à mettre tous les boutons sinon tu auras des problèmes

                                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
                                • T Hors-ligne
                                  titoux99
                                  dernière édition par

                                  @‘SCAREX’:

                                  J’ai testé le code, tout marche très bien une fois que tu as changé ceci : int i = event.gui.height = -16; en ceci : int i = -16;
                                  Je suppose donc que tu n’avais pas fait la modification lorsque l’on te l’avait dit.

                                  En revanche tu n’as pas caché tous les boutons, si tu veux vraiment retirer tous les boutons je te conseille plutôt de ne pas mettre de condition ou de bien penser à mettre tous les boutons sinon tu auras des problèmes

                                  J’ai fais comme tu m’as dit et sa ne marche toujours pas
                                  Pour ce qui est de robin je vais essayer ce soir

                                  Sinon merci les gars de votre aide.

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

                                    Renvoi le code car chez moi ça marche

                                    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
                                    • T Hors-ligne
                                      titoux99
                                      dernière édition par

                                      // Gui
                                         @SubscribeEvent
                                         public void onInitGuiIngameEvent(InitGuiEvent.Post event)
                                         {
                                             if(event.gui instanceof GuiIngameMenu)
                                             {
                                                 // on cache les boutons de base
                                                 for(Object b : event.buttonList)
                                                 {
                                                     int buttonId = ((GuiButton)b).id;
                                                     if(buttonId == 1 || buttonId == 4 || buttonId == 0 || buttonId == 2 || buttonId == 7 || buttonId == 5 || buttonId == 12 || buttonId == 6)
                                                     {
                                                         ((GuiButton)b).visible = false;
                                                     }
                                                 }
                                                 int i = -16;
                                                 event.buttonList.add(new GuiButton(40, event.gui.width / 2 + 2, i + 8 * 31, 98, 20, "§6Votez")
                                                     {});
                                                 int K = -16;
                                                 event.buttonList.add(new GuiButton(40, event.gui.width / 2 - 100, i + 8 * 25, 98, 20, "§5Succes")
                                                     {});
                                                 int E = -16;
                                                 event.buttonList.add(new GuiButton(40, event.gui.width / 2 - 100, i + 8 * 31, 98, 20, "§bStatistiques")
                                                     {});
                                                 int R = -16;
                                                 event.buttonList.add(new GuiButton(40, event.gui.width / 2 - 100, i + 8 * 28, 98, 20, "§7Options")
                                                     {});
                                                 int A = 16;
                                                 event.buttonList.add(new GuiButton(40, event.gui.width / 2 + 2, i + 8 * 25, 98, 20, "§3Site")
                                                     {
                                                         @Override
                                                         public void mouseReleased(int x, int y)
                                                             {
                                                                 if (Desktop.isDesktopSupported())
                                                             {
                                                             try
                                                             {
                                                                 Desktop.getDesktop().browse(new URI("https://www.xerox.fr/"));
                                                             }
                                                             catch(IOException e)
                                                             {
                                                                 e.printStackTrace();
                                                             }
                                                             catch(URISyntaxException e)
                                                             {
                                                                 e.printStackTrace();
                                                             }
                                                         }
                                                     }
                                                 });
                                                 int S = 16;
                                                 event.buttonList.add(new GuiButton(40, event.gui.width / 2 + 2, i + 8 * 28, 98, 20, "§2TeamSpeak")
                                                         {
                                                     @Override
                                                     public void mouseReleased(int x, int y)
                                                     {
                                                         if (Desktop.isDesktopSupported())
                                                         {
                                                             try
                                                             {
                                                                 Desktop.getDesktop().browse(new URI("ts3server://90.113.192.237"));
                                                             }
                                                             catch(IOException e)
                                                             {
                                                                 e.printStackTrace();
                                                             }
                                                             catch(URISyntaxException e)
                                                             {
                                                                 e.printStackTrace();
                                                             }
                                                         }
                                                     }
                                                 });
                                                 int D = -16;
                                                 event.buttonList.add(new GuiButton(40, event.gui.width / 2 - 100, D + 8 * 22, "§e§lRetour au Jeu")
                                                     {      
                                                     });
                                                 int Q = event.gui.height = -16;
                                                 event.buttonList.add(new GuiButton(40, event.gui.width / 2 - 100, Q + 8 * 34, "§c§lDeconnexion")
                                                     {
                                      
                                                     });
                                         }
                                         }
                                      

                                      Voilà SCAREX
                                      J’ai aussi mit a la place de -16, 16 mais marche pas sa modifier juste la position du bouton.

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

                                        // Gui
                                        @SubscribeEvent
                                        public void onInitGuiIngameEvent(InitGuiEvent.Post event)
                                        {
                                        if(event.gui instanceof GuiIngameMenu)
                                        {
                                        // on cache les boutons de base
                                        for(Object b : event.buttonList)
                                        {
                                        int buttonId = ((GuiButton)b).id;
                                        if(buttonId == 1 || buttonId == 4 || buttonId == 0 || buttonId == 2 || buttonId == 7 || buttonId == 5 || buttonId == 12 || buttonId == 6) // Quand tu commences à en avoir beaucoup l'utilisation d'un bloc switch est conseillée mais sinon ça marche de la même manière c'est juste plus propre
                                        {
                                        ((GuiButton)b).visible = false;
                                        }
                                        }
                                        int i = -16;
                                        event.buttonList.add(new GuiButton(40, event.gui.width / 2 + 2, i + 8 * 31, 98, 20, "§6Votez")
                                        {});
                                        int K = -16; // convention java ! K doit être en minuscule, de plus à quoi ça sert de déclarer une nouvelle variable contenant la même chose que i et qui en plus n'est pas utilisée dans ton code, tu peux utiliser i à chaque fois, la variable ne change pas…
                                        event.buttonList.add(new GuiButton(40, event.gui.width / 2 - 100, i + 8 * 25, 98, 20, "§5Succes")
                                        {});
                                        int E = -16;
                                        event.buttonList.add(new GuiButton(40, event.gui.width / 2 - 100, i + 8 * 31, 98, 20, "§bStatistiques")
                                        {});
                                        int R = -16;
                                        event.buttonList.add(new GuiButton(40, event.gui.width / 2 - 100, i + 8 * 28, 98, 20, "§7Options")
                                        {});
                                        int A = 16;
                                        event.buttonList.add(new GuiButton(40, event.gui.width / 2 + 2, i + 8 * 25, 98, 20, "§3Site")
                                        {
                                        @Override
                                        public void mouseReleased(int x, int y)
                                        {
                                        if (Desktop.isDesktopSupported())
                                        {
                                        try
                                        {
                                        Desktop.getDesktop().browse(new URI("https://www.xerox.fr/"));
                                        }
                                        catch(IOException e)
                                        {
                                        e.printStackTrace();
                                        }
                                        catch(URISyntaxException e)
                                        {
                                        e.printStackTrace();
                                        }
                                        }
                                        }
                                        });
                                        int S = 16;
                                        event.buttonList.add(new GuiButton(40, event.gui.width / 2 + 2, i + 8 * 28, 98, 20, "§2TeamSpeak")
                                        {
                                        @Override
                                        public void mouseReleased(int x, int y)
                                        {
                                        if (Desktop.isDesktopSupported())
                                        {
                                        try
                                        {
                                        Desktop.getDesktop().browse(new URI("ts3server://90.113.192.237"));
                                        }
                                        catch(IOException e)
                                        {
                                        e.printStackTrace();
                                        }
                                        catch(URISyntaxException e)
                                        {
                                        e.printStackTrace();
                                        }
                                        }
                                        }
                                        });
                                        int D = -16;
                                        event.buttonList.add(new GuiButton(40, event.gui.width / 2 - 100, D + 8 * 22, "§e§lRetour au Jeu")
                                        {
                                        });
                                        int Q = event.gui.height = -16;
                                        event.buttonList.add(new GuiButton(40, event.gui.width / 2 - 100, Q + 8 * 34, "§c§lDeconnexion")
                                        {
                                        
                                        });
                                        }
                                        }
                                        

                                        Change tous les ids et mets les à -1 comme ça il n’y aura jamais de problème au niveau des ids

                                        De ce que je vois il n’y a aucun problème, les boutons sont affichés ? Si oui, quand tu cliques sur le bouton du ts ou du site est-ce que le lien s’ouvre ?

                                        PS : Pense à la balise java

                                        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
                                        • T Hors-ligne
                                          titoux99
                                          dernière édition par

                                          Merci beaucoup de t’a réponse mais,

                                          Donc oui les bouton sons affichés : http://prntscr.com/bj92i6
                                          Quand je clique sur le bouton ts ou site rien ne s’ouvre et il y a non plus aucun son de clique

                                          Que se qu’est la balise java ? :c

                                          Merci.

                                          PS:
                                          J’ai fais un test du côte du GuiMainMenu et sa fonctione correctement le lien s’ouvre :c

                                          int h = event.gui.height / 4 + 48;
                                                          event.buttonList.add(new GuiButton(31, event.gui.width / 2 + 2, h + 24 * 2, 98, 20,“§3Site”){

                                          @Override
                                                              public void mouseReleased(int x, int y) 
                                                              {
                                                                  if (Desktop.isDesktopSupported())
                                                                  {
                                                                      try
                                                                      {
                                                                          Desktop.getDesktop().browse(new URI(“https://www.*******.net”));
                                                                      }
                                                                      catch(IOException e)
                                                                      {
                                                                          e.printStackTrace();
                                                                      }
                                                                      catch(URISyntaxException e)
                                                                      {
                                                                          e.printStackTrace();
                                                                      }
                                                                  }
                                                              }
                                                          });

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

                                            Rajoute dans un des boutons (celui du teamspeak ou du lien) dans la fonction mouseReleased ceci : System.out.println(“bouton appuyé”) au début de ta fonction, ensuite ouvre ton jeu clique sur le bouton et envoi les logs (envoi le code aussi)

                                            La balise java se trouve en cliquant dans nouvelle réponse ou en écrivant [ java ] [ / java ] ensuite tu y mets ton code pour qu’il soit plus lisible (comme j’ai mis)

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

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB