1.12.2 Créer un mob agressif forge 1.12.2



  • Bonjour j'ai il y a quelque jour suivi un tuto forge en 1.8 pour créer un mob aggresif mais le problème c'est que le code du tuto ne fonctionne plus en 1.12.2 mais du coup mon jeu se lance mais le mob n'est pas la mais je ne peux pas poser de block sur son spawn :
    La class de l'entité :

    package fr.samlegamer.heartofender.entity;
    
    import net.minecraft.entity.SharedMonsterAttributes;
    import net.minecraft.entity.monster.EntityMob;
    import net.minecraft.world.World;
    
    public class EntityHerobrine extends EntityMob
    {
        public EntityHerobrine(World world)
        {
            super(world);
        }
        
        public void applyEntityAttributes()
        {
            super.applyEntityAttributes();
     
            this.getEntityAttribute(SharedMonsterAttributes.MAX_HEALTH).setBaseValue(20D);
        }
    }
    

    La class Models de l'entité avec techne :

    package fr.samlegamer.heartofender.Models;
    
    import net.minecraft.client.model.ModelBase;
    import net.minecraft.client.model.ModelRenderer;
    import net.minecraft.entity.Entity;
    import net.minecraft.util.math.MathHelper;
    
    public class ModelHerobrine extends ModelBase
    {
      //fields
        ModelRenderer Shape1;
        ModelRenderer Shape2;
        ModelRenderer head;
        ModelRenderer body;
        ModelRenderer rightarm;
        ModelRenderer leftarm;
        ModelRenderer rightleg;
        ModelRenderer leftleg;
      
      public ModelHerobrine()
      {
        textureWidth = 64;
        textureHeight = 64;
        
          Shape1 = new ModelRenderer(this, 0, 0);
          Shape1.addBox(0F, 0F, 0F, 1, 1, 1);
          Shape1.setRotationPoint(0F, 0F, 0F);
          Shape1.setTextureSize(64, 64);
          Shape1.mirror = true;
          setRotation(Shape1, 0F, 0F, 0F);
          Shape2 = new ModelRenderer(this, 0, 0);
          Shape2.addBox(0F, 0F, 0F, 1, 1, 1);
          Shape2.setRotationPoint(0F, 0F, 0F);
          Shape2.setTextureSize(64, 64);
          Shape2.mirror = true;
          setRotation(Shape2, 0F, 0F, 0F);
          head = new ModelRenderer(this, 0, 0);
          head.addBox(-4F, -8F, -4F, 8, 8, 8);
          head.setRotationPoint(0F, 0F, 0F);
          head.setTextureSize(64, 64);
          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, 64);
          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, 64);
          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, 64);
          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, 64);
          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, 64);
          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);
        Shape1.render(f5);
        Shape2.render(f5);
        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);
        this.head.rotateAngleY = f3 / (180F / (float)Math.PI);
        this.head.rotateAngleX = f4 / (180F / (float)Math.PI);
        this.rightarm.rotateAngleX = MathHelper.cos(f * 0.6662F + (float)Math.PI) * 2.0F * f1 * 0.5F;
        this.leftarm.rotateAngleX = MathHelper.cos(f * 0.6662F) * 2.0F * f1 * 0.5F;
        this.rightarm.rotateAngleZ = 0.0F;
        this.leftarm.rotateAngleZ = 0.0F;
        this.rightleg.rotateAngleX = MathHelper.cos(f * 0.6662F) * 1.4F * f1;
        this.leftleg.rotateAngleX = MathHelper.cos(f * 0.6662F + (float)Math.PI) * 1.4F * f1;
        this.rightleg.rotateAngleY = 0.0F;
        this.leftleg.rotateAngleY = 0.0F;
      }
    }
    
    

    La class render de l'entité :

    package fr.samlegamer.heartofender.Render;
    
    import fr.samlegamer.heartofender.Reference;
    import fr.samlegamer.heartofender.entity.EntityHerobrine;
    import net.minecraft.client.model.ModelBiped;
    import net.minecraft.client.renderer.entity.RenderBiped;
    import net.minecraft.client.renderer.entity.RenderManager;
    import net.minecraft.entity.EntityLiving;
    import net.minecraft.util.ResourceLocation;
    
    public class RenderHerobrine extends RenderBiped
    {
    	 
        public final ResourceLocation textures = new ResourceLocation(Reference.MODID, ":textures/entity/Herobrine.png");
     
        public RenderHerobrine(RenderManager render, ModelBiped model, float shadow)
        {
            super(render, model, shadow);
        }
     
        protected ResourceLocation getEntityTexture(EntityLiving living)
        {
            return this.getMobTexture((EntityHerobrine)living);
        }
     
        private ResourceLocation getMobTexture(EntityHerobrine mobHerobrine)
        {
            return textures;
        }
    }
    

    La class EntityHandler :

    package fr.samlegamer.heartofender.Handlers;
    
    import java.util.Random;
    
    import fr.samlegamer.heartofender.HeartEnder;
    import fr.samlegamer.heartofender.entity.EntityHerobrine;
    import net.minecraft.entity.EntityList;
    import net.minecraft.entity.EnumCreatureType;
    import net.minecraft.util.ResourceLocation;
    import net.minecraft.world.biome.Biome;
    import net.minecraftforge.fml.common.registry.EntityRegistry;
    
    public class EntityHandler
    {
    	public static void RegisterMonster(Class entityClass, String name)
    	{
    		ResourceLocation entityID;
    		long x = name.hashCode();
    		Random random = new Random(x);
    		int mainColor = random.nextInt() * 16777215;
    		int subColor = random.nextInt() * 16777215;
    		
    		EntityRegistry.getEntry(entityClass);
    		EntityRegistry.registerModEntity(null, entityClass, name, 16777215, HeartEnder.instance, 64, 1, true, mainColor, subColor);
    	}
    }
    

    J'ai du enlever certaine ligne de code parce que le code était complétement incorect.
    Merci d'avance de toute réponse pour m'aider a résoudre mon problème.


  • Moddeurs confirmés Rédacteurs Administrateurs

    Bonsoir,

    Enlève le : ici.
    @Samlegamer a dit dans Créer un mob agressif forge 1.12.2 :

    public final ResourceLocation textures = new ResourceLocation(Reference.MODID, ":textures/entity/Herobrine.png");
    

    Je ne vois pas non plus où est enregistré ton rendu, je pense que le problème vient de là.



  • je me pose une question est ce que les entité sans texture on la texture rose et noir pour tout dire le mob est sensé spawn aprés une structure de boss sauf autour de 4 bloc je ne peut pas poser de bloc pas de boite de colision en tout cas merci d'avoir répondu si vite.
    Le rendu c'est Render


  • Moddeurs confirmés Rédacteurs Administrateurs

    Si la texture est invalide c'est rose et noir.

    Et oui j'ai vu que ta classe de rendu est RenderHerobrine le problème c'est qu'elle semble enregistré nul part.
    D'ailleurs pareil pour la méthode RegisterMonster, elle est appelé où cette fonction ?



  • Le probléme c'est que certain bout de code vient de la 1.8 est sont "périmé" en 1.12.2 par example UniqueGlobalEntityId ne marche pas en 1.12.2 j'ai personellement regardé se long tuto de 56 min :
    texte du lien


  • Moddeurs confirmés Rédacteurs Administrateurs

    Effectivement.
    Pour enregistrer une entity en 1.12.2 il faut passer par un event et une entityEntry :

        @SubscribeEvent
        public static void registerEntity(RegistryEvent.Register<EntityEntry> event) {
            EntityEntry entityEntry = EntityEntryBuilder.create().entity(EntityHerobrine.class).name("herobrine").id("herobrine", 0).tracker(64, 2, true).build();
            event.getRegistry().register(entityEntry);
        }
    


  • Je dois le mettre avec la quel class ?



  • OK je confirme l'entité est en jeu je ne la voit pas mais je peut la touché avec des flèches mais pas avec l'épée d'ailleur j'ai réussi a le tué mais du coup j'avais utilisé cette texture qui viens du joueur en 1.12.2 que j'ai un peu modifié mob_herobrine.png


  • Moddeurs confirmés Rédacteurs Administrateurs

    Donc maintenant le problème c'est que ton rendu n'est pas enregistré.
    Le code pour enregistrer le rendu n'a pas changé, donc tu as dû l'oublié.



  • Il faut faire ça pour l'enrigistrer

    @OnlyIn(Dist.CLIENT)
    public class TutorialRenderRegistry 
    {
    	public static void registryEntityRenders()
    	{
    		RenderingRegistry.registerEntityRenderingHandler(TutorialEntity.class, new TutorialEntityRender.RenderFactory());
    	}
    }
    

    oui g fait un copié coller d'un tuto anglais 🙂



  • J'ai trouvé la classe render du zombie :

    package net.minecraft.client.renderer.entity;
    
    import net.minecraft.client.model.ModelZombie;
    import net.minecraft.client.renderer.entity.layers.LayerBipedArmor;
    import net.minecraft.entity.monster.EntityZombie;
    import net.minecraft.util.ResourceLocation;
    import net.minecraftforge.fml.relauncher.Side;
    import net.minecraftforge.fml.relauncher.SideOnly;
    
    @SideOnly(Side.CLIENT)
    public class RenderZombie extends RenderBiped<EntityZombie>
    {
        private static final ResourceLocation ZOMBIE_TEXTURES = new ResourceLocation("textures/entity/zombie/zombie.png");
    
        public RenderZombie(RenderManager renderManagerIn)
        {
            super(renderManagerIn, new ModelZombie(), 0.5F);
            LayerBipedArmor layerbipedarmor = new LayerBipedArmor(this)
            {
                protected void initArmor()
                {
                    this.modelLeggings = new ModelZombie(0.5F, true);
                    this.modelArmor = new ModelZombie(1.0F, true);
                }
            };
            this.addLayer(layerbipedarmor);
        }
    
        /**
         * Returns the location of an entity's texture. Doesn't seem to be called unless you call Render.bindEntityTexture.
         */
        protected ResourceLocation getEntityTexture(EntityZombie entity)
        {
            return ZOMBIE_TEXTURES;
        }
    }
    


  • Oui mais ce qu'il te faut toi c'est l'enregistrer ton render avec le truc que j'ai dis plus haut



  • Le probléme c'est que je sais pas mais j'ai l'inpresion d'avoir créer la classe entity handler pour rien ou j'enregistre pas les truc au bon endroit



  • 2020-04-13_21.03.22.png
    J'ai réussis mais sans texture.



  • La classe de l'entité :

    package fr.samlegamer.heartofender.entity;
    
    import fr.samlegamer.heartofender.Reference;
    import net.minecraft.entity.SharedMonsterAttributes;
    import net.minecraft.entity.monster.EntityMob;
    import net.minecraft.util.ResourceLocation;
    import net.minecraft.world.World;
    import net.minecraftforge.event.RegistryEvent;
    import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
    import net.minecraftforge.fml.common.registry.EntityEntry;
    import net.minecraftforge.fml.common.registry.EntityEntryBuilder;
    
    public class EntityHerobrine extends EntityMob
    {
    	 
        public final ResourceLocation textures = new ResourceLocation(Reference.MODID, ":textures/entity/mob_herobrine.png");
    	
        public EntityHerobrine(World world)
        {
            super(world);
        }
     
        public void applyEntityAttributes()
        {
            super.applyEntityAttributes();
     
            this.getEntityAttribute(SharedMonsterAttributes.MAX_HEALTH).setBaseValue(40D);
            this.getEntityAttribute(SharedMonsterAttributes.FOLLOW_RANGE).setBaseValue(40.0D);
            this.getEntityAttribute(SharedMonsterAttributes.MOVEMENT_SPEED).setBaseValue(0.699999988079071D);
            this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).setBaseValue(8.0D);
         }
            
        private ResourceLocation getmobHerobrineTexture(EntityHerobrine mobHerobrine)
        {
            return textures;
        }
    }
    

    La classe entity handler :

    package fr.samlegamer.heartofender.Handlers;
    
    import java.util.Random;
    
    import fr.samlegamer.heartofender.HeartEnder;
    import fr.samlegamer.heartofender.entity.EntityHerobrine;
    import net.minecraft.entity.EntityList;
    import net.minecraft.entity.EnumCreatureType;
    import net.minecraft.util.ResourceLocation;
    import net.minecraft.world.biome.Biome;
    import net.minecraftforge.fml.common.registry.EntityRegistry;
    
    public class EntityHandler
    {
    	public static void RegisterMonster(Class entityClass, String name)
    	{
    		long x = name.hashCode();
    		Random random = new Random(x);
    		int mainColor = random.nextInt() * 16777215;
    		int subColor = random.nextInt() * 16777215;
    		
    		EntityRegistry.getEntry(entityClass);
    		EntityRegistry.registerModEntity(null, entityClass, name, 16777215, HeartEnder.instance, 64, 1, true, mainColor, subColor);
    	}
    }
    

    La classe du models de l'entité :

    package fr.samlegamer.heartofender.Models;
    
    import fr.samlegamer.heartofender.entity.EntityHerobrine;
    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.math.MathHelper;
    
    public class ModelHerobrine extends ModelBase
    {
        ModelRenderer head;
        ModelRenderer body;
        ModelRenderer rightarm;
        ModelRenderer leftarm;
        ModelRenderer rightleg;
        ModelRenderer leftleg;
      
      public ModelHerobrine()
      {
        textureWidth = 64;
        textureHeight = 64;
        
          head = new ModelRenderer(this, 0, 0);
          head.addBox(-4F, -8F, -4F, 8, 8, 8);
          head.setRotationPoint(0F, 0F, 0F);
          head.setTextureSize(64, 64);
          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, 64);
          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, 64);
          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, 64);
          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, 64);
          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, 64);
          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);
        
        this.head.rotateAngleY = f3 / (180F / (float)Math.PI);
        this.head.rotateAngleX = f4 / (180F / (float)Math.PI);
        this.rightarm.rotateAngleX = MathHelper.cos(f * 0.6662F + (float)Math.PI) * 2.0F * f1 * 0.5F;
        this.leftarm.rotateAngleX = MathHelper.cos(f * 0.6662F) * 2.0F * f1 * 0.5F;
        this.rightarm.rotateAngleZ = 0.0F;
        this.leftarm.rotateAngleZ = 0.0F;
        this.rightarm.rotateAngleX = MathHelper.cos(f * 0.6662F) * 1.4F * f1;
        this.leftarm.rotateAngleX = MathHelper.cos(f * 0.6662F + (float)Math.PI) * 1.4F * f1;
        this.rightarm.rotateAngleY = 0.0F;
        this.leftarm.rotateAngleY = 0.0F;
      }
    }
    

    La classe Render de l'entité :

    package fr.samlegamer.heartofender.Render;
    
    import fr.samlegamer.heartofender.Reference;
    import fr.samlegamer.heartofender.entity.EntityHerobrine;
    import net.minecraft.client.model.ModelBiped;
    import net.minecraft.client.renderer.entity.Render;
    import net.minecraft.client.renderer.entity.RenderBiped;
    import net.minecraft.client.renderer.entity.RenderManager;
    import net.minecraft.entity.EntityLiving;
    import net.minecraft.util.ResourceLocation;
    import net.minecraftforge.fml.client.registry.RenderingRegistry;
    
    public class RenderHerobrine extends RenderBiped
    {
    	public final ResourceLocation textures = new ResourceLocation(Reference.MODID, "textures/entity/mob_herobrine.png");
    	
    	public RenderHerobrine(RenderManager renderManagerIn, ModelBiped modelBipedIn, float shadowSize)
    	{
    		super(renderManagerIn, modelBipedIn, shadowSize);
    	}
    	
        protected ResourceLocation getEntityTexture(EntityLiving living)
        {
            return this.getEntityTexture((EntityHerobrine)living);
        }
     
        private ResourceLocation getEntityTexture(EntityHerobrine mobHerobrine)
        {
            return textures;
        }
    }
    

    La classe principale du mod :

    package fr.samlegamer.heartofender;
    
    import java.awt.Color;
    
    import fr.samlegamer.heartofender.Models.ModelHerobrine;
    import fr.samlegamer.heartofender.Render.RenderHerobrine;
    import fr.samlegamer.heartofender.blocks.HerobrineHead;
    import fr.samlegamer.heartofender.entity.EntityHerobrine;
    import fr.samlegamer.heartofender.init.BlocksMod;
    import fr.samlegamer.heartofender.init.ItemsMod;
    import fr.samlegamer.heartofender.init.RecipesMod;
    import fr.samlegamer.heartofender.proxy.ServerProxy;
    import fr.samlegamer.heartofender.world.WorldRegisterTuto;
    import net.minecraft.advancements.critereon.BredAnimalsTrigger.Instance;
    import net.minecraft.client.model.ModelBiped;
    import net.minecraft.client.renderer.entity.Render;
    import net.minecraft.client.resources.Language;
    import net.minecraft.entity.Entity;
    import net.minecraft.entity.EnumCreatureType;
    import net.minecraft.entity.monster.EntityMob;
    import net.minecraft.util.ResourceLocation;
    import net.minecraftforge.event.RegistryEvent;
    import net.minecraftforge.fml.client.registry.RenderingRegistry;
    import net.minecraftforge.fml.common.Mod;
    import net.minecraftforge.fml.common.Mod.EventHandler;
    import net.minecraftforge.fml.common.SidedProxy;
    import net.minecraftforge.fml.common.event.FMLInitializationEvent;
    import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
    import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
    import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
    import net.minecraftforge.fml.common.registry.EntityEntry;
    import net.minecraftforge.fml.common.registry.EntityEntryBuilder;
    import net.minecraftforge.fml.common.registry.EntityRegistry;
    import net.minecraftforge.fml.relauncher.Side;
    import net.minecraftforge.fml.relauncher.SideOnly;
    
    @Mod(modid = Reference.MODID, name = Reference.NAME, version = Reference.VERSION, acceptedMinecraftVersions = Reference.MINECRAFT_VERSION)
    public class HeartEnder 
    {
    	@SidedProxy(clientSide = Reference.CLIENT_PROXY, serverSide = Reference.SERVER_PROXY, modId = Reference.MODID)
    	public static ServerProxy proxy;
    	
    	@net.minecraftforge.fml.common.Mod.Instance(Reference.MODID)
    	public static HeartEnder instance;
    	
    	@EventHandler
    	public void preInit(FMLPreInitializationEvent event)
    	{
    		BlocksMod.init();
    		ItemsMod.init();
    		RecipesMod.init();
    		WorldRegisterTuto.MainRegistry();
    	}
    	
    	@EventHandler
    	public void init(FMLInitializationEvent event)
    	{
    		proxy.register();
    		
            EntityRegistry.registerModEntity(new ResourceLocation(Reference.MODID, "mobHerobrine"), EntityHerobrine.class, "textures/entity/mob_herobrine.png", 420, this.instance, 40, 2, true);
        }
    	
    	public final ResourceLocation textures = new ResourceLocation(Reference.MODID, ":textures/entity/mob_herobrine.png");
    }
    


  • et... ?



  • je ne trouve pas comment importer la texture de l'entité sa reste un cube blanc par défaut qui ne bouge pas et que tu peut taper est ce que je dois déclaré le rendu et le models de la classe principal du mod



  • Dans ta classe principale, tu as une erreur, tu as fait :

    public final ResourceLocation textures = new ResourceLocation(Reference.MODID, ":textures/entity/mob_herobrine.png");
    

    Tu as deux possibilité, soit :

    public final ResourceLocation textures = new ResourceLocation(Reference.MODID, "textures/entity/mob_herobrine.png");
    

    ou

    public final ResourceLocation textures = new ResourceLocation(Reference.MODID + ":textures/entity/mob_herobrine.png");
    


  • ok merci je vais tester tout



  • Le code ne marche pas mais pourtant dans techne la texture n'a pas de probléme peut être faut que je mette sa dans la classe de l'éntité ?


Log in to reply