MFF

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

    Comment faire une lance ?

    Planifier Épinglé Verrouillé Déplacé Sans suite
    1.7.10
    73 Messages 5 Publieurs 16.3k 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.
    • QuantumSheepQ Hors-ligne
      QuantumSheep
      dernière édition par

      Voilà : https://github.com/ArkCraft/ArkCraftMod/blob/master/src/main/java/com/quantumsheep/arkcraft/render/RenderSpear.java

      Par contre ça m’affiche comme ça : http://www.hostingpics.net/viewer.php?id=93329420150817220505.png (Là ou je vise est là ou la lance atterrie, elle se tp au bout d’un moment)

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

        xD, tu peux le mettre dans vos plus beaux fails.

        Tu as copié le rendu de la flèche, or minecraft n’utilise pas le même système de rendu.

        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
        • QuantumSheepQ Hors-ligne
          QuantumSheep
          dernière édition par

          Je veux bien mais je ne saurais pas l’expliquer xD

          Tu peux m’éclaircir voir si tu as le temps me faire le code de rendu ? 😛

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

            Voilà le rendu de base :

            public class TonRender extends Render
            {
            @Override
            public void doRender(Entity entity, double x, double y, double z, float f, float prt) {
            GL11.glPushMatrix();
            GL11.glTranslated(x, y, z); // On décale l'entité pour qu'elle soit au bon endroit
            GL11.glTranslatef(0.0F, 1.4F, 0.0F); // Ici tu décales ton entité en fonction de ce que tu veux, pour moi mon model était trop bas, donc je l'ai monté de 1
            GL11.glRotatef(180.0F, 1.0F, 0.0F, 0.0F); // Ensuite tu modifies la rotation (NOTE : c'est mieux de faire la rotation après, NOTE 2 : mon model ne tournait pas en fonction de la direction de l'entité, il faut que tu le rajoutes toi-même)
            this.bindEntityTexture(entity); // On bind la texture
            // Si tu veux augmenter la taille de ton model avec un glScale, c'est ici qu'il faut le faire
            tonModel.render(entity, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F);
            GL11.glPopMatrix();
            }
            
            @Override
            protected ResourceLocation getEntityTexture(Entity entity) {
            return taTexture;
            }
            }
            
            

            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
            • QuantumSheepQ Hors-ligne
              QuantumSheep
              dernière édition par

              Re,

              J’ai un problème à la la ligne : “tonModel.render(entity, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F);”
              J’ai bien modifié tonModel par ModelSpear mais il me créé une érreur car ModelSpear.render est en “public void” mais je ne peux pas changer en “public static” sinon ça fait tout buguer 😕

              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 nouvelle instance de ton modèle …
                Au début de la classe :
                private ModelSpear modelSpear = new ModelSpear();
                Et ensuite dans la fonction doRender tu fais modelSpear.render(entity, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F);

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

                  Voilà, j’ai fini le code de rendu ::::

                  package com.quantumsheep.arkcraft.render;
                  
                  import org.lwjgl.opengl.GL11;
                  import org.lwjgl.opengl.GL12;
                  
                  import com.quantumsheep.arkcraft.entity.EntitySpear;
                  import com.quantumsheep.arkcraft.lib.References;
                  import com.quantumsheep.arkcraft.models.ModelSpear;
                  
                  import cpw.mods.fml.relauncher.Side;
                  import cpw.mods.fml.relauncher.SideOnly;
                  import net.minecraft.client.model.ModelBase;
                  import net.minecraft.client.model.ModelBiped;
                  import net.minecraft.client.renderer.Tessellator;
                  import net.minecraft.client.renderer.entity.Render;
                  import net.minecraft.entity.Entity;
                  import net.minecraft.entity.EntityLiving;
                  import net.minecraft.util.MathHelper;
                  import net.minecraft.util.ResourceLocation;
                  
                  @SideOnly(Side.CLIENT)
                  public class RenderSpear extends Render
                  {
                      private static final ResourceLocation SpearTextures = new ResourceLocation(References.MODID, "textures/models/ModelSpear.png");
                      private ModelSpear modelSpear = new ModelSpear();
                  
                      public RenderSpear()
                      {
                          this.shadowSize = 0.5F;
                      }
                  
                  public void renderSpear(EntitySpear entitySpear, double x, double y, double z, float f, float prt) {
                  GL11.glPushMatrix();
                  GL11.glTranslated(x, y, z); // On décale l'entité pour qu'elle soit au bon endroit
                  GL11.glTranslatef(0.0F, 1.4F, 0.0F); // Ici tu décales ton entité en fonction de ce que tu veux, pour moi mon model était trop bas, donc je l'ai monté de 1
                  GL11.glRotatef(180.0F, 1.0F, 0.0F, 0.0F); // Ensuite tu modifies la rotation (NOTE : c'est mieux de faire la rotation après, NOTE 2 : mon model ne tournait pas en fonction de la direction de l'entité, il faut que tu le rajoutes toi-même)
                  this.bindEntityTexture(entitySpear); // On bind la texture
                  // Si tu veux augmenter la taille de ton model avec un glScale, c'est ici qu'il faut le faire
                  modelSpear.render(entitySpear, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F);
                  GL11.glPopMatrix();
                  }
                  
                  protected ResourceLocation getEntityTexture(EntitySpear entitySpear) {
                  return SpearTextures;
                  }
                  
                      @Override
                      protected ResourceLocation getEntityTexture(Entity entity)
                      {
                          return this.getEntityTexture((EntitySpear)entity);
                      }
                  
                      @Override
                      public void doRender(Entity entity, double par2, double par4, double par6, float par8, float par9)
                      {
                          this.renderSpear((EntitySpear)entity, par2, par4, par6, par8, par9);
                      }
                  }
                  

                  :::

                  Sauf que cette fois : http://img11.hostingpics.net/pics/69884320150818123538.png
                  Et la lance se tp toujours un moment après que je l’ai lancée…

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

                    Ca m’arrive encore bien également , lorsque je la tire au sol parfois elle se tp au dessus , il n’y a que quand je tire sur un mob qu’elle ne fais pas chier.

                    Oui ce gif est drôle.

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

                      Oui sauf que moi c’est tout le temps 😛
                      Et ça m’embête car elle se tp au dessus mais aussi à coté parfois…

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

                        @‘QuantumSheep’:

                        Oui sauf que moi c’est tout le temps 😛
                        Et ça m’embête car elle se tp au dessus mais aussi à coté parfois…

                        Oui ca me fait la même chose ^^ J’ai jamais réussi a régler le problème 😕 Si quelqu’un a la soluce d’ailleurs 🙂

                        Oui ce gif est drôle.

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

                          Je comprends pas trop, tu peux faire une vidéo ?

                          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
                          • FlowF Hors-ligne
                            Flow
                            dernière édition par

                            Tiens

                            Youtube Video

                            Ouais je regardais une série a ce moment la xD

                            Oui ce gif est drôle.

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

                              c’est toujours très pratique les vidéos privées…

                              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
                              • FlowF Hors-ligne
                                Flow
                                dernière édition par

                                @‘SCAREX’:

                                c’est toujours très pratique les vidéos privées…

                                EXCUSE moi , j’oublie a chaque fois x)

                                Oui ce gif est drôle.

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

                                  A mon avis le bug vient du code, vous avez recopié le code de la flèche ?

                                  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
                                  • FlowF Hors-ligne
                                    Flow
                                    dernière édition par

                                    @‘SCAREX’:

                                    A mon avis le bug vient du code, vous avez recopié le code de la flèche ?

                                    Oui ^^ Pour l’instant ca me dérange pas plus que ca mais si la soluce existe je prend ^^

                                    Oui ce gif est drôle.

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

                                      Je connais pas le code de la flèche, mais si tu veux corriger le bug, il faut parcourir le code pour voir d’où vient le problème

                                      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
                                      • QuantumSheepQ Hors-ligne
                                        QuantumSheep
                                        dernière édition par

                                        Voilà, c’est exactement le problème 😄

                                        Fifou, tu peux m’envoyer ton code de rendu stp ? Pour comparer

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

                                          package mod.client.render;
                                          
                                          import cpw.mods.fml.relauncher.Side;
                                          import cpw.mods.fml.relauncher.SideOnly;
                                          import mod.common.entity.EntityFlechette;
                                          import net.minecraft.client.model.ModelBase;
                                          import net.minecraft.client.renderer.Tessellator;
                                          import net.minecraft.client.renderer.entity.RenderLiving;
                                          import net.minecraft.entity.Entity;
                                          import net.minecraft.util.ResourceLocation;
                                          
                                          import org.lwjgl.opengl.GL11;
                                          
                                          @SideOnly(Side.CLIENT)
                                          public class RenderFlechette extends RenderLiving
                                          {
                                            public RenderFlechette(ModelBase par1ModelBase, float par2)
                                            {
                                              super(par1ModelBase, par2);
                                            }
                                          
                                            protected ResourceLocation getEntityTexture(Entity var1)
                                            {
                                              return new ResourceLocation("dinocraft", "textures/entity/EntityFlechette.png");
                                            }
                                          
                                            public void doRender(EntityFlechette par1EntityFlechette, double par2, double par4, double par6, float par8, float par9)
                                            {
                                              bindEntityTexture(par1EntityFlechette);
                                              GL11.glPushMatrix();
                                              GL11.glTranslatef((float)par2, (float)par4, (float)par6);
                                              GL11.glRotatef(par1EntityFlechette.prevRotationYaw + (par1EntityFlechette.rotationYaw - par1EntityFlechette.prevRotationYaw) * par9 - 90.0F, 0.0F, 1.0F, 0.0F);
                                              GL11.glRotatef(par1EntityFlechette.prevRotationPitch + (par1EntityFlechette.rotationPitch - par1EntityFlechette.prevRotationPitch) * par9, 0.0F, 0.0F, 1.0F);
                                              Tessellator tessellator = Tessellator.instance;
                                              byte b0 = 0;
                                              float f2 = 0.0F;
                                              float f3 = 0.5F;
                                              float f4 = (0 + b0 * 10) / 32.0F;
                                              float f5 = (5 + b0 * 10) / 32.0F;
                                              float f6 = 0.0F;
                                              float f7 = 0.15625F;
                                              float f8 = (5 + b0 * 10) / 32.0F;
                                              float f9 = (10 + b0 * 10) / 32.0F;
                                              float f10 = 0.05625F;
                                              GL11.glEnable(32826);
                                          
                                              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, f6, f8);
                                              tessellator.addVertexWithUV(-7.0D, -2.0D, 2.0D, f7, f8);
                                              tessellator.addVertexWithUV(-7.0D, 2.0D, 2.0D, f7, f9);
                                              tessellator.addVertexWithUV(-7.0D, 2.0D, -2.0D, f6, f9);
                                              tessellator.draw();
                                              GL11.glNormal3f(-f10, 0.0F, 0.0F);
                                              tessellator.startDrawingQuads();
                                              tessellator.addVertexWithUV(-7.0D, 2.0D, -2.0D, f6, f8);
                                              tessellator.addVertexWithUV(-7.0D, 2.0D, 2.0D, f7, f8);
                                              tessellator.addVertexWithUV(-7.0D, -2.0D, 2.0D, f7, f9);
                                              tessellator.addVertexWithUV(-7.0D, -2.0D, -2.0D, f6, 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, f2, f4);
                                                tessellator.addVertexWithUV(8.0D, -2.0D, 0.0D, f3, f4);
                                                tessellator.addVertexWithUV(8.0D, 2.0D, 0.0D, f3, f5);
                                                tessellator.addVertexWithUV(-8.0D, 2.0D, 0.0D, f2, f5);
                                                tessellator.draw();
                                              }
                                          
                                              GL11.glDisable(32826);
                                              GL11.glPopMatrix();
                                            }
                                          
                                            public void doRender(Entity par1Entity, double par2, double par4, double par6, float par8, float par9)
                                            {
                                              doRender((EntityFlechette)par1Entity, par2, par4, par6, par8, par9);
                                            }
                                          }
                                          

                                          Tiens 🙂

                                          Oui ce gif est drôle.

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

                                            Merci 🙂

                                            C’est chelou le TP car quand je fait F3+B Il m’affiche comme si la hitbox était toujours sur la flèche alors que on peut la récupérer uniquement là ou elle a atterrie.
                                            J’ai fait des tests et lors d’un déco-reco la flèche se remet bien comme il faut…

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

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB