MFF

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

    Récupérer les packets envoyés au joueur ?

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.x
    38 Messages 6 Publieurs 8.2k 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.
    • T Hors-ligne
      Toinou9120
      dernière édition par

      Voilà :

      
      package com.Toinou.LifeBarMod;
      
      import java.util.Comparator;
      import java.util.Iterator;
      import java.util.List;
      
      import net.minecraft.client.Minecraft;
      import net.minecraft.client.network.NetHandlerPlayClient;
      import net.minecraft.client.network.NetworkPlayerInfo;
      import net.minecraft.entity.player.EntityPlayer;
      import net.minecraft.scoreboard.ScorePlayerTeam;
      import net.minecraft.util.ChatComponentTranslation;
      import net.minecraft.world.WorldSettings;
      import net.minecraftforge.client.event.RenderGameOverlayEvent;
      import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
      import net.minecraftforge.fml.relauncher.Side;
      import net.minecraftforge.fml.relauncher.SideOnly;
      
      import com.google.common.collect.ComparisonChain;
      import com.google.common.collect.Ordering;
      
      public class EventClass {
      
          @SubscribeEvent
          public void onRenderGameOverlay(RenderGameOverlayEvent e) //J'ai pris cet event parce que c'est un event client et qu'il est exécuter sans aucune action
          {
              Ordering ordering = Ordering.from(new PlayerComparator()); //Pour trier les joueurs, c'est le système de minecraft
              NetHandlerPlayClient nethandler = Minecraft.getMinecraft().thePlayer.sendQueue;
              List list = ordering.sortedCopy(nethandler.func_175106_d());
              Iterator iterator = list.iterator();
      
              while(iterator.hasNext())
              {
                  NetworkPlayerInfo playerinfo = (NetworkPlayerInfo)iterator.next();
                  EntityPlayer player = Minecraft.getMinecraft().theWorld.getPlayerEntityByUUID(playerinfo.getGameProfile().getId());
                  float Vie = player.getHealth();
                  String strVie = String.valueOf(Vie);
                  Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentTranslation(strVie));
              }
      
          }
      
              @SideOnly(Side.CLIENT)
              static class PlayerComparator implements Comparator // trie un fonction des teams et des modes de jeu (je crois)
              {
                  private PlayerComparator() {}
      
                  public int comparation(NetworkPlayerInfo p_178952_1_, NetworkPlayerInfo p_178952_2_)
                  {
                      ScorePlayerTeam scoreplayerteam = p_178952_1_.getPlayerTeam();
                      ScorePlayerTeam scoreplayerteam1 = p_178952_2_.getPlayerTeam();
                      return ComparisonChain.start().compareTrueFirst(p_178952_1_.getGameType() != WorldSettings.GameType.SPECTATOR, p_178952_2_.getGameType() != WorldSettings.GameType.SPECTATOR).compare(scoreplayerteam != null ? scoreplayerteam.getRegisteredName() : "", scoreplayerteam1 != null ? scoreplayerteam1.getRegisteredName() : "").compare(p_178952_1_.getGameProfile().getName(), p_178952_2_.getGameProfile().getName()).result();
                  }
      
                  public int compare(Object p_compare_1_, Object p_compare_2_)
                  {
                      return comparation((NetworkPlayerInfo)p_compare_1_, (NetworkPlayerInfo)p_compare_2_);
                  }
              }
      
      }
      
      
      1 réponse Dernière réponse Répondre Citer 0
      • BrokenSwingB Hors-ligne
        BrokenSwing Moddeurs confirmés Rédacteurs
        dernière édition par

        Tu est sûr d’avoir mis toute ta classe ?

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

          Ouais, sûr

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

            Le crash report informe d’un NPE ligne 77 mais il n’y a même pas 77 lignes dans ta classe 😕

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

              Ah c’est parce que j’avais des anciens tests que j’ai mis en commentaire et du coup je les ai pas mis dans ce que j’ai copié collé, j’avais pas pensé à ça désolé 😕
              Donc voici ma classe avec les commentaires compris dedans :

              
              package com.Toinou.LifeBarMod;
              
              import java.util.Comparator;
              import java.util.Iterator;
              import java.util.List;
              
              import net.minecraft.client.Minecraft;
              import net.minecraft.client.network.NetHandlerPlayClient;
              import net.minecraft.client.network.NetworkPlayerInfo;
              import net.minecraft.entity.player.EntityPlayer;
              import net.minecraft.scoreboard.ScorePlayerTeam;
              import net.minecraft.util.ChatComponentTranslation;
              import net.minecraft.world.WorldSettings;
              import net.minecraftforge.client.event.RenderGameOverlayEvent;
              import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
              import net.minecraftforge.fml.relauncher.Side;
              import net.minecraftforge.fml.relauncher.SideOnly;
              
              import com.google.common.collect.ComparisonChain;
              import com.google.common.collect.Ordering;
              
              public class EventClass {
              
                  /*@SubscribeEvent
                  public void onPlayerHeal(LivingHealEvent e) {
              
                      if(e.entity instanceof EntityPlayer) {
              
                          EntityPlayer p = (EntityPlayer) e.entity;
              
                          float Vie = ((EntityLivingBase) p).getHealth();
                          String strVie = String.valueOf(Vie);
                          p.addChatMessage(new ChatComponentTranslation(strVie));
              
                      }
                  }
              
                  @SubscribeEvent
                  public void onPlayerHurt(LivingHurtEvent e) {
              
                      if(e.entity instanceof EntityPlayer) {
              
                          EntityPlayer p = (EntityPlayer) e.entity;
              
                          float Vie = ((EntityLivingBase) p).getHealth();
                          String strVie = String.valueOf(Vie);
                          p.addChatMessage(new ChatComponentTranslation(strVie));
              
                      }
                  }
              
                  @SubscribeEvent
                  public void onPlayerTickEvent(PlayerTickEvent e) {
              
                      String strVie = String.valueOf(Vie);
                      String strAncVie = String.valueOf(AncienneVie);
                      EntityPlayer p = e.player;
                      Vie = p.getHealth();
                      String strVie = String.valueOf(Vie);
                      p.addChatMessage(new ChatComponentTranslation(strVie));
              
                  }*/
              
                  @SubscribeEvent
                  public void onRenderGameOverlay(RenderGameOverlayEvent e) //J'ai pris cet event parce que c'est un event client et qu'il est exécuter sans aucune action
                  {
                      Ordering ordering = Ordering.from(new PlayerComparator()); //Pour trier les joueurs, c'est le système de minecraft
                      NetHandlerPlayClient nethandler = Minecraft.getMinecraft().thePlayer.sendQueue;
                      List list = ordering.sortedCopy(nethandler.func_175106_d());
                      Iterator iterator = list.iterator();
              
                      while(iterator.hasNext())
                      {
                          NetworkPlayerInfo playerinfo = (NetworkPlayerInfo)iterator.next();
                          EntityPlayer player = Minecraft.getMinecraft().theWorld.getPlayerEntityByUUID(playerinfo.getGameProfile().getId());
                          float Vie = player.getHealth();
                          String strVie = String.valueOf(Vie);
                          Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentTranslation(strVie));
                      }
              
                  }
              
                      @SideOnly(Side.CLIENT)
                      static class PlayerComparator implements Comparator // trie un fonction des teams et des modes de jeu (je crois)
                      {
                          private PlayerComparator() {}
              
                          public int comparation(NetworkPlayerInfo p_178952_1_, NetworkPlayerInfo p_178952_2_)
                          {
                              ScorePlayerTeam scoreplayerteam = p_178952_1_.getPlayerTeam();
                              ScorePlayerTeam scoreplayerteam1 = p_178952_2_.getPlayerTeam();
                              return ComparisonChain.start().compareTrueFirst(p_178952_1_.getGameType() != WorldSettings.GameType.SPECTATOR, p_178952_2_.getGameType() != WorldSettings.GameType.SPECTATOR).compare(scoreplayerteam != null ? scoreplayerteam.getRegisteredName() : "", scoreplayerteam1 != null ? scoreplayerteam1.getRegisteredName() : "").compare(p_178952_1_.getGameProfile().getName(), p_178952_2_.getGameProfile().getName()).result();
                          }
              
                          public int compare(Object p_compare_1_, Object p_compare_2_)
                          {
                              return comparation((NetworkPlayerInfo)p_compare_1_, (NetworkPlayerInfo)p_compare_2_);
                          }
                      }
              
              }
              
              

              EDIT : Il y a quelque chose de bizarre, dans Eclipse, la ligne 77 c’est " float Vie = player.getHealth() " et la, la ligne 77, c’est celle d’au dessus

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

                Il y a quelque chose de bizarre, dans Eclipse, la ligne 77 c’est " float Vie = player.getHealth() " et la, la ligne 77, c’est celle d’au dessus

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

                  Essai de remplacer la ligne 77 par :

                  
                  EntityPlayer player = Minecraft.getMinecraft().theWorld.getPlayerEntityByName(playerinfo.getGameProfile().getName());
                  
                  
                  1 réponse Dernière réponse Répondre Citer 0
                  • T Hors-ligne
                    Toinou9120
                    dernière édition par

                    Ca crash toujours 😕
                    Mais je ne sais pas si tu as vu mais j’ai remarqué que dans Eclipse la ligne 77 c’est " float Vie = player.getHealth() " c’est quand je le copie, il rajoute une ligne au début ce qui décale les lignes par rapport à Eclipse.

                    Le crash report :

                    
                    –-- Minecraft Crash Report ----
                    
                    WARNING: coremods are present:
                    Contact their authors BEFORE contacting forge
                    
                    // Who set us up the TNT?
                    
                    Time: 04/10/15 14:51
                    Description: Unexpected error
                    
                    java.lang.NullPointerException: Unexpected error
                        at com.Toinou.LifeBarMod.EventClass.onRenderGameOverlay(EventClass.java:77)
                        at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_6_EventClass_onRenderGameOverlay_RenderGameOverlayEvent.invoke(.dynamic)
                        at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:55)
                        at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:138)
                        at net.minecraftforge.client.GuiIngameForge.pre(GuiIngameForge.java:854)
                        at net.minecraftforge.client.GuiIngameForge.func_175180_a(GuiIngameForge.java:108)
                        at net.minecraft.client.renderer.EntityRenderer.func_78480_b(EntityRenderer.java:1266)
                        at net.minecraft.client.Minecraft.func_71411_J(Minecraft.java:1055)
                        at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:345)
                        at net.minecraft.client.main.Main.main(SourceFile:120)
                        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                        at java.lang.reflect.Method.invoke(Unknown Source)
                        at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
                        at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
                    
                    A detailed walkthrough of the error, its code path and all known details is as follows:
                    ---------------------------------------------------------------------------------------
                    
                    -- Head --
                    Stacktrace:
                        at com.Toinou.LifeBarMod.EventClass.onRenderGameOverlay(EventClass.java:77)
                        at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_6_EventClass_onRenderGameOverlay_RenderGameOverlayEvent.invoke(.dynamic)
                        at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:55)
                        at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:138)
                        at net.minecraftforge.client.GuiIngameForge.pre(GuiIngameForge.java:854)
                        at net.minecraftforge.client.GuiIngameForge.func_175180_a(GuiIngameForge.java:108)
                    
                    -- Affected level --
                    Details:
                        Level name: MpServer
                        All players: 1 total; [EntityPlayerSP['Toinou9120'/811898, l='MpServer', x=-11,50, y=92,00, z=-19,50]]
                        Chunk stats: MultiplayerChunkCache: 0, 0
                        Level seed: 0
                        Level generator: ID 01 - flat, ver 0\. Features enabled: false
                        Level generator options:
                        Level spawn location: -1397,00,4,00,593,00 - World: (-1397,4,593), Chunk: (at 11,0,1 in -88,37; contains blocks -1408,0,592 to -1393,255,607), Region: (-3,1; contains chunks -96,32 to -65,63, blocks -1536,0,512 to -1025,255,1023)
                        Level time: 0 game time, 0 day time
                        Level dimension: 0
                        Level storage version: 0x00000 - Unknown?
                        Level weather: Rain time: 0 (now: false), thunder time: 0 (now: false)
                        Level game mode: Game mode: survival (ID 0). Hardcore: false. Cheats: false
                        Forced entities: 2 total; [EntityPlayerSP['Toinou9120'/811898, l='MpServer', x=-11,50, y=92,00, z=-19,50], EntityWither['§e§lPlaying §f§lSKYWARS§e§l on §f§lMC.HYPIXEL.NET'/-1234, l='MpServer', x=-1393,50, y=-1,00, z=628,50]]
                        Retry entities: 0 total; []
                        Server brand: BungeeCord (Hypixel) <- Spigot
                        Server type: Non-integrated multiplayer server
                    Stacktrace:
                        at net.minecraft.client.multiplayer.WorldClient.func_72914_a(WorldClient.java:407)
                        at net.minecraft.client.Minecraft.func_71396_d(Minecraft.java:2502)
                        at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:374)
                        at net.minecraft.client.main.Main.main(SourceFile:120)
                        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                        at java.lang.reflect.Method.invoke(Unknown Source)
                        at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
                        at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
                    
                    – System Details --
                    Details:
                        Minecraft Version: 1.8
                        Operating System: Windows 7 (amd64) version 6.1
                        Java Version: 1.7.0_75, Oracle Corporation
                        Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
                        Memory: 253641320 bytes (241 MB) / 405528576 bytes (386 MB) up to 2134114304 bytes (2035 MB)
                        JVM Flags: 6 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xmx2G -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:-UseAdaptiveSizePolicy -Xmn128M
                        IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
                        FML: MCP v9.10 FML v8.0.99.99 Minecraft Forge 11.14.3.1450 Optifine OptiFine_1.8_HD_U_D5 4 mods loaded, 4 mods active
                        States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored
                        UCHIJA    mcp{9.05} [Minecraft Coder Pack] (minecraft.jar)
                        UCHIJA    FML{8.0.99.99} [Forge Mod Loader] (forge-1.8-11.14.3.1450.jar)
                        UCHIJA    Forge{11.14.3.1450} [Minecraft Forge] (forge-1.8-11.14.3.1450.jar)
                        UCHIJA    LBM{1.0} [LifeBarMod] (LifeBar Mod 18.jar)
                        Loaded coremods (and transformers):
                        GL info: ' Vendor: 'ATI Technologies Inc.' Version: '4.5.13399 Compatibility Profile Context 15.200.1062.1004' Renderer: 'AMD Radeon HD 6450'
                        Launched Version: 1.8-Forge11.14.3.1450
                        LWJGL: 2.9.1
                        OpenGL: AMD Radeon HD 6450 GL version 4.5.13399 Compatibility Profile Context 15.200.1062.1004, ATI Technologies Inc.
                        GL Caps: Using GL 1.3 multitexturing.
                    Using GL 1.3 texture combiners.
                    Using framebuffer objects because OpenGL 3.0 is supported and separate blending is supported.
                    Shaders are available because OpenGL 2.1 is supported.
                    VBOs are available because OpenGL 1.5 is supported.
                    
                        Using VBOs: Yes
                        Is Modded: Definitely; Client brand changed to 'fml,forge'
                        Type: Client (map_client.txt)
                        Resource Packs: [faithful32pack.zip, OCD pack 1.8 [Perso].zip, thebaum64_sky.zip]
                        Current Language: §eEnglish (§bColor§e)
                        Profiler Position: N/A (disabled)
                    
                    
                    1 réponse Dernière réponse Répondre Citer 0
                    • DeletedD Hors-ligne
                      Deleted
                      dernière édition par

                      Oui et ? Eclipse s’en fiche de savoir si telle ou telle ligne et plus ou moins décalée par-rapport à telle ou telle autre ligne 🙂

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

                        Je t’avouerai que tout ce qui est crash report c’est pas mon fort 😕

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

                          Ce n’est pourtant pas compliqué, le crash report indique un NullPointerException sur la ligne 77, soit une déclaration d’une variable locale de type EntityPlayer. Je pense donc que l’UUID n’est pas le bon. Tu peux sinon avoir une instante toute facile d’un joueur en faisant Minecraft.getMinecraft().thePlayer. Si en faisant aussi ceci ça crash toujorus avec la même exception redonne nous la ligne précise, peut-être que j’ai mal compté ^^’

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

                            Le but n’est pas d’obtenir le joueur qui a le mod mais les joueurs présents sur le serveur. Or ```java
                            Minecraft.getMinecraft().thePlayer

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

                              J’ai essayé quand même et ça a l’air de marcher ! J’ai testé pendant 4-5 min et tout fonctionne bien ! Un grand merci à vous deux 🙂
                              Vous imaginez même pas comment je suis content que ça marche enfin, encore merci à vous deux ! 😄

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

                                Peut-tu quand même mettre le code final, pour voir stp

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

                                  Hop, le voilà :

                                  
                                  package com.Toinou.LifeBarMod;
                                  
                                  import java.util.Comparator;
                                  import java.util.Iterator;
                                  import java.util.List;
                                  
                                  import net.minecraft.client.Minecraft;
                                  import net.minecraft.client.network.NetHandlerPlayClient;
                                  import net.minecraft.client.network.NetworkPlayerInfo;
                                  import net.minecraft.entity.player.EntityPlayer;
                                  import net.minecraft.scoreboard.ScorePlayerTeam;
                                  import net.minecraft.util.ChatComponentTranslation;
                                  import net.minecraft.world.WorldSettings;
                                  import net.minecraftforge.client.event.RenderGameOverlayEvent;
                                  import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
                                  import net.minecraftforge.fml.relauncher.Side;
                                  import net.minecraftforge.fml.relauncher.SideOnly;
                                  
                                  import com.google.common.collect.ComparisonChain;
                                  import com.google.common.collect.Ordering;
                                  
                                  public class EventClass {
                                  
                                      float Vie;
                                      float AncienneVie;
                                  
                                      @SubscribeEvent
                                      public void onRenderGameOverlay(RenderGameOverlayEvent e)
                                      {
                                          Ordering ordering = Ordering.from(new PlayerComparator());
                                          NetHandlerPlayClient nethandler = Minecraft.getMinecraft().thePlayer.sendQueue;
                                          List list = ordering.sortedCopy(nethandler.func_175106_d());
                                          Iterator iterator = list.iterator();
                                  
                                          while(iterator.hasNext())
                                          {
                                              NetworkPlayerInfo playerinfo = (NetworkPlayerInfo)iterator.next();
                                              EntityPlayer player = Minecraft.getMinecraft().thePlayer;
                                              Vie = player.getHealth();
                                              if(!(Vie == AncienneVie)){
                                  
                                                  double vieDouble = (double)Vie;
                                                  int vieArrondie = (int) Math.ceil(vieDouble);
                                                  String strVie = String.valueOf(vieArrondie);
                                                  Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentTranslation(strVie));
                                              }
                                              AncienneVie = Vie;
                                          }
                                  
                                      }
                                  
                                          @SideOnly(Side.CLIENT)
                                          static class PlayerComparator implements Comparator
                                          {
                                              private PlayerComparator() {}
                                  
                                              public int comparation(NetworkPlayerInfo p_178952_1_, NetworkPlayerInfo p_178952_2_)
                                              {
                                                  ScorePlayerTeam scoreplayerteam = p_178952_1_.getPlayerTeam();
                                                  ScorePlayerTeam scoreplayerteam1 = p_178952_2_.getPlayerTeam();
                                                  return ComparisonChain.start().compareTrueFirst(p_178952_1_.getGameType() != WorldSettings.GameType.SPECTATOR, p_178952_2_.getGameType() != WorldSettings.GameType.SPECTATOR).compare(scoreplayerteam != null ? scoreplayerteam.getRegisteredName() : "", scoreplayerteam1 != null ? scoreplayerteam1.getRegisteredName() : "").compare(p_178952_1_.getGameProfile().getName(), p_178952_2_.getGameProfile().getName()).result();
                                              }
                                  
                                              public int compare(Object p_compare_1_, Object p_compare_2_)
                                              {
                                                  return comparation((NetworkPlayerInfo)p_compare_1_, (NetworkPlayerInfo)p_compare_2_);
                                              }
                                          }
                                  
                                  }
                                  
                                  
                                  1 réponse Dernière réponse Répondre Citer 0
                                  • BrokenSwingB Hors-ligne
                                    BrokenSwing Moddeurs confirmés Rédacteurs
                                    dernière édition par

                                    Ah ok, je pensais que tu voulais récupérer la vie de tout les joueurs sur le serveur … Si tu veux récupérer la ta vie à toi seulement c’est beacoup plus simple. Ya plein de lignes que tu peux enlever

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

                                      Ah mince, je croyais que t’avais compris que c’était juste la vie du joueur qui a le mod, désolé si je t’ai fait perdre ton temps … Si ca ne te dérange pas, quelles sont les lignes que je peux enlever ? Est-ce que je peux juste laisser ça :

                                      
                                      EntityPlayer player = Minecraft.getMinecraft().thePlayer;
                                                  Vie = player.getHealth();
                                                  if(!(Vie == AncienneVie)){
                                      
                                                      double vieDouble = (double)Vie;
                                                      int vieArrondie = (int) Math.ceil(vieDouble);
                                                      String strVie = String.valueOf(vieArrondie);
                                                      Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentTranslation(strVie));
                                                  }
                                                  AncienneVie = Vie;
                                      
                                      

                                      En les laissant dans l’event bien sur.

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

                                        
                                        private lastHealth;
                                        
                                        public void onRenderGameOverlay(RenderGameOverlayEvent e) //Encore une fois l'event à peu d'importance
                                        {
                                              EntityPlayer player = Minecraft.getMinecraft().thePlayer;
                                              if(player.getHealth() != lastHealth) player.addChatMessage(new ChatComponentText(String.valueOf((int)(Math.ceil((double)player.getHealth())))));
                                               lastHealth = player.getHealth();
                                        }
                                        
                                        1 réponse Dernière réponse Répondre Citer 0
                                        • T Hors-ligne
                                          Toinou9120
                                          dernière édition par

                                          Ah d’accord, c’était tout simple en fait, j’avais fait la même chose avec l’event PlayerTickEvent, mais sur les serveurs Bukkit, cela me renvoyait des choses étranges donc je cherchais d’autres moyens. Encore merci pour ton aide. 🙂

                                          1 réponse Dernière réponse Répondre Citer 0
                                          • DiabolicaTrixD Hors-ligne
                                            DiabolicaTrix Correcteurs Moddeurs confirmés
                                            dernière édition par

                                            Aussi, fait attention à la convention, Une variable doit commencer par une lettre minuscule et si il y a un deuxieme mot le deuxieme commence par une lettre majuscule exemple: lastHealth. Tu dois les écrires préférablement en Anglais.

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

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB