MFF

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

    Armor Hud

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    32 Messages 7 Publieurs 6.1k 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.
    • Z Hors-ligne
      Zokyt
      dernière édition par

      @‘SpyMan’:

      non cette ligne sert juste a récupérer la durabilité (en gros un chiffre) de la pièce d’armure en question après il te faut utiliser l’event  onRenderGameOverlay  pour pouvoir dessiner du text a l’ecran

      1- Créer une class pour tes events apres tu l’enregistre dans la method postInit de forge

      
         @Mod.EventHandler
         public void postInit(FMLPostInitializationEvent event)
         {
             // ceci est la class en question qui contient les events
             EventHandler eh = new EventHandler();
             FMLCommonHandler.instance().bus().register(eh);
             MinecraftForge.EVENT_BUS.register(eh);
         }
      

      2- dans la class EventHandler il te suffit de mettre ceci

         @SideOnly(Side.CLIENT)
         @SubscribeEvent
         public void onRenderGameOverlay(RenderGameOverlayEvent.Pre event)
         {
              int d = Minecraft.getMinecraft().thePlayer.inventory.armorItemInSlot(slot du bout d armure).getItemDamage();
              Minecraft.getMinecraft().fontRendererObj.drawStringWithShadow(d, x, y, 14737632);
         }
      
      

      sinon tu peut d’aider du mod ArmorStatusHUD de bspkrs 
      https://github.com/bspkrs/ArmorStatusHUD/blob/1.7.10/src/main/java/bspkrs/armorstatushud/HUDElement.java
      la ta la class de rendu

      Stp tu peut r’expliquer rien comprit dsl ^^’
      parse que plein de truc ne marche pas comme :

         @SideOnly(Side.CLIENT)
         @SubscribeEvent
         public void onRenderGameOverlay(RenderGameOverlayEvent.Pre event)
         {
              int d = Minecraft.getMinecraft().thePlayer.inventory.armorItemInSlot(slot du bout d armure).getItemDamage();
              Minecraft.getMinecraft().fontRendererObj.drawStringWithShadow(d, x, y, 14737632);
         }
      
      

      Ici ces le d, x, y qui fait une erreur rouge est

      
         @Mod.EventHandler
         public void postInit(FMLPostInitializationEvent event)
         {
             // ceci est la class en question qui contient les events
             EventHandler eh = new EventHandler();
             FMLCommonHandler.instance().bus().register(eh);
             MinecraftForge.EVENT_BUS.register(eh);
         }
      

      Est la ces le = new EventHandler(); 
      qui est erreur rouge

      1 réponse Dernière réponse Répondre Citer -1
      • SpyManS Hors-ligne
        SpyMan
        dernière édition par

        envoi ton code stp sinon c’est compliquer méme si j’ai ma petite idée sur le problème

        Deja dans cette method le x et y c’est la position ou tu veut afficher le text de la durabilité de ton bout d’armure
        et le EventHandler c’est la class ou il ya la method onRenderGameOverlay()

        Et aussi une autre petite chose dit moi tu connais les “les bases en java” ?

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

          @‘SpyMan’:

          envoi ton code stp sinon c’est compliquer mémé si j’ai ma petite idée sur le problème

          Deja dans cette method le x et y c’est la position ou tu veut afficher le text de la durabilité de ton bout d’armure
          et le EventHandler c’est la class ou il ya la method onRenderGameOverlay()

          Et aussi une autre petite chose dit moi tu connais les “les bases en java” ?

          Bh oue je connai les base mais le probleme genre

          @SideOnly(Side.CLIENT)
          @SubscribeEvent
          public void onRenderGameOverlay(RenderGameOverlayEvent.Pre event)
          {
               int d = Minecraft.getMinecraft().thePlayer.inventory.armorItemInSlot(slot du bout d armure).getItemDamage();
               Minecraft.getMinecraft().fontRendererObj.drawStringWithShadow(d, x, y, 14737632);
          }
          

          mon probleme ces genre quand j’import tout bh dabord fontRendererObj veut se remplacer en : fontRenderer est apres le X, Y bh quand je les remplace par un nombre bh ces drawStringWithShadow qui veut se remplacer en drawString est quand je fait sa bh il veut je fait drawStringWithShadow est sa fait sa a l’infini

          Est pour la classe que tu ma dit de creer (Event) bh quand j’importe tout bh il y a EventHandler Qui est souligner rouge

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

            tiens, tu trouveras ton bonheur ici:
            https://openclassrooms.com/courses/apprenez-a-programmer-en-java

            Cordialement

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

              TrouveraS*

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

                @isador34:

                tiens, tu trouvera ton bonheur ici:
                https://openclassrooms.com/courses/apprenez-a-programmer-en-java

                Cordialement

                TrouveraS*

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

                  @‘Plaigon’:

                  @‘isador34’:

                  tiens, tu trouveras ton bonheur ici:
                  https://openclassrooms.com/courses/apprenez-a-programmer-en-java

                  Cordialement

                  TrouveraS*

                  ??

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

                    Heureusement que j’ai cité le message mdr

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

                      Ok alors je reformule ma phrase envoi ton code : class principale + class event car je ne suis pas devin et par conséquent je ne peut deviner ton code 🙂

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

                        @‘SpyMan’:

                        Ok alors je reformule ma phrase envoi ton code : class principale + class event car je ne suis pas devin et par conséquent je ne peut deviner ton code 🙂

                        classe principale :

                        package com.mod.exonia;
                        
                        import java.io.File;
                        
                        import org.lwjgl.opengl.Display;
                        
                        import com.google.common.base.Throwables;
                        
                        import com.mod.exonia.backpack.ItemBackPack;
                        import com.mod.exonia.backpack.ModBlocks;
                        import com.mod.exonia.backpack.ModItems;
                        import com.mod.exonia.dynamite.EntityDynamite;
                        import com.mod.exonia.gui.GuiCustomMainMenu;
                        import com.mod.exonia.gui.GuiIngame;
                        import com.mod.exonia.init.BlockMod;
                        import com.mod.exonia.init.ItemMod;
                        import com.mod.exonia.proxy.CommonProxy;
                        import com.mod.exonia.world.WorldRegister;
                        
                        import cpw.mods.fml.client.FMLClientHandler;
                        import cpw.mods.fml.common.Mod;
                        import cpw.mods.fml.common.Mod.EventHandler;
                        import cpw.mods.fml.common.Mod.Instance;
                        import cpw.mods.fml.common.SidedProxy;
                        import cpw.mods.fml.common.event.FMLInitializationEvent;
                        import cpw.mods.fml.common.event.FMLPostInitializationEvent;
                        import cpw.mods.fml.common.event.FMLPreInitializationEvent;
                        import cpw.mods.fml.common.eventhandler.SubscribeEvent;
                        import cpw.mods.fml.common.gameevent.TickEvent;
                        import cpw.mods.fml.common.gameevent.TickEvent.Phase;
                        import cpw.mods.fml.common.network.IGuiHandler;
                        import cpw.mods.fml.common.network.NetworkRegistry;
                        import cpw.mods.fml.common.registry.EntityRegistry;
                        import cpw.mods.fml.common.registry.GameRegistry;
                        import cpw.mods.fml.relauncher.Side;
                        import cpw.mods.fml.relauncher.SideOnly;
                        import net.minecraft.client.Minecraft;
                        import net.minecraft.client.gui.GuiGameOver;
                        import net.minecraft.client.gui.GuiIngameMenu;
                        import net.minecraft.client.gui.GuiMainMenu;
                        import net.minecraft.client.gui.GuiScreen;
                        import net.minecraft.init.Blocks;
                        import net.minecraft.init.Items;
                        import net.minecraft.item.ItemStack;
                        import net.minecraftforge.client.event.GuiOpenEvent;
                        import net.minecraftforge.client.event.GuiScreenEvent;
                        import net.minecraftforge.common.MinecraftForge;
                        
                        @Mod(modid = Reference.MOD_NAME, version = Reference.VERSION)
                        
                        public class Exonia
                        {
                            @SidedProxy(clientSide = Reference.CLIENT_PROXY, serverSide = Reference.SERVER_PROXY)
                            public static CommonProxy proxy;
                        
                            public static final String MODID = "Exonia";
                        
                            @Mod.Instance(Exonia.MODID)
                            public static Exonia instance;
                        
                            @EventHandler
                            public void preInit(FMLPreInitializationEvent event)
                            {
                                BlockMod.init();
                                BlockMod.register();
                        
                                ItemMod.init();
                                ItemMod.register();
                                WorldRegister.mainRegistry();
                        
                                ModItems.registerItems();
                                ModBlocks.registerBlocks();
                        
                                ModItems.registerItemsCrafts();
                                ModBlocks.registerBlocksCrafts();
                        
                                GameRegistry.addRecipe(new ItemStack(ModItems.ITEM_BACKPACK), new Object[]{"###", "#X#", "###", '#', Items.leather, 'X', Blocks.chest});
                        
                                if(event.getSide().isClient())
                                {
                                    if(!Minecraft.getMinecraft().mcDataDir.getAbsolutePath().contains("Exonia") && !Minecraft.getMinecraft().mcDataDir.equals(new File(".")))
                                    {
                                         Throwables.propagate(new Exception("Launcher non autorisé"));
                        
                                    }
                                }
                            }
                        
                            @SidedProxy(clientSide = "com.mod.exonia.proxy.ClientProxy", serverSide = "com.mod.exonia.proxy.CommonProxy")
                            public static CommonProxy PROXY;
                        
                            @EventHandler
                            public void Init(FMLInitializationEvent event)
                            {
                                proxy.registerRenders();
                                EntityRegistry.registerModEntity(EntityDynamite.class, "EntityDynamite", 420, Exonia.instance, 32, 20, false);
                        
                                MinecraftForge.EVENT_BUS.register(new com.mod.exonia.EventHendler.f3());
                                MinecraftForge.EVENT_BUS.register(new com.mod.exonia.EventHendler.Devant());
                        
                                NetworkRegistry.INSTANCE.registerGuiHandler(INSTANCE, PROXY);
                            }
                        
                            @EventHandler
                            public void postInit(FMLPostInitializationEvent event)
                            {
                        
                            }
                        
                            @Instance(Reference.MOD_NAME)
                            public static Object INSTANCE;
                        
                        }
                        
                        

                        classe event je ces pas vraiment ces la quel donc tien une :

                        package com.mod.exonia.gui;
                        
                        import cpw.mods.fml.common.eventhandler.SubscribeEvent;
                        import cpw.mods.fml.relauncher.Side;
                        import cpw.mods.fml.relauncher.SideOnly;
                        import net.minecraft.client.Minecraft;
                        import net.minecraft.client.gui.GuiChat;
                        import net.minecraft.client.gui.GuiIngameMenu;
                        import net.minecraft.client.gui.GuiMainMenu;
                        import net.minecraft.client.gui.inventory.GuiInventory;
                        import net.minecraftforge.client.event.GuiOpenEvent;
                        import net.minecraftforge.client.event.RenderGameOverlayEvent;
                        
                        public class GuiMainMenuEventHandler {
                        
                            @SubscribeEvent
                            public void onGuiOpens(GuiOpenEvent event) {
                                if(event.gui instanceof GuiMainMenu) 
                                {
                                    event.gui = new GuiCustomMainMenu();
                                }
                                else if(event.gui instanceof GuiIngameMenu) 
                                    event.gui = new GuiIngame();
                                else if(event.gui instanceof GuiChat) 
                                    event.gui = new GuiCustomChat();
                            }
                        
                            @SideOnly(Side.CLIENT)
                            @SubscribeEvent
                            public void onRenderGameOverlay(RenderGameOverlayEvent.Pre event)
                            {
                        
                            }
                        
                        }
                        
                        
                        1 réponse Dernière réponse Répondre Citer 0
                        • SpyManS Hors-ligne
                          SpyMan
                          dernière édition par

                          ok je vois le probleme ta mit un event dans un guihandler xD c’est pas grave

                          en gros tu creer une class qui sappele “ExoniaEventHandler”
                          et tu enregistre cette class avec le MinecraftForge.event_bus.register…
                          et dans cette class tu met ton event

                          
                          @SideOnly(Side.CLIENT)
                          @SubscribeEvent
                          public void onRenderGameOverlay(RenderGameOverlayEvent.Pre event)
                          {
                          
                          }
                          
                          

                          et dans l’event tu met le code que je t’avais donner

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

                            @‘SpyMan’:

                            ok je vois le probleme ta mit un event dans un guihandler xD c’est pas grave

                            en gros tu creer une class qui sappele “ExoniaEventHandler”
                            et tu enregistre cette class avec le MinecraftForge.event_bus.register…
                            et dans cette class tu met ton event

                            
                               @SideOnly(Side.CLIENT)
                               @SubscribeEvent
                               public void onRenderGameOverlay(RenderGameOverlayEvent.Pre event)
                               {
                                   
                               }
                            
                            

                            et dans l’event tu met le code que je t’avais donner

                            Comme sa :

                            package com.mod.exonia;
                            
                            import com.mod.exonia.dynamite.EntityDynamite;
                            
                            import cpw.mods.fml.common.Mod.EventHandler;
                            import cpw.mods.fml.common.event.FMLInitializationEvent;
                            import cpw.mods.fml.common.eventhandler.SubscribeEvent;
                            import cpw.mods.fml.common.network.NetworkRegistry;
                            import cpw.mods.fml.common.registry.EntityRegistry;
                            import cpw.mods.fml.relauncher.Side;
                            import cpw.mods.fml.relauncher.SideOnly;
                            import net.minecraft.client.Minecraft;
                            import net.minecraftforge.client.event.RenderGameOverlayEvent;
                            import net.minecraftforge.common.MinecraftForge;
                            
                            public class ExoniaEventHandler 
                            {
                            
                               @SideOnly(Side.CLIENT)
                               @SubscribeEvent
                               public void onRenderGameOverlay(RenderGameOverlayEvent.Pre event)
                               {
                                    int d = Minecraft.getMinecraft().thePlayer.inventory.armorItemInSlot(50).getItemDamage();
                                    Minecraft.getMinecraft().fontRendererObj.drawStringWithShadow(d, 50, 50, 14737632);
                               }
                            
                                @EventHandler
                                public void Init(FMLInitializationEvent event)
                                {
                                    MinecraftForge.EVENT_BUS.register(new com.mod.exonia.EventHendler.f3());
                                    MinecraftForge.EVENT_BUS.register(new com.mod.exonia.EventHendler.Devant());
                                }
                            
                            }
                            
                            

                            Desoler de faire perdre ton temps ses super sympas de ta par Merci


                            @‘SpyMan’:

                            ok je vois le probleme ta mit un event dans un guihandler xD c’est pas grave

                            en gros tu creer une class qui sappele “ExoniaEventHandler”
                            et tu enregistre cette class avec le MinecraftForge.event_bus.register…
                            et dans cette class tu met ton event

                            
                               @SideOnly(Side.CLIENT)
                               @SubscribeEvent
                               public void onRenderGameOverlay(RenderGameOverlayEvent.Pre event)
                               {
                                   
                               }
                            
                            

                            et dans l’event tu met le code que je t’avais donner

                            Comme sa ? :

                            package com.mod.exonia;
                            
                            import com.mod.exonia.dynamite.EntityDynamite;
                            
                            import cpw.mods.fml.common.Mod.EventHandler;
                            import cpw.mods.fml.common.event.FMLInitializationEvent;
                            import cpw.mods.fml.common.eventhandler.SubscribeEvent;
                            import cpw.mods.fml.common.network.NetworkRegistry;
                            import cpw.mods.fml.common.registry.EntityRegistry;
                            import cpw.mods.fml.relauncher.Side;
                            import cpw.mods.fml.relauncher.SideOnly;
                            import net.minecraft.client.Minecraft;
                            import net.minecraftforge.client.event.RenderGameOverlayEvent;
                            import net.minecraftforge.common.MinecraftForge;
                            
                            public class ExoniaEventHandler 
                            {
                            
                               @SideOnly(Side.CLIENT)
                               @SubscribeEvent
                               public void onRenderGameOverlay(RenderGameOverlayEvent.Pre event)
                               {
                                    int d = Minecraft.getMinecraft().thePlayer.inventory.armorItemInSlot(50).getItemDamage();
                                    Minecraft.getMinecraft().fontRendererObj.drawStringWithShadow(d, 50, 50, 14737632);
                               }
                            
                                @EventHandler
                                public void Init(FMLInitializationEvent event)
                                {
                                    MinecraftForge.EVENT_BUS.register(new com.mod.exonia.EventHendler.f3());
                                    MinecraftForge.EVENT_BUS.register(new com.mod.exonia.EventHendler.Devant());
                                }
                            
                            }
                            
                            

                            package com.mod.exonia;

                            import java.io.File;

                            import org.lwjgl.opengl.Display;

                            import com.google.common.base.Throwables;

                            import com.mod.exonia.backpack.ItemBackPack;
                            import com.mod.exonia.backpack.ModBlocks;
                            import com.mod.exonia.backpack.ModItems;
                            import com.mod.exonia.dynamite.EntityDynamite;
                            import com.mod.exonia.gui.GuiCustomMainMenu;
                            import com.mod.exonia.gui.GuiIngame;
                            import com.mod.exonia.init.BlockMod;
                            import com.mod.exonia.init.ItemMod;
                            import com.mod.exonia.proxy.CommonProxy;
                            import com.mod.exonia.world.WorldRegister;

                            import cpw.mods.fml.client.FMLClientHandler;
                            import cpw.mods.fml.common.FMLCommonHandler;
                            import cpw.mods.fml.common.Mod;
                            import cpw.mods.fml.common.Mod.EventHandler;
                            import cpw.mods.fml.common.Mod.Instance;
                            import cpw.mods.fml.common.SidedProxy;
                            import cpw.mods.fml.common.event.FMLInitializationEvent;
                            import cpw.mods.fml.common.event.FMLPostInitializationEvent;
                            import cpw.mods.fml.common.event.FMLPreInitializationEvent;
                            import cpw.mods.fml.common.eventhandler.SubscribeEvent;
                            import cpw.mods.fml.common.gameevent.TickEvent;
                            import cpw.mods.fml.common.gameevent.TickEvent.Phase;
                            import cpw.mods.fml.common.network.IGuiHandler;
                            import cpw.mods.fml.common.network.NetworkRegistry;
                            import cpw.mods.fml.common.registry.EntityRegistry;
                            import cpw.mods.fml.common.registry.GameRegistry;
                            import cpw.mods.fml.relauncher.Side;
                            import cpw.mods.fml.relauncher.SideOnly;
                            import net.minecraft.client.Minecraft;
                            import net.minecraft.client.gui.GuiGameOver;
                            import net.minecraft.client.gui.GuiIngameMenu;
                            import net.minecraft.client.gui.GuiMainMenu;
                            import net.minecraft.client.gui.GuiScreen;
                            import net.minecraft.init.Blocks;
                            import net.minecraft.init.Items;
                            import net.minecraft.item.ItemStack;
                            import net.minecraftforge.client.event.GuiOpenEvent;
                            import net.minecraftforge.client.event.GuiScreenEvent;
                            import net.minecraftforge.common.MinecraftForge;

                            @Mod(modid = Reference.MOD_NAME, version = Reference.VERSION)

                            public class Exonia
                            {
                                @SidedProxy(clientSide = Reference.CLIENT_PROXY, serverSide = Reference.SERVER_PROXY)
                                public static CommonProxy proxy;

                            public static final String MODID = “Exonia”;

                            @Mod.Instance(Exonia.MODID)
                                public static Exonia instance;

                            @EventHandler
                                public void preInit(FMLPreInitializationEvent event)
                                {
                                    BlockMod.init();
                                    BlockMod.register();

                            ItemMod.init();
                                    ItemMod.register();
                                    WorldRegister.mainRegistry();

                            ModItems.registerItems();
                                    ModBlocks.registerBlocks();

                            ModItems.registerItemsCrafts();
                                    ModBlocks.registerBlocksCrafts();

                            GameRegistry.addRecipe(new ItemStack(ModItems.ITEM_BACKPACK), new Object[]{“###”, “#X#”, “###”, ‘#’, Items.leather, ‘X’, Blocks.chest});

                            if(event.getSide().isClient())
                                    {
                                        if(!Minecraft.getMinecraft().mcDataDir.getAbsolutePath().contains(“Exonia”) && !Minecraft.getMinecraft().mcDataDir.equals(new File(“.”)))
                                        {
                                             Throwables.propagate(new Exception(“Launcher non autorisé”));

                            }
                                    }
                                }

                            @SidedProxy(clientSide = “com.mod.exonia.proxy.ClientProxy”, serverSide = “com.mod.exonia.proxy.CommonProxy”)
                                public static CommonProxy PROXY;

                            @EventHandler
                                public void Init(FMLInitializationEvent event)
                                {
                                    proxy.registerRenders();
                                    EntityRegistry.registerModEntity(EntityDynamite.class, “EntityDynamite”, 420, Exonia.instance, 32, 20, false);

                            MinecraftForge.EVENT_BUS.register(new com.mod.exonia.EventHendler.f3());
                                    MinecraftForge.EVENT_BUS.register(new com.mod.exonia.EventHendler.Devant());

                            NetworkRegistry.INSTANCE.registerGuiHandler(INSTANCE, PROXY);
                                }

                            @Mod.EventHandler
                                public void postInit(FMLPostInitializationEvent event)
                                {
                                        // ceci est la class en question qui contient les events
                                        EventHandler eh = new EventHandler();
                                        FMLCommonHandler.instance().bus().register(eh);
                                        MinecraftForge.EVENT_BUS.register(eh);
                                }

                            @Instance(Reference.MOD_NAME)
                                public static Object INSTANCE;

                            }

                            package com.mod.exonia;
                            
                            import java.io.File;
                            
                            import org.lwjgl.opengl.Display;
                            
                            import com.google.common.base.Throwables;
                            
                            import com.mod.exonia.backpack.ItemBackPack;
                            import com.mod.exonia.backpack.ModBlocks;
                            import com.mod.exonia.backpack.ModItems;
                            import com.mod.exonia.dynamite.EntityDynamite;
                            import com.mod.exonia.gui.GuiCustomMainMenu;
                            import com.mod.exonia.gui.GuiIngame;
                            import com.mod.exonia.init.BlockMod;
                            import com.mod.exonia.init.ItemMod;
                            import com.mod.exonia.proxy.CommonProxy;
                            import com.mod.exonia.world.WorldRegister;
                            
                            import cpw.mods.fml.client.FMLClientHandler;
                            import cpw.mods.fml.common.FMLCommonHandler;
                            import cpw.mods.fml.common.Mod;
                            import cpw.mods.fml.common.Mod.EventHandler;
                            import cpw.mods.fml.common.Mod.Instance;
                            import cpw.mods.fml.common.SidedProxy;
                            import cpw.mods.fml.common.event.FMLInitializationEvent;
                            import cpw.mods.fml.common.event.FMLPostInitializationEvent;
                            import cpw.mods.fml.common.event.FMLPreInitializationEvent;
                            import cpw.mods.fml.common.eventhandler.SubscribeEvent;
                            import cpw.mods.fml.common.gameevent.TickEvent;
                            import cpw.mods.fml.common.gameevent.TickEvent.Phase;
                            import cpw.mods.fml.common.network.IGuiHandler;
                            import cpw.mods.fml.common.network.NetworkRegistry;
                            import cpw.mods.fml.common.registry.EntityRegistry;
                            import cpw.mods.fml.common.registry.GameRegistry;
                            import cpw.mods.fml.relauncher.Side;
                            import cpw.mods.fml.relauncher.SideOnly;
                            import net.minecraft.client.Minecraft;
                            import net.minecraft.client.gui.GuiGameOver;
                            import net.minecraft.client.gui.GuiIngameMenu;
                            import net.minecraft.client.gui.GuiMainMenu;
                            import net.minecraft.client.gui.GuiScreen;
                            import net.minecraft.init.Blocks;
                            import net.minecraft.init.Items;
                            import net.minecraft.item.ItemStack;
                            import net.minecraftforge.client.event.GuiOpenEvent;
                            import net.minecraftforge.client.event.GuiScreenEvent;
                            import net.minecraftforge.common.MinecraftForge;
                            
                            @Mod(modid = Reference.MOD_NAME, version = Reference.VERSION)
                            
                            public class Exonia
                            {
                                @SidedProxy(clientSide = Reference.CLIENT_PROXY, serverSide = Reference.SERVER_PROXY)
                                public static CommonProxy proxy;
                            
                                public static final String MODID = "Exonia";
                            
                                @Mod.Instance(Exonia.MODID)
                                public static Exonia instance;
                            
                                @EventHandler
                                public void preInit(FMLPreInitializationEvent event)
                                {
                                    BlockMod.init();
                                    BlockMod.register();
                            
                                    ItemMod.init();
                                    ItemMod.register();
                                    WorldRegister.mainRegistry();
                            
                                    ModItems.registerItems();
                                    ModBlocks.registerBlocks();
                            
                                    ModItems.registerItemsCrafts();
                                    ModBlocks.registerBlocksCrafts();
                            
                                    GameRegistry.addRecipe(new ItemStack(ModItems.ITEM_BACKPACK), new Object[]{"###", "#X#", "###", '#', Items.leather, 'X', Blocks.chest});
                            
                                    if(event.getSide().isClient())
                                    {
                                        if(!Minecraft.getMinecraft().mcDataDir.getAbsolutePath().contains("Exonia") && !Minecraft.getMinecraft().mcDataDir.equals(new File(".")))
                                        {
                                             Throwables.propagate(new Exception("Launcher non autorisé"));
                            
                                        }
                                    }
                                }
                            
                                @SidedProxy(clientSide = "com.mod.exonia.proxy.ClientProxy", serverSide = "com.mod.exonia.proxy.CommonProxy")
                                public static CommonProxy PROXY;
                            
                                @EventHandler
                                public void Init(FMLInitializationEvent event)
                                {
                                    proxy.registerRenders();
                                    EntityRegistry.registerModEntity(EntityDynamite.class, "EntityDynamite", 420, Exonia.instance, 32, 20, false);
                            
                                    MinecraftForge.EVENT_BUS.register(new com.mod.exonia.EventHendler.f3());
                                    MinecraftForge.EVENT_BUS.register(new com.mod.exonia.EventHendler.Devant());
                            
                                    NetworkRegistry.INSTANCE.registerGuiHandler(INSTANCE, PROXY);
                                }
                            
                                @Mod.EventHandler
                                public void postInit(FMLPostInitializationEvent event)
                                {
                                        // ceci est la class en question qui contient les events
                                        EventHandler eh = new EventHandler();
                                        FMLCommonHandler.instance().bus().register(eh);
                                        MinecraftForge.EVENT_BUS.register(eh);
                                }
                            
                                @Instance(Reference.MOD_NAME)
                                public static Object INSTANCE;
                            
                            }
                            
                            

                            Desoler de faire perdre ton temps ses super sympas de ta par Merci

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

                              @‘SpyMan’:

                              ok je vois le probleme ta mit un event dans un guihandler xD c’est pas grave

                              en gros tu creer une class qui sappele “ExoniaEventHandler”
                              et tu enregistre cette class avec le MinecraftForge.event_bus.register…
                              et dans cette class tu met ton event

                              
                                 @SideOnly(Side.CLIENT)
                                 @SubscribeEvent
                                 public void onRenderGameOverlay(RenderGameOverlayEvent.Pre event)
                                 {
                                     
                                 }
                              
                              

                              et dans l’event tu met le code que je t’avais donner

                              Comme sa ? :

                              package com.mod.exonia;
                              
                              import cpw.mods.fml.common.Mod.EventHandler;
                              import cpw.mods.fml.common.event.FMLInitializationEvent;
                              import cpw.mods.fml.common.eventhandler.SubscribeEvent;
                              import cpw.mods.fml.relauncher.Side;
                              import cpw.mods.fml.relauncher.SideOnly;
                              import net.minecraft.client.Minecraft;
                              import net.minecraftforge.client.event.RenderGameOverlayEvent;
                              import net.minecraftforge.common.MinecraftForge;
                              
                              public class ExoniaEventHandler 
                              {
                              
                                 @SideOnly(Side.CLIENT)
                                 @SubscribeEvent
                                 public void onRenderGameOverlay(RenderGameOverlayEvent.Pre event)
                                 {
                                      int d = Minecraft.getMinecraft().thePlayer.inventory.armorItemInSlot(50).getItemDamage();
                                      Minecraft.getMinecraft().fontRendererObj.drawStringWithShadow(d, 50, 50, 14737632);
                                 }
                              
                                  @EventHandler
                                  public void Init(FMLInitializationEvent event)
                                  {
                                      MinecraftForge.EVENT_BUS.register(new com.mod.exonia.EventHendler.f3());
                                      MinecraftForge.EVENT_BUS.register(new com.mod.exonia.EventHendler.Devant());
                                  }
                              
                              }
                              
                              
                              package com.mod.exonia;
                              
                              import java.io.File;
                              
                              import org.lwjgl.opengl.Display;
                              
                              import com.google.common.base.Throwables;
                              
                              import com.mod.exonia.backpack.ItemBackPack;
                              import com.mod.exonia.backpack.ModBlocks;
                              import com.mod.exonia.backpack.ModItems;
                              import com.mod.exonia.dynamite.EntityDynamite;
                              import com.mod.exonia.gui.GuiCustomMainMenu;
                              import com.mod.exonia.gui.GuiIngame;
                              import com.mod.exonia.init.BlockMod;
                              import com.mod.exonia.init.ItemMod;
                              import com.mod.exonia.proxy.CommonProxy;
                              import com.mod.exonia.world.WorldRegister;
                              
                              import cpw.mods.fml.client.FMLClientHandler;
                              import cpw.mods.fml.common.FMLCommonHandler;
                              import cpw.mods.fml.common.Mod;
                              import cpw.mods.fml.common.Mod.EventHandler;
                              import cpw.mods.fml.common.Mod.Instance;
                              import cpw.mods.fml.common.SidedProxy;
                              import cpw.mods.fml.common.event.FMLInitializationEvent;
                              import cpw.mods.fml.common.event.FMLPostInitializationEvent;
                              import cpw.mods.fml.common.event.FMLPreInitializationEvent;
                              import cpw.mods.fml.common.eventhandler.SubscribeEvent;
                              import cpw.mods.fml.common.gameevent.TickEvent;
                              import cpw.mods.fml.common.gameevent.TickEvent.Phase;
                              import cpw.mods.fml.common.network.IGuiHandler;
                              import cpw.mods.fml.common.network.NetworkRegistry;
                              import cpw.mods.fml.common.registry.EntityRegistry;
                              import cpw.mods.fml.common.registry.GameRegistry;
                              import cpw.mods.fml.relauncher.Side;
                              import cpw.mods.fml.relauncher.SideOnly;
                              import net.minecraft.client.Minecraft;
                              import net.minecraft.client.gui.GuiGameOver;
                              import net.minecraft.client.gui.GuiIngameMenu;
                              import net.minecraft.client.gui.GuiMainMenu;
                              import net.minecraft.client.gui.GuiScreen;
                              import net.minecraft.init.Blocks;
                              import net.minecraft.init.Items;
                              import net.minecraft.item.ItemStack;
                              import net.minecraftforge.client.event.GuiOpenEvent;
                              import net.minecraftforge.client.event.GuiScreenEvent;
                              import net.minecraftforge.common.MinecraftForge;
                              
                              @Mod(modid = Reference.MOD_NAME, version = Reference.VERSION)
                              
                              public class Exonia
                              {
                                  @SidedProxy(clientSide = Reference.CLIENT_PROXY, serverSide = Reference.SERVER_PROXY)
                                  public static CommonProxy proxy;
                              
                                  public static final String MODID = "Exonia";
                              
                                  @Mod.Instance(Exonia.MODID)
                                  public static Exonia instance;
                              
                                  @EventHandler
                                  public void preInit(FMLPreInitializationEvent event)
                                  {
                                      BlockMod.init();
                                      BlockMod.register();
                              
                                      ItemMod.init();
                                      ItemMod.register();
                                      WorldRegister.mainRegistry();
                              
                                      ModItems.registerItems();
                                      ModBlocks.registerBlocks();
                              
                                      ModItems.registerItemsCrafts();
                                      ModBlocks.registerBlocksCrafts();
                              
                                      GameRegistry.addRecipe(new ItemStack(ModItems.ITEM_BACKPACK), new Object[]{"###", "#X#", "###", '#', Items.leather, 'X', Blocks.chest});
                              
                                      if(event.getSide().isClient())
                                      {
                                          if(!Minecraft.getMinecraft().mcDataDir.getAbsolutePath().contains("Exonia") && !Minecraft.getMinecraft().mcDataDir.equals(new File(".")))
                                          {
                                               Throwables.propagate(new Exception("Launcher non autorisé"));
                              
                                          }
                                      }
                                  }
                              
                                  @SidedProxy(clientSide = "com.mod.exonia.proxy.ClientProxy", serverSide = "com.mod.exonia.proxy.CommonProxy")
                                  public static CommonProxy PROXY;
                              
                                  @EventHandler
                                  public void Init(FMLInitializationEvent event)
                                  {
                                      proxy.registerRenders();
                                      EntityRegistry.registerModEntity(EntityDynamite.class, "EntityDynamite", 420, Exonia.instance, 32, 20, false);
                              
                                      MinecraftForge.EVENT_BUS.register(new com.mod.exonia.EventHendler.f3());
                                      MinecraftForge.EVENT_BUS.register(new com.mod.exonia.EventHendler.Devant());
                              
                                      NetworkRegistry.INSTANCE.registerGuiHandler(INSTANCE, PROXY);
                                  }
                              
                                  @Mod.EventHandler
                                  public void postInit(FMLPostInitializationEvent event)
                                  {
                                          // ceci est la class en question qui contient les events
                                          EventHandler eh = new EventHandler();
                                          FMLCommonHandler.instance().bus().register(eh);
                                          MinecraftForge.EVENT_BUS.register(eh);
                                  }
                              
                                  @Instance(Reference.MOD_NAME)
                                  public static Object INSTANCE;
                              
                              }
                              
                              

                              Desoler de te faire perdre ton temps je suis desoler

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

                                nan la method init va dans ta class principale

                                voila ta plus qu’a copier coller

                                package com.mod.exonia;
                                
                                import java.io.File;
                                
                                import org.lwjgl.opengl.Display;
                                
                                import com.google.common.base.Throwables;
                                
                                import com.mod.exonia.backpack.ItemBackPack;
                                import com.mod.exonia.backpack.ModBlocks;
                                import com.mod.exonia.backpack.ModItems;
                                import com.mod.exonia.dynamite.EntityDynamite;
                                import com.mod.exonia.gui.GuiCustomMainMenu;
                                import com.mod.exonia.gui.GuiIngame;
                                import com.mod.exonia.init.BlockMod;
                                import com.mod.exonia.init.ItemMod;
                                import com.mod.exonia.proxy.CommonProxy;
                                import com.mod.exonia.world.WorldRegister;
                                
                                import cpw.mods.fml.client.FMLClientHandler;
                                import cpw.mods.fml.common.FMLCommonHandler;
                                import cpw.mods.fml.common.Mod;
                                import cpw.mods.fml.common.Mod.EventHandler;
                                import cpw.mods.fml.common.Mod.Instance;
                                import cpw.mods.fml.common.SidedProxy;
                                import cpw.mods.fml.common.event.FMLInitializationEvent;
                                import cpw.mods.fml.common.event.FMLPostInitializationEvent;
                                import cpw.mods.fml.common.event.FMLPreInitializationEvent;
                                import cpw.mods.fml.common.eventhandler.SubscribeEvent;
                                import cpw.mods.fml.common.gameevent.TickEvent;
                                import cpw.mods.fml.common.gameevent.TickEvent.Phase;
                                import cpw.mods.fml.common.network.IGuiHandler;
                                import cpw.mods.fml.common.network.NetworkRegistry;
                                import cpw.mods.fml.common.registry.EntityRegistry;
                                import cpw.mods.fml.common.registry.GameRegistry;
                                import cpw.mods.fml.relauncher.Side;
                                import cpw.mods.fml.relauncher.SideOnly;
                                import net.minecraft.client.Minecraft;
                                import net.minecraft.client.gui.GuiGameOver;
                                import net.minecraft.client.gui.GuiIngameMenu;
                                import net.minecraft.client.gui.GuiMainMenu;
                                import net.minecraft.client.gui.GuiScreen;
                                import net.minecraft.init.Blocks;
                                import net.minecraft.init.Items;
                                import net.minecraft.item.ItemStack;
                                import net.minecraftforge.client.event.GuiOpenEvent;
                                import net.minecraftforge.client.event.GuiScreenEvent;
                                import net.minecraftforge.common.MinecraftForge;
                                
                                import com.mod.exonia.ExoniaEventHandler;
                                
                                @Mod(modid = Reference.MOD_NAME, version = Reference.VERSION)
                                
                                public class Exonia
                                {
                                    @SidedProxy(clientSide = Reference.CLIENT_PROXY, serverSide = Reference.SERVER_PROXY)
                                    public static CommonProxy proxy;
                                
                                    public static final String MODID = "Exonia";
                                
                                    @Mod.Instance(Exonia.MODID)
                                    public static Exonia instance;
                                
                                    @EventHandler
                                    public void preInit(FMLPreInitializationEvent event)
                                    {
                                        BlockMod.init();
                                        BlockMod.register();
                                
                                        ItemMod.init();
                                        ItemMod.register();
                                        WorldRegister.mainRegistry();
                                
                                        ModItems.registerItems();
                                        ModBlocks.registerBlocks();
                                
                                        ModItems.registerItemsCrafts();
                                        ModBlocks.registerBlocksCrafts();
                                
                                        GameRegistry.addRecipe(new ItemStack(ModItems.ITEM_BACKPACK), new Object[]{"###", "#X#", "###", '#', Items.leather, 'X', Blocks.chest});
                                
                                        if(event.getSide().isClient())
                                        {
                                            if(!Minecraft.getMinecraft().mcDataDir.getAbsolutePath().contains("Exonia") && !Minecraft.getMinecraft().mcDataDir.equals(new File(".")))
                                            {
                                                 Throwables.propagate(new Exception("Launcher non autorisé"));
                                
                                            }
                                        }
                                    }
                                
                                    @SidedProxy(clientSide = "com.mod.exonia.proxy.ClientProxy", serverSide = "com.mod.exonia.proxy.CommonProxy")
                                    public static CommonProxy PROXY;
                                
                                    @EventHandler
                                    public void Init(FMLInitializationEvent event)
                                    {
                                        proxy.registerRenders();
                                        EntityRegistry.registerModEntity(EntityDynamite.class, "EntityDynamite", 420, Exonia.instance, 32, 20, false);
                                
                                        MinecraftForge.EVENT_BUS.register(new com.mod.exonia.EventHendler.f3());
                                        MinecraftForge.EVENT_BUS.register(new com.mod.exonia.EventHendler.Devant());
                                
                                        NetworkRegistry.INSTANCE.registerGuiHandler(INSTANCE, PROXY);
                                    }
                                
                                    @Mod.EventHandler
                                    public void postInit(FMLPostInitializationEvent event)
                                    {
                                            // ceci est la class en question qui contient les events
                                            ExoniaEventHandler eh = new ExoniaEventHandler();
                                            FMLCommonHandler.instance().bus().register(eh);
                                            MinecraftForge.EVENT_BUS.register(eh);
                                    }
                                
                                    @Instance(Reference.MOD_NAME)
                                    public static Object INSTANCE;
                                
                                }
                                
                                
                                package com.mod.exonia;
                                
                                import cpw.mods.fml.common.Mod.EventHandler;
                                import cpw.mods.fml.common.event.FMLInitializationEvent;
                                import cpw.mods.fml.common.eventhandler.SubscribeEvent;
                                import cpw.mods.fml.relauncher.Side;
                                import cpw.mods.fml.relauncher.SideOnly;
                                import net.minecraft.client.Minecraft;
                                import net.minecraftforge.client.event.RenderGameOverlayEvent;
                                import net.minecraftforge.common.MinecraftForge;
                                
                                public class ExoniaEventHandler 
                                {
                                   @SideOnly(Side.CLIENT)
                                   @SubscribeEvent
                                   public void onRenderGameOverlay(RenderGameOverlayEvent.Pre event)
                                   {
                                        int d = Minecraft.getMinecraft().thePlayer.inventory.armorItemInSlot(50).getItemDamage();
                                        Minecraft.getMinecraft().fontRendererObj.drawStringWithShadow(d, 30, 90, 14737632);
                                   }
                                }
                                
                                
                                1 réponse Dernière réponse Répondre Citer 0
                                • Z Hors-ligne
                                  Zokyt
                                  dernière édition par

                                  Merci ces sympas mais le probleme ces a fontRendererObj bh il me dise de le remplacer par fontRenderer est si je le fait il me dise de replacer drawStringWithShadow en DrawString est sa me fait sa a linfini apres il me redise de remplacer en drawStringWithShadow ext a linfini

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

                                    remplace il on du changer les nom des field/method

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

                                      @‘SpyMan’:

                                      remplace il on du changer les nom des field/method

                                      Bh jpe pas sa se remplace a l’infini…

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

                                        ya juste le fontRendererObj qui change en fontRenderer et cest tout

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

                                          @‘SpyMan’:

                                          ya juste le fontRendererObj qui change en fontRenderer et cest tout

                                          Oue mais quand je fait sa il me demende de modifier : drawStringWithShadow en drawString 
                                          est sa fait sa a linfini apres ile me dise : drawString en drawStringWithShadow

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

                                            La je comprend pas d’où vien le problème la au pire envoi ton dossier “src” en pièce jointe comme ça je pourrai voir les problème en question

                                            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