MFF

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

    Creer une fleche

    Planifier Épinglé Verrouillé Déplacé Sans suite
    1.7.10
    14 Messages 4 Publieurs 2.7k 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.
    • LudrakL Hors-ligne
      Ludrak
      dernière édition par

      salut je sait que c’est une question un peut débile mais j’aimerais savoir comment créer une flèche dans minecraft, il n’y a aucun tuto dessus sur le forum ( en tout cas je n’en ait pas trouvé  😉 )
      en fait j’ai créé un pistolet qui est un arc modifié qui n’as pas besoin d’être chargé et qui tire quasiment droit mais jusqu’a maintenant il tire des flèches et j’aimerais savoir comment créer une “balle” qui serait en fait la base d’ une flèche   😄
      merci d’avance !

      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

        Il suffit de créer une nouvelle entité.

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

          ok mais je n’ai jamais créé d’entité est ce qu’il y a une class spéciale a créer ( je sait qu’il y a le render et la class item pour une flèche )
          et puis au niveau du code je galère un  peut…
          j’ai essayé de reprendre le code de l’entité EntityArrow mais c’était 600 lignes et sa tirait du vide ( il n’y avait ni les textures ni les particules ) 
          ps : si je n’ai pas de textures mais juste les particules ce serait très bien quand meme 😉

          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

            Il faut créer une classe extends Entity (ou EntityProjectil ou autre classe héritant de Entity), créer une classe pour rendu et enregistrer l’entité avec EntityRegistry.registerModEntity + enregistrer le rendu côté client seulement avec RenderingRegistry.registerEntityRenderingHandler

            Après une recherche de flèche dans la section peut aussi aider : http://www.minecraftforgefrance.fr/search.php?action=results&sid=8d6063e6b9f51759f9f2e42a11ca2e25&sortby=lastpostℴ=desc

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

              ok merci ^^

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

                j’ai créer l’entité mais quand je tire avec mon pistolet sa ne tire pas la texture de ma balle mais un “cube” blanc…
                tu saurait d’ou sa vient ?

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

                  Déjà évite le double post 🙂
                  Et ensuite cela vient de la classe du rendu de ton entity, soit tu ne bind pas la bonne texture, soit celle-ci n’est pas au bonne endroit 🙂
                  Montre la nous pour qu’on puisse t’aider 😉

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

                    ok et désolé pour le double post 😉

                    package com.ludrak.mods.Guns;

                    import cpw.mods.fml.relauncher.Side;
                    import cpw.mods.fml.relauncher.SideOnly;
                    import net.minecraft.client.renderer.Tessellator;
                    import net.minecraft.client.renderer.entity.Render;
                    import net.minecraft.entity.Entity;
                    import net.minecraft.entity.projectile.EntityArrow;
                    import net.minecraft.util.MathHelper;
                    import net.minecraft.util.ResourceLocation;
                    import org.lwjgl.opengl.GL11;
                    import org.lwjgl.opengl.GL12;

                    @SideOnly(Side.CLIENT)
                    public class RenderBullet extends Render
                    {
                    private static final ResourceLocation arrowTextures = new ResourceLocation(“textures/entity/RenderEntityBullet.png”);
                    private static final String __OBFID = “CL_00000978”;

                    public void doRender(EntityArrow p_76986_1_, double p_76986_2_, double p_76986_4_, double p_76986_6_, float p_76986_8_, float p_76986_9_)
                    {
                    this.bindEntityTexture(p_76986_1_);
                    GL11.glPushMatrix();
                    GL11.glTranslatef((float)p_76986_2_, (float)p_76986_4_, (float)p_76986_6_);
                    GL11.glRotatef(p_76986_1_.prevRotationYaw + (p_76986_1_.rotationYaw - p_76986_1_.prevRotationYaw) * p_76986_9_ - 90.0F, 0.0F, 1.0F, 0.0F);
                    GL11.glRotatef(p_76986_1_.prevRotationPitch + (p_76986_1_.rotationPitch - p_76986_1_.prevRotationPitch) * p_76986_9_, 0.0F, 0.0F, 1.0F);
                    Tessellator tessellator = Tessellator.instance;
                    byte b0 = 0;
                    float f2 = 0.0F;
                    float f3 = 0.5F;
                    float f4 = (float)(0 + b0 * 10) / 32.0F;
                    float f5 = (float)(5 + b0 * 10) / 32.0F;
                    float f6 = 0.0F;
                    float f7 = 0.15625F;
                    float f8 = (float)(5 + b0 * 10) / 32.0F;
                    float f9 = (float)(10 + b0 * 10) / 32.0F;
                    float f10 = 0.05625F;
                    GL11.glEnable(GL12.GL_RESCALE_NORMAL);
                    float f11 = (float)p_76986_1_.arrowShake - p_76986_9_;

                    if (f11 > 0.0F)
                    {
                    float f12 = -MathHelper.sin(f11 * 3.0F) * f11;
                    GL11.glRotatef(f12, 0.0F, 0.0F, 1.0F);
                    }

                    GL11.glRotatef(45.0F, 1.0F, 0.0F, 0.0F);
                    GL11.glScalef(f10, f10, f10);
                    GL11.glTranslatef(-4.0F, 0.0F, 0.0F);
                    GL11.glNormal3f(f10, 0.0F, 0.0F);
                    tessellator.startDrawingQuads();
                    tessellator.addVertexWithUV(-7.0D, -2.0D, -2.0D, (double)f6, (double)f8);
                    tessellator.addVertexWithUV(-7.0D, -2.0D, 2.0D, (double)f7, (double)f8);
                    tessellator.addVertexWithUV(-7.0D, 2.0D, 2.0D, (double)f7, (double)f9);
                    tessellator.addVertexWithUV(-7.0D, 2.0D, -2.0D, (double)f6, (double)f9);
                    tessellator.draw();
                    GL11.glNormal3f(-f10, 0.0F, 0.0F);
                    tessellator.startDrawingQuads();
                    tessellator.addVertexWithUV(-7.0D, 2.0D, -2.0D, (double)f6, (double)f8);
                    tessellator.addVertexWithUV(-7.0D, 2.0D, 2.0D, (double)f7, (double)f8);
                    tessellator.addVertexWithUV(-7.0D, -2.0D, 2.0D, (double)f7, (double)f9);
                    tessellator.addVertexWithUV(-7.0D, -2.0D, -2.0D, (double)f6, (double)f9);
                    tessellator.draw();

                    for (int i = 0; i < 4; ++i)
                    {
                    GL11.glRotatef(90.0F, 1.0F, 0.0F, 0.0F);
                    GL11.glNormal3f(0.0F, 0.0F, f10);
                    tessellator.startDrawingQuads();
                    tessellator.addVertexWithUV(-8.0D, -2.0D, 0.0D, (double)f2, (double)f4);
                    tessellator.addVertexWithUV(8.0D, -2.0D, 0.0D, (double)f3, (double)f4);
                    tessellator.addVertexWithUV(8.0D, 2.0D, 0.0D, (double)f3, (double)f5);
                    tessellator.addVertexWithUV(-8.0D, 2.0D, 0.0D, (double)f2, (double)f5);
                    tessellator.draw();
                    }

                    GL11.glDisable(GL12.GL_RESCALE_NORMAL);
                    GL11.glPopMatrix();
                    }

                    protected ResourceLocation getEntityTexture(EntityBullet p_110775_1_)
                    {
                    return arrowTextures;
                    }

                    protected ResourceLocation getEntityTexture(Entity p_110775_1_)
                    {
                    return this.getEntityTexture((EntityBullet)p_110775_1_);
                    }

                    public void doRender(Entity p_76986_1_, double p_76986_2_, double p_76986_4_, double p_76986_6_, float p_76986_8_, float p_76986_9_)
                    {
                    this.doRender((EntityBullet)p_76986_1_, p_76986_2_, p_76986_4_, p_76986_6_, p_76986_8_, p_76986_9_);
                    }
                    }

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

                      c’était ma class Render

                      1 réponse Dernière réponse Répondre Citer 0
                      • FolganskyF Hors-ligne
                        Folgansky Correcteurs
                        dernière édition par

                        Coucou, la fonction recherche aide énormément quand on ne sait pas par quoi commencer:

                        http://www.minecraftforgefrance.fr/showthread.php?tid=2509&highlight=créer+une+lance

                        De quoi pas mal t’inspirer j’espère

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

                          Il faut peut-être indiquer ton modid à cette ligne
                          private static final ResourceLocation arrowTextures = new ResourceLocation(“textures/entity/RenderEntityBullet.png”);
                          Car là il est clair que le jeu recherche une texture inexistante…

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

                            j’ai essaye de remplacer sa par
                            private static final ResourceLocation arrowTextures = new ResourceLocation(References.MODID + “:RenderEntityBullet”);
                            mais sa ne marche pas :/___mais si il ne trouvait pas la texture il ne mettrait pas la texture rose et noire ?

                            1 réponse Dernière réponse Répondre Citer 0
                            • FolganskyF Hors-ligne
                              Folgansky Correcteurs
                              dernière édition par

                              Il faut écrire le chemin depuis le dossier texture.
                              Ensuite tu devrais vraiment mais vraiment éviter les doubles post et préférer éditer un message avant que les grands méchants modos ne t’attrapent 😃

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

                                ok merci 🙂
                                mais pour le chemin c’est ce que j’avait marqué : “textures/entity/RenderEntityBullet.png”

                                sinon je peut ne pas afficher la texture mais que les particules ?

                                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