MFF

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

    Problème Invetory + Item comme une map

    Planifier Épinglé Verrouillé Déplacé Sans suite
    1.7.10
    28 Messages 5 Publieurs 4.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.
    • robin4002R Hors-ligne
      robin4002 Moddeurs confirmés Rédacteurs Administrateurs
      dernière édition par

      Minecraft.getMinecraft().getTextureManager(); est surement null au moment ou tu enregistres ton rendu.
      Essaies de l’enregistrer dans init au lieu de preinit.

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

        Bonjours, ceci me met toujours une erreur même dans poste event par contre, quand je désactive cette ligne :

        %(#a9b7c6)[[font=Courier New]MinecraftForgeClient.registerItemRenderer(GloryRP.Identity, new IdentityTechneRender());]
        

        dans ClientProxy ( ici :

        [font=Courier Newpackage ]fr.ph1823.MyLife.Proxy%(#cc7832)[;
        ]
        
        import fr.ph1823.MyLife.GloryRP%(#cc7832)[;
        ]import fr.ph1823.MyLife.Item.IdentityTechneRender%(#cc7832)[;
        ]import net.minecraftforge.client.IItemRenderer%(#cc7832)[;
        ]import net.minecraftforge.client.MinecraftForgeClient%(#cc7832)[;
        ]import net.minecraftforge.common.MinecraftForge%(#cc7832)[;
        ]
        public class ClientProxy extends CommonProxy {
          public ClientProxy() {
             %(#808080)[//MinecraftForgeClient.registerItemRenderer(GloryRP1.t.itemID, (IItemRenderer)new IdentityTechneRender());
        ]      MinecraftForge.*EVENT_BUS*.register(this)%(#cc7832)[;
        ]      %(#808080)[//MinecraftForgeClient.registerItemRenderer(GloryRP.Identity, new IdentityTechneRender());
        ]   }
        }
        ``` )
        Ceci ne produit plus l'erreur.

        Cordialement, le membre ayant le pseudo "ph1823"

        Ma chaîne YouTube: https://www.youtube.com/c/ph1823
        Mon Twitter : https://twitter.com/ph1823
        Des jeux vidéo moin chers? Alors check ici : http://bit.ly/instaceph ou ici : http://bit.ly/g2aph

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

          Euh pourquoi cette ligne au juste ?
          MinecraftForge.EVENT_BUS.register(this);

          Et après le code pour enregistrer les IITemRenderer devrait être à placer dans une méthode crée exprès pour ça, dans ton client proxy. De plus elle devrait (la méthode) être aussi présente dans ton common proxy, mais vide. Et c’est la méthode du common proxy que tu appelleras dans init.

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

            Tu l’as mit dans le constructeur du client proxy, donc pas étonnant que Minecraft.getMinecraft().getTextureManager() est null à ce moment.
            Il faut mettre MinecraftForgeClient.registerItemRenderer(GloryRP.Identity, new IdentityTechneRender() à l’intérieur d’une fonction du client proxy (à toi de choisir un nom) que tu vas ensuite appelé depuis la classe principale.

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

              Bonjours, comme je le pensée ca le dessins la ou il ne le font pas, c’est casiement ce que je voulais, mais je voudrais que ca ce raproche plus de la carte car la ca fait pas 3d 😕 voici un screne du bug :

              merci de vos réponse.

              Cordialement, le membre ayant le pseudo "ph1823"

              Ma chaîne YouTube: https://www.youtube.com/c/ph1823
              Mon Twitter : https://twitter.com/ph1823
              Des jeux vidéo moin chers? Alors check ici : http://bit.ly/instaceph ou ici : http://bit.ly/g2aph

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

                Essaie de changer les valeurs du glScalef dans handleRenderType(…)
                Ensuite tu ajusteras sa position dans le slot de l’inventaire du joueur, avec le glTranslatef

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

                  Bon, je suis un peux nul je crois, car j’ai pris les même valeur que MapItemRenderer voici mon code :

                  [font=Courier Newpackage ]fr.ph1823.MyLife.Item%(#cc7832)[;
                  ]
                  import net.minecraft.client.Minecraft%(#cc7832)[;
                  ]import net.minecraft.client.gui.FontRenderer%(#cc7832)[;
                  ]import net.minecraft.client.gui.MapItemRenderer%(#cc7832)[;
                  ]import net.minecraft.client.renderer.Tessellator%(#cc7832)[;
                  ]import net.minecraft.client.renderer.entity.RenderItem%(#cc7832)[;
                  ]import net.minecraft.client.renderer.texture.DynamicTexture%(#cc7832)[;
                  ]import net.minecraft.client.renderer.texture.TextureManager%(#cc7832)[;
                  ]import net.minecraft.item.ItemMap%(#cc7832)[;
                  ]import net.minecraft.item.ItemStack%(#cc7832)[;
                  ]import net.minecraft.nbt.NBTTagCompound%(#cc7832)[;
                  ]import net.minecraft.nbt.NBTTagList%(#cc7832)[;
                  ]import net.minecraft.nbt.NBTTagString%(#cc7832)[;
                  ]import net.minecraft.util.ResourceLocation%(#cc7832)[;
                  ]import net.minecraft.world.storage.MapData%(#cc7832)[;
                  ]import net.minecraftforge.client.IItemRenderer%(#cc7832)[;
                  ]import org.lwjgl.opengl.GL11%(#cc7832)[;
                  ]
                  %(#629755)[*/**
                  *]%(#629755)[* * Created by ph1823 - Minecraft on 28/03/2016.
                  *]%(#629755)[* */
                  *]public class IdentityTechneRender implements IItemRenderer {
                     protected Identity model%(#cc7832)[;
                  ]    private static RenderItem *renderItem *= new RenderItem()%(#cc7832)[;
                  ]    private static DynamicTexture *dyn*%(#cc7832)[;
                  ]
                      private static TextureManager *manager *= Minecraft.*getMinecraft*().getTextureManager()%(#cc7832)[;
                  ]
                      protected static ResourceLocation *texture *= new ResourceLocation("plants:textures/items/card.png")%(#cc7832)[;
                  ]
                      public IdentityTechneRender()
                     {
                        %(#808080)[// this.getDynamicTextureLocation()
                  ]%(#808080)[        //model = new Identity();
                  ]        *dyn *= new DynamicTexture(64,64)%(#cc7832)[;
                  ]    %(#808080)[//    this.field_148241_e = this.field_148243_c.getTextureData();
                  ]        *texture *= *manager*.getDynamicTextureLocation("plants:textures/items/card.png", *dyn*)%(#cc7832)[;
                  ]
                  
                     }
                  
                     %(#bbb529)[@Override
                  ]    public boolean handleRenderType(ItemStack item, ItemRenderType type) {
                         %(#808080)[// Get icon index for the texture
                  ]        String text= "texte par default"%(#cc7832)[;
                  ]        NBTTagCompound nbt = item.getTagCompound()%(#cc7832)[;
                  ]        if (nbt != null) {
                             NBTTagCompound disp = nbt.getCompoundTag("display")%(#cc7832)[;
                  ]            if (disp != null) {
                                 NBTTagList lore = disp.getTagList("Lore", 8)%(#cc7832)[;
                  ]                if (lore != null) {
                                    %(#808080)[// text = lore.getStringTagAt(0);
                  ]
                                 }
                             }
                         }
                  
                         *manager*.bindTexture(*texture*)%(#cc7832)[;
                  ]        %(#808080)[//net.minecraft.util.IIcon icon = item.getIconIndex();
                  ]%(#808080)[// Use vanilla code to render the icon in a 16x16 square of inventory slot
                  ]%(#808080)[     //   renderItem.renderIcon(0, 0, icon, 16, 16);
                  ]
                  %(#808080)[        //
                  ]%(#808080)[// Set drawing mode (see first tutorial link above).
                  ]%(#808080)[       /* GL11.glBegin(GL11.GL_QUADS);
                  ]%(#808080)[// Set semi-transparent black color
                  ]%(#808080)[        GL11.glColor4f(0F, 0F, 0F, 0.5F);
                  ]
                  %(#808080)[// Draw a 8x8 square
                  ]%(#808080)[        GL11.glVertex3d(0, 0, 0);
                  ]%(#808080)[        GL11.glVertex3d(0, 8, 0);
                  ]%(#808080)[        GL11.glVertex3d(8, 8, 0);
                  ]%(#808080)[        GL11.glVertex3d(8, 0, 0);*/
                  ]
                  %(#808080)[//        GL11.glEnd();
                  ]        byte b0 = 0%(#cc7832)[;
                  ]        byte b1 = 0%(#cc7832)[;
                  ]        Tessellator tessellator = Tessellator.*instance*%(#cc7832)[;
                  ]        float f = 0.0F%(#cc7832)[;
                  ]%(#808080)[// Set drawing mode. Tessellator should support most drawing modes.
                  ]%(#808080)[       // tessellator.startDrawing(GL11.GL_QUADS);
                  ]%(#808080)[// Set semi-transparent black color
                  ]        tessellator.startDrawingQuads()%(#cc7832)[;
                  ]        tessellator.addVertexWithUV((double)((float)(b0 + 0) + f), (double)((float)(b1 + 128) - f), -0.009999999776482582D, 0.0D, 1.0D)%(#cc7832)[;
                  ]        tessellator.addVertexWithUV((double)((float)(b0 + 128) - f), (double)((float)(b1 + 128) - f), -0.009999999776482582D, 1.0D, 1.0D)%(#cc7832)[;
                  ]        tessellator.addVertexWithUV((double)((float)(b0 + 128) - f), (double)((float)(b1 + 0) + f), -0.009999999776482582D, 1.0D, 0.0D)%(#cc7832)[;
                  ]        tessellator.addVertexWithUV((double)((float)(b0 + 0) + f), (double)((float)(b1 + 0) + f), -0.009999999776482582D, 0.0D, 0.0D)%(#cc7832)[;
                  ]        tessellator.draw()%(#cc7832)[;
                  ]
                         FontRenderer fontRenderer = Minecraft.*getMinecraft*().fontRenderer%(#cc7832)[;
                  ]        GL11.*glEnable*(GL11.*GL_ALPHA_TEST*)%(#cc7832)[;
                  ]        GL11.*glDisable*(GL11.*GL_BLEND*)%(#cc7832)[;
                  ]
                         %(#808080)[// Enable texturing, because Minecraft text font is actually a texture
                  ]%(#808080)[        //GL11.glEnable(GL11.GL_TEXTURE_2D);
                  ]%(#808080)[// Get our text value
                  ]
                  %(#808080)[// Draw our text at (1, 1) with white color
                  ]        fontRenderer.drawStringWithShadow(text, 1, 1, 0xFFFFFF)%(#cc7832)[;
                  ]    %(#808080)[//  MapItemRenderer
                  ]%(#808080)[//ItemMap
                  ]        GL11.*glPushMatrix*()%(#cc7832)[;
                  ]        %(#808080)[//GL11.glTranslatef((float)b0 + (float)mapcoord.centerX / 2.0F + 64.0F, (float)b1 + (float)mapcoord.centerZ / 2.0F + 64.0F, -0.02F);
                  ]%(#808080)[        //GL11.glRotatef((float)(mapcoord.iconRotation * 360) / 16.0F, 0.0F, 0.0F, 1.0F);
                  ]        GL11.*glScalef*(4.0F, 4.0F, 3.0F)%(#cc7832)[;
                  ]        GL11.*glTranslatef*(-0.125F, 0.125F, 0.0F)%(#cc7832)[;
                  ]        GL11.*glPopMatrix*()%(#cc7832)[;
                  ]        switch(type)
                         {
                             case *FIRST_PERSON_MAP*:
                  
                                 %(#cc7832)[return true;
                  ]            default:
                                %(#cc7832)[return false;
                  ]        }
                  
                        %(#808080)[// return false;
                  ]    }
                  
                     %(#bbb529)[@Override
                  ]    public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper) {
                         switch(type)
                         {
                             case *FIRST_PERSON_MAP*:
                                 %(#cc7832)[return true;
                  ]            default:
                                 %(#cc7832)[return false;
                  ]        }
                     }
                  
                     %(#bbb529)[@Override
                  ]    public void renderItem(ItemRenderType type, ItemStack item, Object… data) {
                  
                         switch(type)
                         {
                             case *FIRST_PERSON_MAP*:
                             {
                  
                             }
                             default:
                                 %(#cc7832)[break;
                  ]        }
                     }
                  
                  }
                  

                  Merci de vos réponse.

                  Cordialement, le membre ayant le pseudo "ph1823"

                  Ma chaîne YouTube: https://www.youtube.com/c/ph1823
                  Mon Twitter : https://twitter.com/ph1823
                  Des jeux vidéo moin chers? Alors check ici : http://bit.ly/instaceph ou ici : http://bit.ly/g2aph

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

                    Problème résolu du coup ?

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

                      Ha mince, en mettant ce message j’avais crue mettre bien exprimé, justement non, cela fait la même chose que avec l’ancien code, et le même bug que dans l’image 😕 Comment pourais-je faire ?

                      Cordialement, le membre ayant le pseudo "ph1823"

                      Ma chaîne YouTube: https://www.youtube.com/c/ph1823
                      Mon Twitter : https://twitter.com/ph1823
                      Des jeux vidéo moin chers? Alors check ici : http://bit.ly/instaceph ou ici : http://bit.ly/g2aph

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

                        Essaie de recopier une fonction pour dessiner, la tesselation est compliquée et elle fait souvent n’importe quoi

                        Site web contenant mes scripts : http://SCAREXgaming.github.io

                        Pas de demandes de support par MP ni par skype SVP.
                        Je n'accepte sur skype que l…

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

                          Bonjoours, recopier quelle fonction? Une fonction de MapItemRender? Merci de votre aide.

                          Cordialement, le membre ayant le pseudo "ph1823"

                          Ma chaîne YouTube: https://www.youtube.com/c/ph1823
                          Mon Twitter : https://twitter.com/ph1823
                          Des jeux vidéo moin chers? Alors check ici : http://bit.ly/instaceph ou ici : http://bit.ly/g2aph

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

                            Le problème vient bien de là ?

                            tessellator.startDrawingQuads();
                            tessellator.addVertexWithUV((double)((float)(b0 + 0) + f), (double)((float)(b1 + 128) - f), -0.009999999776482582D, 0.0D, 1.0D);
                            tessellator.addVertexWithUV((double)((float)(b0 + 128) - f), (double)((float)(b1 + 128) - f), -0.009999999776482582D, 1.0D, 1.0D);
                            tessellator.addVertexWithUV((double)((float)(b0 + 128) - f), (double)((float)(b1 + 0) + f), -0.009999999776482582D, 1.0D, 0.0D);
                            tessellator.addVertexWithUV((double)((float)(b0 + 0) + f), (double)((float)(b1 + 0) + f), -0.009999999776482582D, 0.0D, 0.0D);
                            tessellator.draw();
                            

                            Pour tester mets en commentaire par exemple

                            Site web contenant mes scripts : http://SCAREXgaming.github.io

                            Pas de demandes de support par MP ni par skype SVP.
                            Je n'accepte sur skype que l…

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

                            MINECRAFT FORGE FRANCE © 2024

                            Powered by NodeBB