Mob incompréhensible
-
Si ton modèle n’est pas extends ModelBiped, il faut que tu change le code de ton rendu, il faut faire un rendu extends RenderLiving
-
Je viens de le faire et il y a aucune amélioration…
-
Renvoie ta classe après modification.
-
le model:
package fr.oeilomega.wozcontent.client; import net.minecraft.client.model.ModelBase; import net.minecraft.client.model.ModelRenderer; import net.minecraft.entity.Entity; public class Modelwozombie extends ModelBase { //fields ModelRenderer head; ModelRenderer body; ModelRenderer rightarm; ModelRenderer leftarm; ModelRenderer rightleg; ModelRenderer leftleg; public Modelwozombie() { textureWidth = 64; textureHeight = 32; head = new ModelRenderer(this, 0, 0); head.addBox(-4F, -8F, -4F, 8, 8, 8); head.setRotationPoint(0F, 0F, 0F); head.setTextureSize(64, 32); head.mirror = true; setRotation(head, 0F, 0F, 0F); body = new ModelRenderer(this, 16, 16); body.addBox(-4F, 0F, -2F, 8, 12, 4); body.setRotationPoint(0F, 0F, 0F); body.setTextureSize(64, 32); body.mirror = true; setRotation(body, 0F, 0F, 0F); rightarm = new ModelRenderer(this, 40, 16); rightarm.addBox(-3F, -2F, -2F, 4, 12, 4); rightarm.setRotationPoint(-5F, 2F, 0F); rightarm.setTextureSize(64, 32); rightarm.mirror = true; setRotation(rightarm, 0F, 0F, 0F); leftarm = new ModelRenderer(this, 40, 16); leftarm.addBox(-1F, -2F, -2F, 4, 12, 4); leftarm.setRotationPoint(5F, 2F, 0F); leftarm.setTextureSize(64, 32); leftarm.mirror = true; setRotation(leftarm, 0F, 0F, 0F); rightleg = new ModelRenderer(this, 0, 16); rightleg.addBox(-2F, 0F, -2F, 4, 12, 4); rightleg.setRotationPoint(-2F, 12F, 0F); rightleg.setTextureSize(64, 32); rightleg.mirror = true; setRotation(rightleg, 0F, 0F, 0F); leftleg = new ModelRenderer(this, 0, 16); leftleg.addBox(-2F, 0F, -2F, 4, 12, 4); leftleg.setRotationPoint(2F, 12F, 0F); leftleg.setTextureSize(64, 32); leftleg.mirror = true; setRotation(leftleg, 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); head.render(f5); body.render(f5); rightarm.render(f5); leftarm.render(f5); rightleg.render(f5); leftleg.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 entity) { super.setRotationAngles(f, f1, f2, f3, f4, f5, entity); } }Le rendu:
package fr.oeilomega.wozcontent.proxy; import fr.oeilomega.wozcontent.common.wozcontent; import fr.oeilomega.wozcontent.common.wozzombie; 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 renderwozzombie extends RenderLiving { public final ResourceLocation texture = new ResourceLocation(wozcontent.MODID, "textures/entity/wozzombie1.png"); public renderwozzombie(ModelBiped model, float shadow) { super(model, shadow); } protected ResourceLocation getEntityTexture(EntityLiving living) { return this.getMobTutorielTexture((wozzombie)living); } private ResourceLocation getMobTutorielTexture(wozzombie wozzombie) { return texture; } @Override protected ResourceLocation getEntityTexture(Entity p_110775_1_) { // TODO Auto-generated method stub return null; } } -
Remplace
public renderwozzombie(ModelBiped model, float shadow)par
public renderwozzombie(ModelBase model, float shadow)
-
OK, y’a plus d’erreurs mais le model apparait pas
-
j’up quand même
-
bon…
-
Problème toujours présent

-
sa sert a rien de spammer si on ne sait pas il te reste qu’à résoudre par toi meme
-
Remplace
public renderwozzombie(ModelBase model, float shadow)
Par
public renderwozzombie(ModelBiped model, float shadow)Et met
extends ModelBiped
À la place de
extends ModelBase
…? -
Non, sinon son rendu va foirer puisque son modèle n’est pas un biped.
Fait un zip de ton dossier src et envoie-le. -
Voila le lien !
-
J’ai téléchargé mes sources et j’ai regardé.
Déjà pour ton problème, je ne le rencontre pas. Le mob est bien super lent, et il m’attaque bien correctement …Ensuite pour le rendu : Pourquoi ne pas avoir prit ModelBiped alors que tu aurai pu ? Et le problème venait du fait que la méthode registerRender du client proxy n’était pas la même que dans CommonProxy, et surtout elle n’était pas appelé dans la classe principale.
Aussi, les mobs et les recettes sont sensés être dans init, j’ai changé ça.
J’ai aussi modifié le nom de certaines classes pour respecté la convention Java, et j’ai formaté le code. -
Je suis curieux de savoir qui DL les sources…x)
EDIT: remarque pour utiliser le modbsur un serveur, faut avoir mon autorisation et celle du graphiste x)
-
C’est moi qui l’ai redl plusieurs fois, le forum a des problèmes avec les pièces jointes.
http://dl.mcnanotech.fr/robin4002/mods/Sources/src-Oeilomega.zip -
Ah okay
EDIT: ok, il est bon maintenant, faut que je lui fasse lever les bras comme un zombie…Mhhh…
Me faut également les stats du zombie, je les trouverais dans la classe forge non ?EDIT 2: ok, tout est quasi bon, me manque les stats et…J’arrive pas à faire une animation de jambe correcte…
package fr.oeilomega.wozcontent.client; import net.minecraft.client.model.ModelBase; import net.minecraft.client.model.ModelRenderer; import net.minecraft.entity.Entity; import net.minecraft.util.MathHelper; public class Modelwozombie extends ModelBase { // fields ModelRenderer head; ModelRenderer body; ModelRenderer rightarm; ModelRenderer leftarm; ModelRenderer rightleg; ModelRenderer leftleg; public Modelwozombie() { textureWidth = 64; textureHeight = 32; head = new ModelRenderer(this, 0, 0); head.addBox(-4F, -8F, -4F, 8, 8, 8); head.setRotationPoint(0F, 0F, 0F); head.setTextureSize(64, 32); head.mirror = true; setRotation(head, 0F, 0F, 0F); body = new ModelRenderer(this, 16, 16); body.addBox(-4F, 0F, -2F, 8, 12, 4); body.setRotationPoint(0F, 0F, 0F); body.setTextureSize(64, 32); body.mirror = true; setRotation(body, 0F, 0F, 0F); rightarm = new ModelRenderer(this, 40, 16); rightarm.addBox(-3F, -2F, -2F, 4, 12, 4); rightarm.setRotationPoint(-5F, 2F, 0F); rightarm.setTextureSize(64, 32); rightarm.mirror = true; setRotation(rightarm, 0F, 0F, 0F); leftarm = new ModelRenderer(this, 40, 16); leftarm.addBox(-1F, -2F, -2F, 4, 12, 4); leftarm.setRotationPoint(5F, 2F, 0F); leftarm.setTextureSize(64, 32); leftarm.mirror = true; setRotation(leftarm, 0F, 0F, 0F); rightleg = new ModelRenderer(this, 0, 16); rightleg.addBox(-2F, 0F, -2F, 4, 12, 4); rightleg.setRotationPoint(-2F, 12F, 0F); rightleg.setTextureSize(64, 32); rightleg.mirror = true; setRotation(rightleg, 0F, 0F, 0F); leftleg = new ModelRenderer(this, 0, 16); leftleg.addBox(-2F, 0F, -2F, 4, 12, 4); leftleg.setRotationPoint(2F, 12F, 0F); leftleg.setTextureSize(64, 32); leftleg.mirror = true; setRotation(leftleg, 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); head.render(f5); body.render(f5); rightarm.render(f5); leftarm.render(f5); rightleg.render(f5); leftleg.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 entity) { super.setRotationAngles(f, f1, f2, f3, f4, f5, entity); float var8 = MathHelper.sin(this.onGround * (float)Math.PI); float var9 = MathHelper.sin((1.0F - (1.0F - this.onGround) * (1.0F - this.onGround)) * (float)Math.PI); this.rightarm.rotateAngleZ = 0.0F; this.leftarm.rotateAngleZ = 0.0F; this.rightarm.rotateAngleY = -(0.1F - var8 * 0.6F); this.leftarm.rotateAngleY = 0.1F - var8 * 0.6F; this.rightarm.rotateAngleX = -((float)Math.PI / 2F); this.leftarm.rotateAngleX = -((float)Math.PI / 2F); this.rightarm.rotateAngleX -= var8 * 1.2F - var9 * 0.4F; this.leftarm.rotateAngleX -= var8 * 1.2F - var9 * 0.4F; this.rightarm.rotateAngleZ += MathHelper.cos(f3 * 0.09F) * 0.05F + 0.05F; this.leftarm.rotateAngleZ -= MathHelper.cos(f3 * 0.09F) * 0.05F + 0.05F; this.rightarm.rotateAngleX += MathHelper.sin(f3 * 0.067F) * 0.05F; this.leftarm.rotateAngleX -= MathHelper.sin(f3 * 0.067F) * 0.05F; this.rightleg.rotateAngleX = MathHelper.cos((180F / (float)Math.PI)) * -3.8F * f1; this.leftleg.rotateAngleX = MathHelper.cos((180F / (float)Math.PI)) * 3.8F * f1; } } -
Bon…J’ai fait l’a extend en modelBiped, ça devrait marcher mais…:
EDIT: j’ai boulier de donner la classe:
package fr.oeilomega.wozcontent.client; import net.minecraft.client.model.ModelBase; import net.minecraft.client.model.ModelBiped; import net.minecraft.client.model.ModelRenderer; import net.minecraft.entity.Entity; import net.minecraft.util.MathHelper; public class Modelwozombie extends ModelBiped { // fields ModelRenderer head; ModelRenderer body; ModelRenderer rightarm; ModelRenderer leftarm; ModelRenderer rightleg; ModelRenderer leftleg; public Modelwozombie() { textureWidth = 64; textureHeight = 32; head = new ModelRenderer(this, 0, 0); head.addBox(-4F, -8F, -4F, 8, 8, 8); head.setRotationPoint(0F, 0F, 0F); head.setTextureSize(64, 32); head.mirror = true; setRotation(head, 0F, 0F, 0F); body = new ModelRenderer(this, 16, 16); body.addBox(-4F, 0F, -2F, 8, 12, 4); body.setRotationPoint(0F, 0F, 0F); body.setTextureSize(64, 32); body.mirror = true; setRotation(body, 0F, 0F, 0F); rightarm = new ModelRenderer(this, 40, 16); rightarm.addBox(-3F, -2F, -2F, 4, 12, 4); rightarm.setRotationPoint(-5F, 2F, 0F); rightarm.setTextureSize(64, 32); rightarm.mirror = true; setRotation(rightarm, 0F, 0F, 0F); leftarm = new ModelRenderer(this, 40, 16); leftarm.addBox(-1F, -2F, -2F, 4, 12, 4); leftarm.setRotationPoint(5F, 2F, 0F); leftarm.setTextureSize(64, 32); leftarm.mirror = true; setRotation(leftarm, 0F, 0F, 0F); rightleg = new ModelRenderer(this, 0, 16); rightleg.addBox(-2F, 0F, -2F, 4, 12, 4); rightleg.setRotationPoint(-2F, 12F, 0F); rightleg.setTextureSize(64, 32); rightleg.mirror = true; setRotation(rightleg, 0F, 0F, 0F); leftleg = new ModelRenderer(this, 0, 16); leftleg.addBox(-2F, 0F, -2F, 4, 12, 4); leftleg.setRotationPoint(2F, 12F, 0F); leftleg.setTextureSize(64, 32); leftleg.mirror = true; setRotation(leftleg, 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); head.render(f5); body.render(f5); rightarm.render(f5); leftarm.render(f5); rightleg.render(f5); leftleg.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 par1, float par2, float par3, float par4, float par5, float par6, Entity entity) { super.setRotationAngles(par1, par2, par3, par4, par5, par6, entity); float var8 = MathHelper.sin(this.onGround * (float)Math.PI); float var9 = MathHelper.sin((1.0F - (1.0F - this.onGround) * (1.0F - this.onGround)) * (float)Math.PI); this.rightarm.rotateAngleZ = 0.0F; this.leftarm.rotateAngleZ = 0.0F; this.rightarm.rotateAngleY = -(0.1F - var8 * 0.6F); this.leftarm.rotateAngleY = 0.1F - var8 * 0.6F; this.rightarm.rotateAngleX = -((float)Math.PI / 2F); this.leftarm.rotateAngleX = -((float)Math.PI / 2F); this.rightarm.rotateAngleX -= var8 * 1.2F - var9 * 0.4F; this.leftarm.rotateAngleX -= var8 * 1.2F - var9 * 0.4F; this.rightarm.rotateAngleZ += MathHelper.cos(par3 * 0.09F) * 0.05F + 0.05F; this.leftarm.rotateAngleZ -= MathHelper.cos(par3 * 0.09F) * 0.05F + 0.05F; this.rightarm.rotateAngleX += MathHelper.sin(par3 * 0.067F) * 0.05F; this.leftarm.rotateAngleX -= MathHelper.sin(par3 * 0.067F) * 0.05F; } } -
up

-
Je sais que je suis chiant x)