MFF

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

    Probleme de rendu d'un mob

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    33 Messages 6 Publieurs 5.4k 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.
    • M Hors-ligne
      mosca421
      dernière édition par

      Un debut a tous =p
      Tien je te passe le tout :

      
      package fr.paladium.Modevent;
      
      import java.awt.Color;
      
      import cpw.mods.fml.common.Mod;
      import cpw.mods.fml.common.Mod.EventHandler;
      import cpw.mods.fml.common.Mod.Instance;
      import cpw.mods.fml.common.SidedProxy;
      import cpw.mods.fml.common.event.FMLInitializationEvent;
      import cpw.mods.fml.common.event.FMLPostInitializationEvent;
      import cpw.mods.fml.common.event.FMLPreInitializationEvent;
      import cpw.mods.fml.common.registry.EntityRegistry;
      import fr.paladium.Modevent.proxy.commonproxy;
      
      @Mod(modid = "modevent", version = "1.0")
      
      public class modevent
      {
      @Instance("modevent")
      public static modevent instance;
      
      @SidedProxy(clientSide = "fr.paladium.Modevent.proxy.clientproxy", serverSide = "fr.paladium.Modevent.proxy.commonproxy")
      public static commonproxy proxy;
      
      @EventHandler
      public void preInit(FMLPreInitializationEvent event)
      
      {
      
      }
          @EventHandler
          public void init(FMLInitializationEvent event)
          {
      proxy.registerRender();
          EntityRegistry.registerGlobalEntityID(Mobfuze.class, "fuzemob", EntityRegistry.findGlobalUniqueEntityId(), new Color(0, 255, 0).getRGB(), new Color(255, 0, 0).getRGB());
          EntityRegistry.registerModEntity(Mobfuze.class, "fuzemob", 440, this.instance, 40, 1, true);
          EntityRegistry.registerGlobalEntityID(MobMosca.class, "moscamob", EntityRegistry.findGlobalUniqueEntityId(), new Color(0, 255, 0).getRGB(), new Color(255, 0, 0).getRGB());
          EntityRegistry.registerModEntity(MobMosca.class, "moscamob", 441, this.instance, 40, 1, true);
          EntityRegistry.registerGlobalEntityID(MobArduin.class, "arduinmob", EntityRegistry.findGlobalUniqueEntityId(), new Color(0, 255, 0).getRGB(), new Color(255, 0, 0).getRGB());
          EntityRegistry.registerModEntity(MobArduin.class, "arduinmob", 442, this.instance, 40, 1, true);
          EntityRegistry.registerGlobalEntityID(mobzoldru.class, "zoldrumob", EntityRegistry.findGlobalUniqueEntityId(), new Color(0, 255, 0).getRGB(), new Color(255, 0, 0).getRGB());
          EntityRegistry.registerModEntity(mobzoldru.class, "zoldrumob", 443, this.instance, 40, 1, true);
          EntityRegistry.registerGlobalEntityID(mobsoristos.class, "soristosmob", EntityRegistry.findGlobalUniqueEntityId(), new Color(0, 255, 0).getRGB(), new Color(255, 0, 0).getRGB());
          EntityRegistry.registerModEntity(mobsoristos.class, "soristosmob", 444, this.instance, 40, 1, true);
          EntityRegistry.registerGlobalEntityID(mobhiss.class, "hissmob", EntityRegistry.findGlobalUniqueEntityId(), new Color(0, 255, 0).getRGB(), new Color(255, 0, 0).getRGB());
          EntityRegistry.registerModEntity(mobhiss.class, "hissmob", 445, this.instance, 40, 1, true);
          EntityRegistry.registerGlobalEntityID(mobred.class, "redmob", EntityRegistry.findGlobalUniqueEntityId(), new Color(0, 255, 0).getRGB(), new Color(255, 0, 0).getRGB());
          EntityRegistry.registerModEntity(mobred.class, "redmob", 446, this.instance, 40, 1, true);
          EntityRegistry.registerGlobalEntityID(mobano.class, "anomob", EntityRegistry.findGlobalUniqueEntityId(), new Color(0, 255, 0).getRGB(), new Color(255, 0, 0).getRGB());
          EntityRegistry.registerModEntity(mobano.class, "anomob", 447, this.instance, 40, 1, true);
          EntityRegistry.registerGlobalEntityID(mobremi.class, "remimob", EntityRegistry.findGlobalUniqueEntityId(), new Color(0, 255, 0).getRGB(), new Color(255, 0, 0).getRGB());
          EntityRegistry.registerModEntity(mobremi.class, "remimob", 448, this.instance, 40, 1, true);
          }
          @EventHandler
          public void postInit(FMLPostInitializationEvent event)
          {
      
          }
      }
      
      
      
      package fr.paladium.Modevent.proxy;
      
      import cpw.mods.fml.client.registry.RenderingRegistry;
      import fr.paladium.Modevent.MobArduin;
      import fr.paladium.Modevent.MobMosca;
      import fr.paladium.Modevent.Mobfuze;
      import fr.paladium.Modevent.RenderMobArduin;
      import fr.paladium.Modevent.RenderMobHiss;
      import fr.paladium.Modevent.RenderMobMosca;
      import fr.paladium.Modevent.RenderMobRed;
      import fr.paladium.Modevent.RenderMobSoristos;
      import fr.paladium.Modevent.RenderMobZoldru;
      import fr.paladium.Modevent.RenderMobano;
      import fr.paladium.Modevent.RenderMobfuze;
      import fr.paladium.Modevent.RenderMobremi;
      import fr.paladium.Modevent.mobano;
      import fr.paladium.Modevent.mobhiss;
      import fr.paladium.Modevent.mobred;
      import fr.paladium.Modevent.mobremi;
      import fr.paladium.Modevent.mobsoristos;
      import fr.paladium.Modevent.mobzoldru;
      import net.minecraft.client.model.ModelBiped;
      
      public class clientproxy extends commonproxy
      {
      @Override
      public void registerRender()
      {
      System.out.println("méthode côté client");
      RenderingRegistry.registerEntityRenderingHandler(Mobfuze.class, new RenderMobfuze(new ModelPerso(), 1.5F));
      RenderingRegistry.registerEntityRenderingHandler(MobArduin.class, new RenderMobArduin(new ModelPerso(), 1.5F));
      RenderingRegistry.registerEntityRenderingHandler(MobMosca.class, new RenderMobMosca(new ModelPerso(), 1.5F));
      RenderingRegistry.registerEntityRenderingHandler(mobsoristos.class, new RenderMobSoristos(new ModelPerso(), 1.5F));
      RenderingRegistry.registerEntityRenderingHandler(mobzoldru.class, new RenderMobZoldru(new ModelPerso(), 1.5F));
      RenderingRegistry.registerEntityRenderingHandler(mobhiss.class, new RenderMobHiss(new ModelPerso(), 1.5F));
      RenderingRegistry.registerEntityRenderingHandler(mobred.class, new RenderMobRed(new ModelPerso(), 1.5F));
      RenderingRegistry.registerEntityRenderingHandler(mobano.class, new RenderMobano(new ModelPerso(), 1.5F));
      RenderingRegistry.registerEntityRenderingHandler(mobremi.class, new RenderMobremi(new ModelPerso(), 1.5F));
      
      }
      
      }
      
      
      
      package fr.paladium.Modevent.proxy;
      
      import net.minecraft.client.model.ModelBiped;
      import net.minecraft.client.model.ModelRenderer;
      import net.minecraft.entity.Entity;
      import net.minecraft.util.MathHelper;
      
      public class ModelPerso extends ModelBiped {
        //fields
          ModelRenderer head2;
          ModelRenderer body;
          ModelRenderer rightarm;
          ModelRenderer leftarm;
          ModelRenderer rightleg;
          ModelRenderer leftleg;
          ModelRenderer head;
      
        public ModelPerso()
        {
          textureWidth = 128;
          textureHeight = 64;
      
            head2 = new ModelRenderer(this, 64, 0);
            head2.addBox(-8F, -16F, -8F, 16, 16, 16);
            head2.setRotationPoint(-4F, -24F, 0F);
            head2.setTextureSize(128, 64);
            head2.mirror = true;
            setRotation(head2, 0F, 0F, 0F);
            body = new ModelRenderer(this, 32, 32);
            body.addBox(-8F, 0F, -4F, 16, 24, 8);
            body.setRotationPoint(-4F, -24F, 0F);
            body.setTextureSize(128, 64);
            body.mirror = true;
            setRotation(body, 0F, 0F, 0F);
            rightarm = new ModelRenderer(this, 80, 32);
            rightarm.addBox(-8F, -4F, -4F, 8, 24, 8);
            rightarm.setRotationPoint(-12F, -20F, 0F);
            rightarm.setTextureSize(128, 64);
            rightarm.mirror = true;
            setRotation(rightarm, 0F, 0F, 0F);
            leftarm = new ModelRenderer(this, 80, 32);
            leftarm.addBox(0F, -4F, -4F, 8, 24, 8);
            leftarm.setRotationPoint(4F, -20F, 0F);
            leftarm.setTextureSize(128, 64);
            leftarm.mirror = true;
            setRotation(leftarm, 0F, 0F, 0F);
            rightleg = new ModelRenderer(this, 0, 32);
            rightleg.addBox(-4F, 0F, -4F, 8, 24, 8);
            rightleg.setRotationPoint(-8F, 0F, 0F);
            rightleg.setTextureSize(128, 64);
            rightleg.mirror = true;
            setRotation(rightleg, 0F, 0F, 0F);
            leftleg = new ModelRenderer(this, 0, 32);
            leftleg.addBox(-4F, 0F, -4F, 8, 24, 8);
            leftleg.setRotationPoint(0F, 0F, 0F);
            leftleg.setTextureSize(128, 64);
            leftleg.mirror = true;
            setRotation(leftleg, 0F, 0F, 0F);
            head = new ModelRenderer(this, 0, 0);
            head.addBox(-8F, -16F, -8F, 16, 16, 16);
            head.setRotationPoint(-4F, -24F, 0F);
            head.setTextureSize(128, 64);
            head.mirror = true;
            setRotation(head, 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);
          head2.render(f5);
          body.render(f5);
          rightarm.render(f5);
          leftarm.render(f5);
          rightleg.render(f5);
          leftleg.render(f5);
          head.render(f5);
          this.rightleg.rotateAngleX = MathHelper.cos((90F / (float)Math.PI)) * 1.0F * f1;
          this.leftleg.rotateAngleX = MathHelper.cos((90F / (float)Math.PI)) * -1.0F * f1;
      
          this.rightleg.rotateAngleX = MathHelper.cos((180F / (float)Math.PI)) * -1.0F * f1;
          this.leftleg.rotateAngleX = MathHelper.cos((180F / (float)Math.PI)) * 1.0F * f1;
        }
      
        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 entity)
        {
          super.setRotationAngles(f, f1, f2, f3, f4, f5, entity);
          this.rightleg.rotateAngleX = MathHelper.cos((90F / (float)Math.PI)) * 1.0F * f1;
          this.leftleg.rotateAngleX = MathHelper.cos((90F / (float)Math.PI)) * -1.0F * f1;
      
          this.rightleg.rotateAngleX = MathHelper.cos((180F / (float)Math.PI)) * -1.0F * f1;
          this.leftleg.rotateAngleX = MathHelper.cos((180F / (float)Math.PI)) * 1.0F * f1;
        }
      
      }
      
      
      
      package fr.paladium.Modevent;
      
      import cpw.mods.fml.common.registry.GameRegistry;
      import net.minecraft.entity.Entity;
      import net.minecraft.entity.SharedMonsterAttributes;
      import net.minecraft.entity.boss.BossStatus;
      import net.minecraft.entity.boss.IBossDisplayData;
      import net.minecraft.entity.monster.EntityMob;
      import net.minecraft.item.Item;
      import net.minecraft.item.ItemStack;
      import net.minecraft.world.World;
      
      public class mobano extends EntityMob{
      
      public mobano (World world)
      {
      super(world);
      
      }
      
      public void applyEntityAttributes()
      {
      super.applyEntityAttributes();
      this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(5000D);
      this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(4D);
      this.getEntityAttribute(SharedMonsterAttributes.knockbackResistance).setBaseValue(9999999D);
      this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(30D);
      
      }
      
      public Item getDropItem()
      
      {
      Item item = GameRegistry.findItem("serveur", "bottemobs");
      if(item != null)
      {
      
      return item;
      
      }
      else
      {
      return null;
      }
      }
      
      }
      
      
      
      package fr.paladium.Modevent;
      
      import fr.paladium.Modevent.proxy.ModelPerso;
      import net.minecraft.client.model.ModelBiped;
      import net.minecraft.client.renderer.entity.RenderBiped;
      import net.minecraft.entity.EntityLiving;
      import net.minecraft.util.ResourceLocation;
      
      public class RenderMobano extends RenderBiped{
      
      public final ResourceLocation texture = new ResourceLocation ("modevent", "textures/entity/mobano.png");
      
      public RenderMobano (ModelPerso model, float shadow){
      
      super(model,shadow);
      }
      
      protected ResourceLocation getEntityTexture(EntityLiving living)
      {
      return this.getMobs((mobano)living);
      }
      private ResourceLocation getMobs(mobano Mobs)
      {
      return texture;
      }
      
      }
      
      

      ModelBiped marche mais le mob est de deux de haut hors la je veux mon propre model =/

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

        Dans ce cas au lien de extends ton model de ModelBiped, extends le de ModelBase 
        Et du coup ton render tu l’extends de RenderLiving au lieu de RenderBiped, et ton constructeur ressemblera donc à ça

        
        public RenderMobano (ModelBase model, float shadow){
        
        super(model,shadow);
        }
        
        
        1 réponse Dernière réponse Répondre Citer 0
        • M Hors-ligne
          mosca421
          dernière édition par

          
          package fr.paladium.Modevent;
          
          import fr.paladium.Modevent.proxy.ModelPerso;
          import net.minecraft.client.model.ModelBase;
          import net.minecraft.client.model.ModelBiped;
          import net.minecraft.client.renderer.entity.RenderBiped;
          import net.minecraft.client.renderer.entity.RenderLiving;
          import net.minecraft.entity.Entity;
          import net.minecraft.entity.EntityLiving;
          import net.minecraft.util.ResourceLocation;
          
          public class RenderMobano extends RenderLiving{
          
          public final ResourceLocation texture = new ResourceLocation ("modevent", "textures/entity/mobano.png");
          
          public RenderMobano (ModelBase model, float shadow){
          
          super(model,shadow);
          }
          
          protected ResourceLocation getEntityTexture(EntityLiving living)
          {
          return this.getMobs((mobano)living);
          }
          private ResourceLocation getMobs(mobano Mobs)
          {
          return texture;
          }
          
          }
          
          

          J’ai une erreur sur  public class RenderMobano extends RenderLiving
          RenderMobano

          1 réponse Dernière réponse Répondre Citer 0
          • elias54E Hors-ligne
            elias54 Administrateurs
            dernière édition par

            Normal :

            
            protected ResourceLocation getEntityTexture(EntityLiving living)
            {
            return this.getMobs((mobano)living);
            }
            
            

            Tu as mis EntityLiving au lieu de Entity. Du coup il te propose d’importer la méthode à nouveau.
            Change EntityLiving par Entity

            Mon site | GitHub

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

              Voila mais rien a changer sur le mob =/

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

                Bonjour,

                j’avais eu le même problème au début, tu es en rendu modelBiped qui a une structure prédéfinie, tu doit donc le mettre en modelBase et RendererLiving.
                Essaye ça :

                dans ta classe modelPerso, tu mets :

                public class ModelPerso extends ModelBase{//la suite de ton code
                

                dans ta classe render :

                public class RenderMobRed extends RenderLiving{
                
                public final ResourceLocation texture = new ResourceLocation ("modevent", "textures/entity/mobred.png");
                
                public RenderMobRed (ModelPerso model, float shadow){
                
                super(model,shadow);
                }
                

                Dans ton ClientProxy

                RenderingRegistry.registerEntityRenderingHandler(mobano.class, new RenderMobRed(new ModelPerso(), 1.5F));
                

                essaye ça et dit moi 🙂

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

                  J’ai une erreur dans : Clientproxy

                  new RenderMobRed(new ModelPerso(), 1.5F));

                  RenderingRegistry.registerEntityRenderingHandler(mobred.class, new RenderMobRed(new ModelPerso(), 1.5F));

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

                    regarde si toutes tes classes sont bien importées, si oui, efface la ligne et refait la manuellement en important au fur et à mesure

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

                      C’est bon mais maintenant je ne vois plus les mobs juste l’ombre a terre

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

                        J’ai pas vu ta class main, tu as pas oublier de déclarer le mob dans init?

                        J’ai essayer c’est pas ça, mais j’avais eu le problème de l’ombre laisse moi réfléchir

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

                          Il est mis dans la class init

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

                            Je viens de voir que tu as plusieurs mobs, tu as bien fait les modifications dans mobano et tester ses classes et son spawn?

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

                              J’ai modif tous les mobs et lancer je le spawn avec un 9 =p
                              Edit : C’est bon mais toujours le meme probleme avec les pieds =/

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

                                Tu as toujours le même problème avec une doublure des pieds? ou alors la marche se fait bizarrement?

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

                                  Bah il avance qu’un pied genre il écarte reviens et ne fait pas dans l’autre sens

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

                                    tiens prends ce code la

                                       this.rightleg.rotateAngleX = MathHelper.cos(f * 0.6662F) * 1F * f1;
                                       this.leftleg.rotateAngleX = MathHelper.cos(f * 0.6662F + (float)Math.PI) * 1F * f1;
                                       this.rightleg.rotateAngleY = 0.0F;
                                       this.leftleg.rotateAngleY = 0.0F;
                                    

                                    tu le remplace par celui que tu avais et dit moi ce que ça donne

                                    edit : sur la troisième ligne j’avais fait une faute de frappe

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

                                      Pareil il n’avance qu’un pied et l’autre est reculer il inverse pas a chaque fois qu’il marche

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

                                        Essaie avec çà alors :

                                        
                                        this.rightleg.rotateAngleX = MathHelper.cos(f * 0.6662F) * f1;
                                        this.leftleg.rotateAngleX = -MathHelper.cos(f * 0.6662F + (float)Math.PI) * f1;
                                        this.rightleg.rotateAngleY = 0.0F;
                                        this.leftleg.rotateAngleY = 0.0F;
                                        
                                        

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

                                          Bon ben désolé mais moi la je sèche, j’ai pas encore trop compris le principe de l’animation, j’avais piocher le code sur la classe du zombie et je l’avait appliquer à mon mob, c’est ce que je t’ai donner et si ça marche pas ben… essaye de modifier peut être l’angle X avec Y et Z on sait jamais mais si non mon aide s’arrête ici parce que la je ne vois malheureusement pas 😕

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

                                            Pareil Scarex

                                            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