• S'inscrire
    • Se connecter
    • Recherche
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes

    Retirer le visuel en main Item

    Sans suite
    1.7.10
    4
    13
    2557
    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.
    • DCEDO
      DCEDO dernière édition par

      Bonjour savez-vous s’il est possible et si oui comment retirer le visuel en main d’un item ? Pour l’avoir uniquement dans la barre d’action.

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

        Il y a surement un autre moyen mais tu peux passer par une IItemRenderer (tuto sur le forum) et ne rien rendre du tout si l’item est en main.

        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
        • DCEDO
          DCEDO dernière édition par

          @‘AymericRed’:

          Il y a surement un autre moyen mais tu peux passer par une IItemRenderer (tuto sur le forum) et ne rien rendre du tout si l’item est en main.

          Je dois mal utiliser l’outil de recherche car ca ne donné rien avec ta réponse (dans la recherche de tutoriel)

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

            C’est que c’est pas dans le titre. https://www.minecraftforgefrance.fr/showthread.php?tid=130 il est valable en 1.7 je l’ai utilisé, mais en 1.8 c’est les jsons.

            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
            • DCEDO
              DCEDO dernière édition par

              @‘AymericRed’:

              C’est que c’est pas dans le titre. https://www.minecraftforgefrance.fr/showthread.php?tid=130 il est valable en 1.7 je l’ai utilisé, mais en 1.8 c’est les jsons.

              Je vais voir, merci 😛

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

                Oui, le plus simple et de passer par un json pour annuler le rendu en main, en fait ça reviens à ne pas l’annuler mais plutôt à ne rien rendre

                1 réponse Dernière réponse Répondre Citer 0
                • DCEDO
                  DCEDO dernière édition par

                  @‘BrokenSwing’:

                  Oui, le plus simple et de passer par un json pour annuler le rendu en main, en fait ça reviens à ne pas l’annuler mais plutôt à ne rien rendre

                  En 1.7.10 je peux faire ca avec un json ? Un ami m’a dit que le fait de faire un rendu qui ne rend rien pourrait créer des lags inutiles.

                  1 réponse Dernière réponse Répondre Citer 0
                  • robin4002
                    robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par

                    Il n’y a pas de json pour les modèles d’item / bloc en 1.7.10.
                    Il faudrait plutôt que tu changes d’amis.
                    Un rendu vide, c’est un rendu qui fait rien, c’est mathématiquement impossible que ne rien faire utilise plus de cycle cpu / gpu que faire quelque chose.

                    1 réponse Dernière réponse Répondre Citer 0
                    • DCEDO
                      DCEDO dernière édition par

                      @‘robin4002’:

                      Il n’y a pas de json pour les modèles d’item / bloc en 1.7.10.
                      Il faudrait plutôt que tu changes d’amis.
                      Un rendu vide, c’est un rendu qui fait rien, c’est mathématiquement impossible que ne rien faire utilise plus de cycle cpu / gpu que faire quelque chose.

                      Ahah, je vais y penser alors ! Merci

                      J’ai suivi le tutoriel mais je bloque sur deux petites erreurs :

                      package fr.shyfe.dcedo.common;
                      
                      import org.lwjgl.opengl.GL11;
                      
                      import net.minecraft.client.Minecraft;
                      import net.minecraft.entity.Entity;
                      import net.minecraft.item.ItemStack;
                      import net.minecraft.util.ResourceLocation;
                      import net.minecraftforge.client.IItemRenderer;
                      
                      public class ItemPressionTechneRenderer implements IItemRenderer{
                      
                      protected ItemPressionTechneModel model;
                      protected static final ResourceLocation texture = new ResourceLocation("ModTutoriel:textures/items/itemTechne.png");
                      
                      public ItemPressionTechneRenderer ()
                      {
                      model = new ItemPressionTechneModel();
                      }
                      
                      @Override
                      public boolean handleRenderType(ItemStack item, ItemRenderType type)
                      {
                      switch(type)
                      {
                      case EQUIPPED:
                      return true;
                      default:
                      return false;
                      }
                      }
                      
                      @Override
                      public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper)
                      {
                      return false;
                      }
                      
                      @Override
                      public void renderItem(ItemRenderType type, ItemStack item, Object… data)
                      {
                      switch(type)
                      {
                      case EQUIPPED_FIRST_PERSON:
                      {
                      GL11.glPushMatrix();
                      Minecraft.getMinecraft().renderEngine.func_110577_a(texture);
                      model.render((Entity)data[1], 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F);
                      GL11.glPopMatrix();
                      break;
                      }
                      default:
                      break;
                      }
                      }
                      }
                      
                      

                      Dans la troisième méthode, “Minecraft.getMinecraft().renderEngine.func_110577_a(texture);” le func est en erreur.

                      Et dans mon ClientProxy :

                      package fr.shyfe.dcedo.proxy;
                      
                      import BlockPers.TileEntityGrassA;
                      import BlockPers.TileEntityGrassB;
                      import BlockPers.TileEntityGrassC;
                      import BlockPers.TileEntityIncBox;
                      import BlockPers.TileEntityTroncCim;
                      import SortIop.Pression;
                      import SortIop.SortsIop;
                      import cpw.mods.fml.client.registry.ClientRegistry;
                      import cpw.mods.fml.client.registry.RenderingRegistry;
                      import fr.shyfe.dcedo.common.ItemPressionTechneRenderer;
                      import fr.shyfe.dcedo.common.Main;
                      import net.minecraft.client.model.ModelBiped;
                      import net.minecraftforge.client.IItemRenderer;
                      import net.minecraftforge.client.MinecraftForgeClient;
                      
                      public class ClientProxy extends CommonProxy {
                      
                      public static int tesrRenderId;
                      
                      @Override
                      public void registerRender()
                      {
                      tesrRenderId = RenderingRegistry.getNextAvailableRenderId();
                              RenderingRegistry.registerBlockHandler(new TESRInventoryRenderer());
                      
                      ClientRegistry.bindTileEntitySpecialRenderer(TileEntityGrassA.class, new TileEntityGrassASpecialRenderer());
                      ClientRegistry.bindTileEntitySpecialRenderer(TileEntityGrassB.class, new TileEntityGrassBSpecialRenderer());
                      ClientRegistry.bindTileEntitySpecialRenderer(TileEntityGrassC.class, new TileEntityGrassCSpecialRenderer());
                      ClientRegistry.bindTileEntitySpecialRenderer(TileEntityIncBox.class, new TileEntityIncBoxSpecialRenderer());
                      ClientRegistry.bindTileEntitySpecialRenderer(TileEntityTroncCim.class, new TileEntityTroncCimSpecialRenderer());
                      
                      MinecraftForgeClient.registerItemRenderer(SortsIop.Pression.itemID, (IItemRenderer)new ItemPressionTechneRenderer());
                      }
                      }
                      
                      

                      Le “.itemID” me donne l’erreur suivant : “itemID cannot be resolved or is not a field”

                      L’item auquel je souhaiterais donner un modèle particulier (rien) est déclaré dans SortsIop.java sous le nom de “Pression”.

                      Je précise aussi que je n’ai rien mis dans la classe du modèle étant donné que je ne veux rien :

                      package fr.shyfe.dcedo.common;
                      
                      import net.minecraft.client.model.ModelBase;
                      
                      public class ItemPressionTechneModel extends ModelBase {
                      
                      }
                      
                      1 réponse Dernière réponse Répondre Citer 0
                      • robin4002
                        robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par

                        Retire le .itemID.
                        Et pour le func_110577_a, c’est surement bindTexture le remplaçant.

                        Par contre avec ça tu aura bien un rendu, si tu veux rien faut laisser la classe vide.

                        1 réponse Dernière réponse Répondre Citer 0
                        • DCEDO
                          DCEDO dernière édition par

                          @‘robin4002’:

                          Retire le .itemID.
                          Et pour le func_110577_a, c’est surement bindTexture le remplaçant.

                          Par contre avec ça tu aura bien un rendu, si tu veux rien faut laisser la classe vide.

                          Quelle classe je dois laisser vide ? Celle du modèle l’est déjà. Ici ca fonctionne en F5 (les joueurs ne voient plus le modèle mais je l’ai toujours en main).

                          1 réponse Dernière réponse Répondre Citer 0
                          • robin4002
                            robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par

                            La fonction renderItem, au lieu de mettre ce que tu as mis dedans laisse-là vide.
                            Supprimes aussi ItemPressionTechneModel  ainsi que les trois lignes suivantes :
                            protected ItemPressionTechneModel model;
                            protected static final ResourceLocation texture = new ResourceLocation(“ModTutoriel:textures/items/itemTechne.png”);
                            model = new ItemPressionTechneModel();
                            Tu n’en as pas besoin, ça fait du code et des appelles de fonction pour rien.

                            1 réponse Dernière réponse Répondre Citer 0
                            • DCEDO
                              DCEDO dernière édition par

                              Ca fonctionne, merci encore !

                              Au passage si vous voulez comme moi retirer le modèle de votre main et non du joueur en F5, changez

                              EQUIPPED de la première méthode en EQUIPPED_FIRST_PERSON

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

                              MINECRAFT FORGE FRANCE © 2018

                              Powered by NodeBB