MFF

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

    Item changeant de texture

    Planifier Épinglé Verrouillé Déplacé Sans suite
    1.7.10
    14 Messages 4 Publieurs 2.9k 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
      the_pumpkin_man
      dernière édition par

      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 réponse Dernière réponse Répondre Citer 0
      • BrokenSwingB Hors-ligne
        BrokenSwing Moddeurs confirmés Rédacteurs
        dernière édition par

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

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

          @‘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 réponse Dernière réponse Répondre Citer 0
          • AymericRedA Hors-ligne
            AymericRed
            dernière édition par

            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 réponse Dernière réponse Répondre Citer 0
            • T Hors-ligne
              the_pumpkin_man
              dernière édition par

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

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

                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 réponse Dernière réponse Répondre Citer 0
                • T Hors-ligne
                  the_pumpkin_man
                  dernière édition par

                  @‘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 réponse Dernière réponse Répondre Citer 0
                  • robin4002R En ligne
                    robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                    dernière édition par

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

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

                      @‘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 réponse Dernière réponse Répondre Citer 0
                      • robin4002R En ligne
                        robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                        dernière édition par

                        Il faudrait le rapport de crash.

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

                          @‘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 réponse Dernière réponse Répondre Citer 0
                          • robin4002R En ligne
                            robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                            dernière édition par

                            Renvoies ton code ?

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

                              @‘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 réponse Dernière réponse Répondre Citer 0
                              • robin4002R En ligne
                                robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                                dernière édition par

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

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

                                MINECRAFT FORGE FRANCE © 2024

                                Powered by NodeBB