Navigation

    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Popular
    • Users
    • Groups

    Modification de l'overlay minecraft

    Sans suite
    1.11.x
    4
    9
    1375
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • K
      KoaDev last edited by

      Bonjour, j’essaye depuis hier de trouver une solution au problème suivant: j’ai un code de modification d’overlay que ne marche que pour la santé que j’ai pris sur ce site merci  😉 et donc je voudrais l’adapté pour la nourriture.

      ***Expliquation ***:
      Le mod est censée transformer la barre de vie ainsi que de nourriture en image qui serons tout disposée a droite de l’écran. Voila ce que le code doit faire.

      Le c****ode :

      package fr.github.koadev;
      
      import java.awt.Color;
      
      import org.lwjgl.opengl.GL11;
      
      import net.minecraft.client.Minecraft;
      import net.minecraft.client.gui.Gui;
      import net.minecraft.client.gui.ScaledResolution;
      import net.minecraft.entity.player.EntityPlayer;
      import net.minecraft.util.ResourceLocation;
      import net.minecraftforge.client.event.RenderGameOverlayEvent;
      import net.minecraftforge.client.event.RenderGameOverlayEvent.ElementType;
      import net.minecraftforge.fml.common.Mod;
      import net.minecraftforge.fml.common.Mod.EventBusSubscriber;
      import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
      import net.minecraftforge.fml.relauncher.Side;
      
      @Mod(name = References.NAME, modid = References.MODID, version = References.VERSION)
      
      @EventBusSubscriber(modid = References.MODID, value = {Side.CLIENT})
      public class GameOverlayHandler
      {
         private static final ResourceLocation emptyLife = new ResourceLocation(References.MODID, "textures/gui/emptylife.png");
         private static final ResourceLocation fullLife = new ResourceLocation(References.MODID, "textures/gui/fulllife.png");
      
         public static final Minecraft MC = Minecraft.getMinecraft();
      
         @SubscribeEvent
         public static void renderGameOverlayPre(RenderGameOverlayEvent.Pre event)
         {
             if(event.getType().equals(ElementType.HEALTH))
                 event.setCanceled(true);
         }
      
         @SubscribeEvent
         public static void renderGameOverlayPost(RenderGameOverlayEvent.Post event)
         {
             if(event.getType().equals(ElementType.ALL))
             {
                 GL11.glColor4f(1, 1, 1, 1);
                 GL11.glEnable(GL11.GL_BLEND);
                 GL11.glBlendFunc(770, 771);
                 int width = event.getResolution().getScaledWidth();
      
                 if(!MC.player.capabilities.disableDamage)
                     drawHealth(event.getResolution(), MC.player);
      
                 String s = MC.getConnection().getPlayerInfoMap().size() + "/" + MC.getConnection().currentServerMaxPlayers + " joueurs";
                 Gui.drawRect(width - 5 - MC.fontRendererObj.getStringWidth(s), 2, width - 2, 4 + MC.fontRendererObj.FONT_HEIGHT, Integer.MIN_VALUE);
                 MC.fontRendererObj.drawString(s, width - 3 - MC.fontRendererObj.getStringWidth(s), 4, Color.WHITE.getRGB());
             }
         }
      
         private static void drawHealth(ScaledResolution res, EntityPlayer player)
         {
             MC.getTextureManager().bindTexture(emptyLife);
             Gui.drawScaledCustomSizeModalRect(res.getScaledWidth() - 70, res.getScaledHeight() - 76, 0, 0, 64, 64, 64, 64, 64, 64);
      
             int percent = (int)(player.getHealth() * 64 / player.getMaxHealth());
             if(percent > 0)
             {
                 MC.getTextureManager().bindTexture(fullLife);
                 Gui.drawScaledCustomSizeModalRect(res.getScaledWidth() - 70, res.getScaledHeight() - 76 + (64 - percent), 0, 64 - percent, 64, percent, 64, percent, 64, 64);
             }
         }
      }
      

      Une petit image :

      Mon problemme : Je voudrais faire la même chose pour la nourriture mais je ne sait pas comment faire donc si vous pourriez m’aider je vous en re-merci.

      Cordialement KoaDev

      1 Reply Last reply Reply Quote 0
      • SpyMan
        SpyMan last edited by

        if(event.getType().equals(ElementType.ALL))

        ta juste a changer le “ALL” en autre chose ou je sais quoi regarde ce que ton ide te propose
        cela defini le quel element tu va rendre a la place de celui de mc

        mettre ca en static –> public static void renderGameOverlayPre(RenderGameOverlayEvent.Pre event) c’est USELESS

        1 Reply Last reply Reply Quote 0
        • K
          KoaDev last edited by

          @‘SpyMan’:

          if(event.getType().equals(ElementType.ALL))

          ta juste a changer le “ALL” en autre chose ou je sais quoi regarde ce que ton ide te propose
          cela defini le quel element tu va rendre a la place de celui de mc

          mettre ca en static –> public static void renderGameOverlayPre(RenderGameOverlayEvent.Pre event) c’est USELESS

          Oui alors j’ai déjà fait sa pour le déactiver la bar de nourriture mais moi je voudrais redessiner et déplacer la bar de faim comme j’ai fait pour la vie.

          1 Reply Last reply Reply Quote 0
          • Superloup10
            Superloup10 Modérateurs last edited by

            @SpyMan:

            mettre ca en static –> public static void renderGameOverlayPre(RenderGameOverlayEvent.Pre event) c’est USELESS

            Non, ce n’est pas useless, sans le static, il va y avoir un crash.
            Et si tu ne me crois pas, soit tu relis le code, soit tu devrais faire attention à l’actualité.

            1 Reply Last reply Reply Quote 0
            • BrokenSwing
              BrokenSwing Moddeurs confirmés Rédacteurs last edited by

              @Superloup10:

              Non, ce n’est pas useless, sans le static, il va y avoir un crash.

              Non, ça ne va pas crash, ça va seulement plus fonctionner car forge ne va pas “enregistrer” la méthode comme une méthode d’event à appeler. 😉
              Et si tu me crois pas, tu peux tester.

              1 Reply Last reply Reply Quote 0
              • Superloup10
                Superloup10 Modérateurs last edited by

                [HS]Tu es bientôt à 1024 messages[/HS]
                Exact, je me suis un peu trop enflammé.

                1 Reply Last reply Reply Quote 0
                • K
                  KoaDev last edited by

                  Juste Les gars/filles est-ce-qu c’est possible de supprimer la bar de faim et de la remplacer en image comme j’ai fait pour la vie ?
                  et si oui c’est possible vous pourriez me dire comment faire.

                  Cordialement

                  1 Reply Last reply Reply Quote 0
                  • Superloup10
                    Superloup10 Modérateurs last edited by

                    Oui, c’est possible, il te suffit juste de cancel l’affichage de la barre de faim et de la remplacer par une autre

                    1 Reply Last reply Reply Quote 0
                    • K
                      KoaDev last edited by

                      SuperLoup je le savait sa mais c’est le code pour pouvoir afficher l’image de la nourriture comme l’image de la vie et que sa fasse en sorte que sa descende  😮

                      1 Reply Last reply Reply Quote 0
                      • 1 / 1
                      • First post
                        Last post
                      Design by Woryk
                      Contact / Mentions Légales / Faire un don

                      MINECRAFT FORGE FRANCE © 2018

                      Powered by NodeBB