MFF

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

    Animer simplement un mob

    Planifier Épinglé Verrouillé Déplacé Les entités
    35 Messages 16 Publieurs 16.2k 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.
    • zeldadu76290Z Hors-ligne
      zeldadu76290
      dernière édition par

      Désoler de Re déranger mais cela ne marche pas je dois vraiment être stupide voici ma class :

      
      import cpw.mods.fml.client.*;
      import cpw.mods.fml.client.registry.*;
      import cpw.mods.fml.common.*;
      import cpw.mods.fml.common.asm.*;
      import cpw.mods.fml.common.asm.transformers.*;
      import cpw.mods.fml.common.discovery.*;
      import cpw.mods.fml.common.discovery.asm.*;
      import cpw.mods.fml.common.event.*;
      import cpw.mods.fml.common.functions.*;
      import cpw.mods.fml.common.network.*;
      import cpw.mods.fml.common.registry.*;
      import cpw.mods.fml.common.toposort.*;
      import cpw.mods.fml.common.versioning.*;
      import cpw.mods.fml.relauncher.*;
      import cpw.mods.fml.server.*;
      import net.minecraft.block.*;
      import net.minecraft.block.material.*;
      import net.minecraft.client.*;
      import net.minecraft.client.audio.*;
      import net.minecraft.client.entity.*;
      import net.minecraft.client.gui.*;
      import net.minecraft.client.gui.achievement.*;
      import net.minecraft.client.gui.inventory.*;
      import net.minecraft.client.model.*;
      import net.minecraft.client.multiplayer.*;
      import net.minecraft.client.particle.*;
      import net.minecraft.client.renderer.*;
      import net.minecraft.client.renderer.culling.*;
      import net.minecraft.client.renderer.entity.*;
      import net.minecraft.client.renderer.tileentity.*;
      import net.minecraft.client.settings.*;
      import net.minecraft.command.*;
      import net.minecraft.crash.*;
      import net.minecraft.creativetab.*;
      import net.minecraft.dispenser.*;
      import net.minecraft.enchantment.*;
      import net.minecraft.entity.*;
      import net.minecraft.entity.ai.*;
      import net.minecraft.entity.boss.*;
      import net.minecraft.entity.effect.*;
      import net.minecraft.entity.item.*;
      import net.minecraft.entity.monster.*;
      import net.minecraft.entity.passive.*;
      import net.minecraft.entity.player.*;
      import net.minecraft.entity.projectile.*;
      import net.minecraft.inventory.*;
      import net.minecraft.item.*;
      import net.minecraft.item.crafting.*;
      import net.minecraft.nbt.*;
      import net.minecraft.network.*;
      import net.minecraft.network.rcon.*;
      import net.minecraft.pathfinding.*;
      import net.minecraft.potion.*;
      import net.minecraft.profiler.*;
      import net.minecraft.server.*;
      import net.minecraft.server.dedicated.*;
      import net.minecraft.server.gui.*;
      import net.minecraft.server.integrated.*;
      import net.minecraft.server.management.*;
      import net.minecraft.src.*;
      import net.minecraft.stats.*;
      import net.minecraft.tileentity.*;
      import net.minecraft.util.*;
      import net.minecraft.village.*;
      import net.minecraft.world.*;
      import net.minecraft.world.biome.*;
      import net.minecraft.world.chunk.*;
      import net.minecraft.world.chunk.storage.*;
      import net.minecraft.world.demo.*;
      import net.minecraft.world.gen.*;
      import net.minecraft.world.gen.feature.*;
      import net.minecraft.world.gen.layer.*;
      import net.minecraft.world.gen.structure.*;
      import net.minecraft.world.storage.*;
      import net.minecraftforge.classloading.*;
      import net.minecraftforge.client.*;
      import net.minecraftforge.client.event.*;
      import net.minecraftforge.client.event.sound.*;
      import net.minecraftforge.common.*;
      import net.minecraftforge.event.*;
      import net.minecraftforge.event.entity.*;
      import net.minecraftforge.event.entity.item.*;
      import net.minecraftforge.event.entity.living.*;
      import net.minecraftforge.event.entity.minecart.*;
      import net.minecraftforge.event.entity.player.*;
      import net.minecraftforge.event.terraingen.*;
      import net.minecraftforge.event.world.*;
      import net.minecraftforge.oredict.*;
      import net.minecraftforge.transformers.*;
      import net.minecraft.init.*;
      
      import java.util.Random;
      
      @SuppressWarnings("unchecked")
      public class mcreator_dimorphodon {
      
      public static int mobid = 0;
      public Object instance;
      
      public void load(){}
      
      public void generateNether(World world, Random random, int chunkX, int chunkZ){}
      public void generateSurface(World world, Random random, int chunkX, int chunkZ){}
      public int addFuel(ItemStack fuel){
      return 0;
      }
      public void registerRenderers(){
      RenderingRegistry.registerEntityRenderingHandler(mcreator_dimorphodon.Entitydimorphodon.class, new RenderLiving(new mcreator_dimorphodon.ModelDimorphodon(), 0){protected ResourceLocation getEntityTexture(Entity par1Entity){return new ResourceLocation("Dimorphodon texture.png");}});
      }
      public void serverLoad(FMLServerStartingEvent event){}
      public void preInit(FMLPreInitializationEvent event){
      int entityID = EntityRegistry.findGlobalUniqueEntityId();
      mobid = entityID;
      EntityRegistry.registerGlobalEntityID(mcreator_dimorphodon.Entitydimorphodon.class, "dimorphodon", entityID);
      EntityRegistry.registerModEntity(mcreator_dimorphodon.Entitydimorphodon.class, "dimorphodon", entityID, instance, 64, 1, true);
      EntityList.entityEggs.put(Integer.valueOf(entityID), new EntityList.EntityEggInfo(entityID, (255 << 16) + (255 << 8) + 0, (255 << 16) + (51 << 8) + 51));
      
      DungeonHooks.addDungeonMob("dimorphodon", 180);
      }
      
      /*public Entity spawnEntity(int var1, World var2, double var3, double var5, double var7)
      {
      if(var1==mobid)
      return new mcreator_dimorphodon.Entitydimorphodon(var2);
      else
      return null;
      }*/
      
      public static class Entitydimorphodon extends EntityFlying
      {
      World world = null;
      public Entitydimorphodon(World var1)
      {
      super(var1);
      world = var1;
      experienceValue = 5;
      this.isImmuneToFire = false;
      addRandomArmor();
      
      }
      
      protected void applyEntityAttributes(){
      super.applyEntityAttributes();
      this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(2.0D);
      this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(20D);
      if(this.getEntityAttribute(SharedMonsterAttributes.attackDamage)!=null)this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(3D);
      }
      
      protected void addRandomArmor(){
      
      }
      
      protected void dropRareDrop(int par1){
      this.dropItem(Items.bone, 1);
      }
      
      public boolean isAIEnabled()
      {
      return false;
      }
      
      /**
      * Drop 0-2 items of this living's type
      */
      protected void dropFewItems(boolean var1, int var2)
      {
      this.entityDropItem(new ItemStack(Items.feather), 0.0F);
      }
      
      /**
      * Returns the sound this mob makes while it's alive.
      */
      protected String getLivingSound()
      {
      return "";
      }
      
      /**
      * Returns the sound this mob makes when it is hurt.
      */
      protected String getHurtSound()
      {
      return "";
      }
      
      /**
      * Returns the sound this mob makes on death.
      */
      protected String getDeathSound()
      {
      return "";
      }
      
      public void onStruckByLightning(EntityLightningBolt entityLightningBolt){
      int i = (int)this.posX;
      int j = (int)this.posY;
      int k = (int)this.posZ;
      
      }
      
      protected void fall(float l){
      int i = (int)this.posX;
      int j = (int)this.posY;
      int k = (int)this.posZ;
      super.fall(l);
      
      }
      
      public void onCriticalHit(Entity entity) {
      int i = (int)this.posX;
      int j = (int)this.posY;
      int k = (int)this.posZ;
      
      }
      
      public void onKillEntity(EntityLiving entityLiving){
      int i = (int)this.posX;
      int j = (int)this.posY;
      int k = (int)this.posZ;
      
      }
      
      public boolean interact(EntityPlayer entity){
      int i = (int)this.posX;
      int j = (int)this.posY;
      int k = (int)this.posZ;
      
      return true;
      }
      
      public String getEntityName(){
      return "dimorphodon";
      }
      
      }
      
      // Date: 02/09/2014 12:59:32
      // Template version 1.1
      // Java generated by Techne
      // Keep in mind that you still need to fill in some blanks
      // - ZeuX
      
      public static class ModelDimorphodon extends ModelBase
      {
      //fields
      ModelRenderer aile_gauche;
      ModelRenderer corps;
      ModelRenderer bras_sous_aile_droite;
      ModelRenderer bras_sous_aile_gauche;
      ModelRenderer cou;
      ModelRenderer tete;
      ModelRenderer queue;
      ModelRenderer queu;
      ModelRenderer jambe_droite;
      ModelRenderer jambe_gauche;
      ModelRenderer aile_droite;
      
      public ModelDimorphodon()
      {
      textureWidth = 64;
      textureHeight = 64;
      
      aile_gauche = new ModelRenderer(this, 1, 48);
      aile_gauche.addBox(0F, 0F, 0F, 12, 1, 7);
      aile_gauche.setRotationPoint(2F, 0F, 0F);
      aile_gauche.setTextureSize(64, 64);
      aile_gauche.mirror = true;
      setRotation(aile_gauche, 0F, 0F, 0F);
      corps = new ModelRenderer(this, 20, 35);
      corps.addBox(0F, 0F, 0F, 4, 4, 8);
      corps.setRotationPoint(-2F, -1F, 0F);
      corps.setTextureSize(64, 64);
      corps.mirror = true;
      setRotation(corps, 0F, 0F, 0F);
      bras_sous_aile_droite = new ModelRenderer(this, 41, 51);
      bras_sous_aile_droite.addBox(0F, 0F, 0F, 4, 1, 1);
      bras_sous_aile_droite.setRotationPoint(-6F, 1.1F, 3F);
      bras_sous_aile_droite.setTextureSize(64, 64);
      bras_sous_aile_droite.mirror = true;
      setRotation(bras_sous_aile_droite, 0F, 0F, 0F);
      bras_sous_aile_gauche = new ModelRenderer(this, 13, 59);
      bras_sous_aile_gauche.addBox(0F, 0F, 0F, 4, 1, 1);
      bras_sous_aile_gauche.setRotationPoint(2F, 1.1F, 3F);
      bras_sous_aile_gauche.setTextureSize(64, 64);
      bras_sous_aile_gauche.mirror = true;
      setRotation(bras_sous_aile_gauche, 0F, 0F, 0F);
      cou = new ModelRenderer(this, 26, 27);
      cou.addBox(0F, 0F, 0F, 2, 2, 4);
      cou.setRotationPoint(-1F, 0F, -4F);
      cou.setTextureSize(64, 64);
      cou.mirror = true;
      setRotation(cou, 0F, 0F, 0F);
      tete = new ModelRenderer(this, 24, 16);
      tete.addBox(0F, 0F, 0F, 3, 4, 5);
      tete.setRotationPoint(-1.5F, -1F, -9F);
      tete.setTextureSize(64, 64);
      tete.mirror = true;
      setRotation(tete, 0F, 0F, 0F);
      queue = new ModelRenderer(this, 35, 3);
      queue.addBox(0F, 0F, 0F, 3, 2, 3);
      queue.setRotationPoint(-1.5F, -1F, 8F);
      queue.setTextureSize(64, 64);
      queue.mirror = true;
      setRotation(queue, 0F, 0F, 0F);
      queu = new ModelRenderer(this, 16, 2);
      queu.addBox(0F, 0F, 0F, 1, 1, 7);
      queu.setRotationPoint(-0.5F, -1F, 11F);
      queu.setTextureSize(64, 64);
      queu.mirror = true;
      setRotation(queu, 0F, 0F, 0F);
      jambe_droite = new ModelRenderer(this, 43, 15);
      jambe_droite.addBox(0F, 0F, 0F, 1, 4, 1);
      jambe_droite.setRotationPoint(-2.3F, 3F, 5F);
      jambe_droite.setTextureSize(64, 64);
      jambe_droite.mirror = true;
      setRotation(jambe_droite, 1.047198F, -0.0174533F, 0F);
      jambe_gauche = new ModelRenderer(this, 17, 15);
      jambe_gauche.addBox(0F, 0F, 0F, 1, 4, 1);
      jambe_gauche.setRotationPoint(1.3F, 3F, 5F);
      jambe_gauche.setTextureSize(64, 64);
      jambe_gauche.mirror = true;
      setRotation(jambe_gauche, 1.047198F, 0F, 0F);
      aile_droite = new ModelRenderer(this, 25, 56);
      aile_droite.addBox(0F, 0F, 0F, 12, 1, 7);
      aile_droite.setRotationPoint(-14F, 0F, 0F);
      aile_droite.setTextureSize(64, 64);
      aile_droite.mirror = true;
      setRotation(aile_droite, 0F, 0F, 0F);
      }
      
      public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5)
      {
      super.render(entity, f, f1, f2, f3, f4, f5);
      setRotationAngles(f, f1, f2, f3, f4, f5, entity);
      
      aile_gauche.render(f5);
      corps.render(f5);
      bras_sous_aile_droite.render(f5);
      bras_sous_aile_gauche.render(f5);
      cou.render(f5);
      tete.render(f5);
      queue.render(f5);
      queu.render(f5);
      jambe_droite.render(f5);
      jambe_gauche.render(f5);
      aile_droite.render(f5);
      }
      
      private void setRotation(ModelRenderer model, float x, float y, float z)
      {
      model.rotateAngleX = x;
      model.rotateAngleY = y;
      model.rotateAngleZ = z;
      
      }
      
      public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity e)
      
      {
      super.setRotationAngles(f, f1, f2, f3, f4, f5, e);
      
      this.aile_droite.rotateAngleY = MathHelper.cos((180F / (float)Math.PI)) * 0.5F * f1;
      
      this.aile_gauche.rotateAngleY = MathHelper.cos((180F / (float)Math.PI)) * 0.5F * f1;
      
      this.tete.rotateAngleX = MathHelper.cos((180F / (float)Math.PI)) * 0.5F * f1;
      
      this.tete.rotateAngleY = MathHelper.cos((180F / (float)Math.PI)) * 0.5F * f1;
      
      this.tete.rotateAngleZ = MathHelper.cos((180F / (float)Math.PI)) * 0.5F * f1;
      }
      
      }
      
      }
      

      Travail sur le Mod PrimevalCraftWorld  :)

      Si tu est Interresser contact moi  :D

      1 réponse Dernière réponse Répondre Citer 0
      • Nolan-XXN Hors-ligne
        Nolan-XX
        dernière édition par

        Les balises, les balises mon petit … Car la c’est du viol d’œil

        1 réponse Dernière réponse Répondre Citer 1
        • zeldadu76290Z Hors-ligne
          zeldadu76290
          dernière édition par

          Désoler je me suis prit un avertissement pour cela mais je ne sais pas comme le faire pouvait vous m’expliquer que cela n’arrive plus

          Travail sur le Mod PrimevalCraftWorld  :)

          Si tu est Interresser contact moi  :D

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

            C’est pas compliqué. Si tu veux mettre du code java, tu mets : [java ] code ici [/java] (pas d’étoile dans les balises bien sûr). Si c’est pour u code qui est autre que java (ex : crash report, JSON….), tu mets [code] code ici [/code] (toujours sans les étoiles :p).

            1 réponse Dernière réponse Répondre Citer 0
            • Superloup10S Hors-ligne
              Superloup10 Modérateurs
              dernière édition par

              Ensuite, tu utilises mc_creator, il fait de la merde avec les codes.

              Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

              Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points de réputation.

              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

                Sérieusement, ici c’est MFF, pas le support de mcreator daube. Tout ton code est bon à être refait, comme superloup l’a dit mcreator fait N’IMPORTE QUOI, MAIS VRAIMENT N’IMPORTE QUOI.

                1 réponse Dernière réponse Répondre Citer 1
                • T Hors-ligne
                  Themoderne76133
                  dernière édition par

                  Bonjour d’abord merci pour le tuto ,je voudrais savoir comment faire pour que sur mon mob la cuisse1 et cuisse2 qui sont les jambes bouge comment un humain (une jambe apres l’autres) merci de votre aide voici ma rotation actuelle :

                  this.bras1.rotateAngleY = MathHelper.cos((180F / (float)Math.PI)) * 1.1F * f1;
                       this.bras2.rotateAngleY = MathHelper.cos((180F / (float)Math.PI)) * -1.1F * f1;
                       this.cuisse1.rotateAngleX = MathHelper.cos((180F / (float)Math.PI)) * 1.4F * f1;
                       this.cuisse2.rotateAngleX = MathHelper.cos((180F / (float)Math.PI)) * 1.4F * f1;

                  Merci de me repondre 🙂

                  Travail sur le Mod ThemoderneEquipement :)
                       Mon 1er Mod    :angel:

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

                    Cherche simplement dans ModelBiped.java dans la fonction setRotationAngles ou setRotationPoint je sais plus de tête, les lignes (normalement y’a 4 lignes en rapport avec bipedLeftLeg et RightLeg) tu les mets au même endroit dans ton model.java et c’est bon ! Ah et n’oublie pas de déclarer setRotationAngle ou point dans la fonction render()

                    Envoyé depuis mon Android edition by sfr STARADDICT avec Tapatalk

                    Si je t'ai filé un coup de main n'oublie pas le + / -
                    Par contre évite les demandes d'aides en MP, tu sera sympa'

                    La JavaDoc c'est comme le PQ, ça sert à ce démerder tous seul. -Victor Hugo- 2017

                    Une superbe API pour animer vos super modèles CraftStudio dans Minecraft !

                    1 réponse Dernière réponse Répondre Citer 1
                    • T Hors-ligne
                      Themoderne76133
                      dernière édition par

                      Les code du model bipede ne sont pas les meme que dans le tuto :

                      this.bipedRightLeg.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662F) * 1.4F * p_78087_2_;

                      this.bipedLeftLeg.rotateAngleX = MathHelper.cos(p_78087_1_ * 0.6662F + (float)Math.PI) * 1.4F * p_78087_2_;
                              this.bipedRightLeg.rotateAngleY = 0.0F;
                              this.bipedLeftLeg.rotateAngleY = 0.0F;

                      Travail sur le Mod ThemoderneEquipement :)
                           Mon 1er Mod    :angel:

                      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

                        Le p_78087_1_  et le p_78087_2_ correspondent aux arguments f et f1

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

                          A un moment donné il faut savoir la base de ses choses. C’est pas compliqué ^^ Ne le prend pas mal !!!
                          c’est juste de la logique

                          Envoyé depuis mon Android edition by sfr STARADDICT avec Tapatalk

                          Si je t'ai filé un coup de main n'oublie pas le + / -
                          Par contre évite les demandes d'aides en MP, tu sera sympa'

                          La JavaDoc c'est comme le PQ, ça sert à ce démerder tous seul. -Victor Hugo- 2017

                          Une superbe API pour animer vos super modèles CraftStudio dans Minecraft !

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

                            Hello ! Je m’essaie avec les animations, mais mes mobs sont complexes. Exemple : Les jambes sont en 4 parties. Lorsque je tente de les faire avancer, l’animation fait bouger la cuisse, mais pas le reste du corps (le pied et le bas de la jambe, ainsi que le genoux, reste figé). Comment peut-on régler cela ? Cela se fait au niveau du Model (par Techne), ou il faut tout faire après ? Et si c’est cela, comment gérer le déplacement synchro de plusieurs membres afin que tout bouge dans un joli ensemble 😕 ?

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

                              Salut, regarde la lib d’Ama, tout est plus facile et compréhensible dans l’interface de Craftstudio, plutôt que dans du code de trigo en Java 😉

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

                                Qu’est-ce que la lib d’Ama :') ?

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

                                  https://www.minecraftforgefrance.fr/showthread.php?tid=3666

                                  1 réponse Dernière réponse Répondre Citer 1
                                  • conquerorguepardC Hors-ligne
                                    conquerorguepard
                                    dernière édition par

                                    Merci ! Mais peut-on importer un modèle déjà existant sur ce logiciel 🙂 ? (notamment un modèle techne) afin de pouvoir directement faire les animations ?

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

                                      Non, pas à ce que je sache. Il te faudrait donc le refaire dedans.

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

                                        Si ton model est plutôt simple, tu peux définir des ModelRenderer “child” pour que la position est la rotation change automatiquement en fonction de la position et la rotation du renderer parent. Il faut juste s’assurer que la position des enfants et bien relatif à celle du parent (ce qui n’est pas le cas avec la plupart des logiciel qui exportent en java donc tu doit corriger ça).

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

                                          Malheureusement mes modèles sont tous sauf simples 😛 ! (sauf le petit dernier, mais lui a justement besoin que d’une animation simple dont je peux moi même me charger ^^').
                                          C’est un gros défaut je pense pour un logiciel de ne pas pouvoir accepter l’importation de modèles (même écrits).

                                          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