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.
    • 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
                          • 1 / 2
                          • Premier message
                            Dernier message
                          Design by Woryk
                          ContactMentions Légales

                          MINECRAFT FORGE FRANCE © 2024

                          Powered by NodeBB