Mob incompréhensible
-
@‘Oeilomega’:
celle ci: new renderwozzombie(new Modelwozombie(), 0.5F));
Ps: mtn, c’est plus un sprinteur enragé, c’est Usain Bolt dans 28 jours plus tard

Souvent quand un mob est aussi rapide que ça c’est un problème d’ia
As-tu bien mis ma méthode de mon message ci-dessus, dans la classe de ton entity ? -
Eclipse te donne quoi comme erreur ?
-
mon nouveau code:
package fr.oeilomega.wozcontent.common; import java.util.List; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityCreature; import net.minecraft.entity.SharedMonsterAttributes; import net.minecraft.entity.ai.EntityAIAttackOnCollide; import net.minecraft.entity.ai.EntityAIAvoidEntity; import net.minecraft.entity.ai.EntityAIHurtByTarget; import net.minecraft.entity.ai.EntityAILookIdle; import net.minecraft.entity.ai.EntityAIMoveThroughVillage; import net.minecraft.entity.ai.EntityAIMoveTowardsRestriction; import net.minecraft.entity.ai.EntityAINearestAttackableTarget; import net.minecraft.entity.ai.EntityAISwimming; import net.minecraft.entity.ai.EntityAIWander; import net.minecraft.entity.ai.EntityAIWatchClosest; import net.minecraft.entity.monster.EntityMob; import net.minecraft.entity.passive.EntityChicken; import net.minecraft.entity.passive.EntityCow; import net.minecraft.entity.passive.EntityPig; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.init.Blocks; import net.minecraft.util.AxisAlignedBB; import net.minecraft.util.MathHelper; import net.minecraft.world.World; public class wozzombie extends EntityMob { public wozzombie(World world) { super(world); this.getNavigator().setBreakDoors(true); this.tasks.addTask(0, new EntityAISwimming(this)); this.tasks.addTask(2, new EntityAIAttackOnCollide(this, EntityPlayer.class, 1.0D, false)); this.tasks.addTask(4, new EntityAIMoveTowardsRestriction(this, 1.0D)); this.tasks.addTask(5, new EntityAIMoveThroughVillage(this, 1.0D, false)); this.tasks.addTask(6, new EntityAIWander(this, 1.0D)); this.tasks.addTask(7, new EntityAIWatchClosest(this, EntityPlayer.class, 0.0F)); this.tasks.addTask(7, new EntityAILookIdle(this)); this.targetTasks.addTask(1, new EntityAIHurtByTarget(this, false)); this.targetTasks.addTask(2, new EntityAINearestAttackableTarget(this, EntityPlayer.class, 0, true)); } public void applyEntityAttributes() { super.applyEntityAttributes(); this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(20D); this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(1D); this.getEntityAttribute(SharedMonsterAttributes.followRange).setBaseValue(40.0D); this.getEntityAttribute(SharedMonsterAttributes.knockbackResistance).setBaseValue(0D); this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.1D); } protected boolean isAIEnabled() { return true; } }et pour robin:
new renderwozzombie(new Modelwozombie(), 0.5F));The constructor renderwozzombie(Modelwozombie, float) is undefined
-
envoie ta classe renderwozzombie
(d’ailleurs ta classe devrait être nommé RenderWozzombie pour respecter la convention Java). -
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.entity.EntityLiving; import net.minecraft.util.ResourceLocation; public class renderwozzombie extends RenderBiped { 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.getwozzombieTexture((wozzombie)living); } private ResourceLocation getwozzombieTexture(wozzombie wozzombie) { return texture; } }Et voila !
-
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)