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

    Item changeant de texture

    Sans suite
    1.7.10
    4
    14
    2474
    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.
    • T
      the_pumpkin_man last edited by

      Bonjour. J’aimerai que si il se passe une certaine action (Joueur qui sneak, joueur avec effet d’invisibilité) un item que j’ai créé avec un mod puisse changer de texture. Par exemple il a une texture 1 et 2. Par défaut, l’item aura la texture 1 mais si il est invisible, l’item passe à la texture 2. Bien sûr, si le joueur n’est plus invisible, l’item repasse à la texture 1. Donc voilà si vous pouvez m’aider svp 🙂

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

        Il faut voir avec la fonction getIcon il me semble, je ne sais plus quels sont ces arguments

        1 Reply Last reply Reply Quote 0
        • T
          the_pumpkin_man last edited by

          @‘BrokenSwing’:

          Il faut voir avec la fonction getIcon il me semble, je ne sais plus quels sont ces arguments

          Bah je ne m’y connais pas du tout là dedans 😞

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

            Avec la fonction getIcon de l’item (que tu peux ajouter en commençant à taper son nom puis en faisant CTRL+space dans eclipse), tu retournes une IIcon différente selon la valeur de Minecraft.getMinecraft(). thePlayer.isInvisible();

            Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

            AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

            Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
            Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

            1 Reply Last reply Reply Quote 0
            • T
              the_pumpkin_man last edited by

              Merci mais … On fait comment ? (Oui je sais suis pas doué en code et alors ? xD)

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

                Le problème est pas d’être doué ou pas vu que j’ai presque tout expliqué et qu’il y a ce qu’il manque sur le forum ^^

                private IIcon iconInvisible;
                @Override
                public void registerIcons(IIconRegister p_94581_1_)
                {
                super.registerIcons(p_94581_1_); //Enregistre l'icone du "setTextureName()"
                iconInvisible = p_94581_1_.registerIcon("icone_invisible");
                }
                @Override
                @SideOnly(Side.CLIENT)
                public IIcon getIconFromDamage(int p_77617_1_)
                {
                return Minecraft.getMinecraft(). thePlayer.isInvisible() ? iconInvisible : itemIcon;
                }
                

                Le seul truc que j’avais pas donné était “registerIcons(…)”.

                Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

                1 Reply Last reply Reply Quote 0
                • T
                  the_pumpkin_man last edited by

                  @‘AymericRed’:

                  Le problème est pas d’être doué ou pas vu que j’ai presque tout expliqué et qu’il y a ce qu’il manque sur le forum ^^

                  private IIcon iconInvisible;
                  @Override
                  public void registerIcons(IIconRegister p_94581_1_)
                  {
                  super.registerIcons(p_94581_1_); //Enregistre l'icone du "setTextureName()"
                  iconInvisible = p_94581_1_.registerIcon("icone_invisible");
                  }
                  @Override
                  @SideOnly(Side.CLIENT)
                  public IIcon getIconFromDamage(int p_77617_1_)
                  {
                  return Minecraft.getMinecraft(). thePlayer.isInvisible() ? iconInvisible : itemIcon;
                  }
                  

                  Le seul truc que j’avais pas donné était “registerIcons(…)”.

                  Merci de ta réponse et tout marche SAUF la texture qui est buguéd : je l’enregistre bien dans src/main/resources/assets/invisiblearmor/textures/items mais ça ne marche pas : en erreur il me dit qu’il ne le trouve pas textures/items/InvisibleIcon (oui j’ai modifié un peu le code) alors que je l’ai bien mis où il fallait. Mais chose curieuse : il me dit que le domaine est minecraft et non invisiblearmor. Je crée donc un dossier minecraft dans assets et je crée dedans textures/items et je mets la texture dedans. Cette fois-ci minecraft ne démarre plus et crash …

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

                    p_94581_1_.registerIcon(“modid:icone_invisible”);
                    en adaptant modid par ce qu’il faut.

                    1 Reply Last reply Reply Quote 0
                    • T
                      the_pumpkin_man last edited by

                      @‘robin4002’:

                      p_94581_1_.registerIcon(“modid:icone_invisible”);
                      en adaptant modid par ce qu’il faut.

                      ça ne marche pas, le jeu se crash au démarrage …

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

                        Il faudrait le rapport de crash.

                        1 Reply Last reply Reply Quote 0
                        • T
                          the_pumpkin_man last edited by

                          @‘robin4002’:

                          Il faudrait le rapport de crash.

                          Le voici mon cher : ```java
                          –-- Minecraft Crash Report ----
                          // Who set us up the TNT?

                          Time: 28/05/17 19:45
                          Description: Registering texture

                          java.lang.NullPointerException: Registering texture
                          at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:213)
                          at com.google.common.collect.StandardTable.put(StandardTable.java:139)
                          at com.google.common.collect.HashBasedTable.put(HashBasedTable.java:55)
                          at cpw.mods.fml.client.FMLClientHandler.trackBrokenTexture(FMLClientHandler.java:924)
                          at net.minecraft.client.renderer.texture.TextureMap.loadTextureAtlas(TextureMap.java:184)
                          at net.minecraft.client.renderer.texture.TextureMap.loadTexture(TextureMap.java:98)
                          at net.minecraft.client.renderer.texture.TextureManager.loadTexture(TextureManager.java:89)
                          at net.minecraft.client.renderer.texture.TextureManager.onResourceManagerReload(TextureManager.java:172)
                          at net.minecraft.client.resources.SimpleReloadableResourceManager.notifyReloadListeners(SimpleReloadableResourceManager.java:143)
                          at net.minecraft.client.resources.SimpleReloadableResourceManager.reloadResources(SimpleReloadableResourceManager.java:121)
                          at net.minecraft.client.Minecraft.refreshResources(Minecraft.java:662)
                          at cpw.mods.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:327)
                          at net.minecraft.client.Minecraft.startGame(Minecraft.java:597)
                          at net.minecraft.client.Minecraft.run(Minecraft.java:942)
                          at net.minecraft.client.main.Main.main(Main.java:164)
                          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)
                          at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source)
                          at GradleStart.main(Unknown Source)

                          A detailed walkthrough of the error, its code path and all known details is as follows:

                          – Head –
                          Stacktrace:
                          at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:213)
                          at com.google.common.collect.StandardTable.put(StandardTable.java:139)
                          at com.google.common.collect.HashBasedTable.put(HashBasedTable.java:55)
                          at cpw.mods.fml.client.FMLClientHandler.trackBrokenTexture(FMLClientHandler.java:924)
                          at net.minecraft.client.renderer.texture.TextureMap.loadTextureAtlas(TextureMap.java:184)
                          at net.minecraft.client.renderer.texture.TextureMap.loadTexture(TextureMap.java:98)

                          – Resource location being registered –
                          Details:
                          Resource location: minecraft:textures/atlas/items.png
                          Texture object class: net.minecraft.client.renderer.texture.TextureMap
                          Stacktrace:
                          at net.minecraft.client.renderer.texture.TextureManager.loadTexture(TextureManager.java:89)
                          at net.minecraft.client.renderer.texture.TextureManager.onResourceManagerReload(TextureManager.java:172)
                          at net.minecraft.client.resources.SimpleReloadableResourceManager.notifyReloadListeners(SimpleReloadableResourceManager.java:143)
                          at net.minecraft.client.resources.SimpleReloadableResourceManager.reloadResources(SimpleReloadableResourceManager.java:121)
                          at net.minecraft.client.Minecraft.refreshResources(Minecraft.java:662)
                          at cpw.mods.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:327)
                          at net.minecraft.client.Minecraft.startGame(Minecraft.java:597)

                          – Initialization –
                          Details:
                          Stacktrace:
                          at net.minecraft.client.Minecraft.run(Minecraft.java:942)
                          at net.minecraft.client.main.Main.main(Main.java:164)
                          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)
                          at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source)
                          at GradleStart.main(Unknown Source)

                          – System Details –
                          Details:
                          Minecraft Version: 1.7.10
                          Operating System: Windows 10 (amd64) version 10.0
                          Java Version: 1.8.0_131, Oracle Corporation
                          Java VM Version: Java HotSpot™ 64-Bit Server VM (mixed mode), Oracle Corporation
                          Memory: 712892712 bytes (679 MB) / 1038876672 bytes (990 MB) up to 1038876672 bytes (990 MB)
                          JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M
                          AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
                          IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
                          FML: MCP v9.05 FML v7.10.99.99 Minecraft Forge 10.13.4.1614 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{7.10.99.99} [Forge Mod Loader] (forgeSrc-1.7.10-10.13.4.1614-1.7.10.jar) 
                          UCHIJA Forge{10.13.4.1614} [Minecraft Forge] (forgeSrc-1.7.10-10.13.4.1614-1.7.10.jar) 
                          UCHIJA InvisibleArmor{1.0.0} [InvisibleArmor] (bin) 
                          GL info: ’ Vendor: ‘Intel’ Version: ‘4.4.0 - Build 20.19.15.4549’ Renderer: ‘Intel® HD Graphics’
                          Launched Version: 1.7.10
                          LWJGL: 2.9.1
                          OpenGL: Intel® HD Graphics GL version 4.4.0 - Build 20.19.15.4549, Intel
                          GL Caps: Using GL 1.3 multitexturing.
                          Using framebuffer objects because OpenGL 3.0 is supported and separate blending is supported.
                          Anisotropic filtering is supported and maximum anisotropy is 16.
                          Shaders are available because OpenGL 2.1 is supported.

                          Is Modded: Definitely; Client brand changed to ‘fml,forge’
                          Type: Client (map_client.txt)
                          Resource Packs: []
                          Current Language: Français (France)
                          Profiler Position: N/A (disabled)
                          Vec3 Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
                          Anisotropic Filtering: Off (1)

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

                            Renvoies ton code ?

                            1 Reply Last reply Reply Quote 0
                            • T
                              the_pumpkin_man last edited by

                              @‘robin4002’:

                              Renvoies ton code ?

                              Le voici : ```java
                              package fr.the_pumpkin_man.InvisibleArmor.common;

                              import cpw.mods.fml.relauncher.Side;
                              import cpw.mods.fml.relauncher.SideOnly;
                              import net.minecraft.client.Minecraft;
                              import net.minecraft.client.renderer.texture.IIconRegister;
                              import net.minecraft.entity.EntityLivingBase;
                              import net.minecraft.entity.player.EntityPlayer;
                              import net.minecraft.item.ItemStack;
                              import net.minecraft.item.ItemSword;
                              import net.minecraft.potion.Potion;
                              import net.minecraft.util.IIcon;
                              import net.minecraft.world.World;
                              import net.minecraftforge.event.entity.player.PlayerEvent;

                              public class InvisibleSword extends ItemSword 
                              {
                              public InvisibleSword(ToolMaterial material) 
                              {
                              super(material);
                              this.setUnlocalizedName(“InvisibleSword”);
                              this.setTextureName(InvisibleArmor.MODID + “:InvisibleSword”);
                              }
                              public boolean getIsRepairable(ItemStack input, ItemStack repair)
                              {
                              if(repair.getItem() == InvisibleArmor.InvisibleItem)
                              {
                              return true;
                              }
                              return false;
                              }
                              private IIcon iconInvisible;
                              @Override
                              public void registerIcons(IIconRegister icon) 
                              {
                              super.registerIcons(icon);
                              iconInvisible = icon.registerIcon(“InvisibleArmor:InvisibleIcon”);
                              }
                              @Override
                              @SideOnly(Side.CLIENT)
                              public IIcon getIconFromDamage(int invisible)
                              {
                              return Minecraft.getMinecraft(). thePlayer.isInvisible() ? iconInvisible : itemIcon;
                              }
                              }

                              Je tiens à préciser que j'ai essayé de mettre le MODID en minuscule et avec les majuscules dans le registerIcon.
                              1 Reply Last reply Reply Quote 0
                              • robin4002
                                robin4002 Moddeurs confirmés Rédacteurs Administrateurs last edited by

                                Le modid doit forcement être en minuscule.
                                Si en maj ça crash aussi je ne sais pas trop d’où ça peut venir 😕

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

                                MINECRAFT FORGE FRANCE © 2018

                                Powered by NodeBB