MFF

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

    Problème GuiMainMenu

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    10 Messages 2 Publieurs 1.5k 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.
    • S Hors-ligne
      steevaz
      dernière édition par

      Bonjour à vous,

      Je voudrais savoir si une résolution de mon bug d’affichage existe, après avoir fais un nouveau GuiMainMenu, je voudrais savoir pourquoi l’ancien gui s’affiche 2 seconde pour laissez place au nouveau ? C’est assez voyant sachant que le fond n’est pas le même…

      Merci de m’éclairer sur ce sujet ^^

      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

        Salut,
        Avec quel code affiches-tu le nouveau menu ?

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

          Avec ça :

          @EventHandler
             public void init(FMLInitializationEvent event)
             {
                 if(event.getSide().isClient())
                 {
                     FMLCommonHandler.instance().bus().register(this);
                 }
             }

          @SubscribeEvent
             @SideOnly(Side.CLIENT)
             public void onTick(TickEvent.ClientTickEvent event)
             {
                 Minecraft mc = FMLClientHandler.instance().getClient();
                 if(mc.currentScreen != null && mc.currentScreen.getClass().equals(GuiMainMenu.class))
                 {
                     mc.displayGuiScreen(new GuiCustomMainMenu());
                 }
             }

          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 ne sais pas si cette event existait déjà en 1.7 :

               @SubscribeEvent
               public void onGuiInitPost(GuiScreenEvent.InitGuiEvent.Post event)
               {
                   if(event.getGui().getClass().equals(GuiIngameMenu.class))
                   {
                       NHGClient.mc.displayGuiScreen(new NHGGuiIngameMenu());
                   }
               }
            

            C’est ce qu’on utilise sur nhg et le résultat est instantané.

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

              Donc j’ai essayer voici ce que j’ai mis dans ma classe principale :

              @SubscribeEvent
               public void onGuiInitPost(GuiScreenEvent.InitGuiEvent.Post event)
               {
               if(event.getGui().getClass().equals(GuiMenu.class))
               {
               this.displayGuiScreen(new GuiMenu());
               }
               }

              Et celà me fais 2 erreurs, une sur getGui et l’autre sur displayGuiScreen…

              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

                event.gui au lieu de event.getGui() et FMLClientHandler.instance().getClient() au lieu de this.

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

                  Voici ce que compose ma classe principale :

                  @EventHandler
                  public void init(FMLInitializationEvent event)
                  {
                  proxy.registerRenders();

                  if(event.getSide().isClient())
                         {
                             FMLCommonHandler.instance().bus().register(this);
                         }
                  }

                  @SubscribeEvent
                   public void onGuiInitPost(GuiScreenEvent.InitGuiEvent.Post event)
                   {
                   if(event.gui.getClass().equals(GuiMainMenu.class))
                   {
                   FMLClientHandler.instance().getClient().displayGuiScreen(new GuiMenu());
                   }
                   }

                  Mais celà m’affiche le GuiMainMenu officiel et non le miens…

                  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

                    GuiScreenEvent est un event de forge, donc il faut utiliser MinecraftForge.EVENT_BUS.register(this) et au lieu de FMLCommonHandler.instance().bus().register(this);

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

                      Merci cela marche niquel ^^, forum actif et clair, continuez comme ça !

                      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

                        Tu peux mettre la balise résolu du-coup ^^

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

                        MINECRAFT FORGE FRANCE © 2024

                        Powered by NodeBB