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

      Peu tu re m’expliquer stp rien comprit desoler ^^’


      @‘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

      Peu tu re m’expliquer stp rien comprit desoler ^^’

      1 réponse Dernière réponse Répondre Citer 0
      • 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
                                            • 1
                                            • 2
                                            • 1 / 2
                                            • Premier message
                                              Dernier message
                                            Design by Woryk
                                            ContactMentions Légales

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB