Vat1n Posted June 14, 2023 Posted June 14, 2023 Hello, In Minecraft, we know that some entities try to avoid others like the villagers who fear the zombies or the creepers who fear the cats. I discovered this mecanic in the registerGoals method. For example : ##From the registerGoals() method from Creeper.java this.goalSelector.addGoal(3, new AvoidEntityGoal<>(this, Ocelot.class, 6.0F, 1.0D, 1.2D)); this.goalSelector.addGoal(3, new AvoidEntityGoal<>(this, Cat.class, 6.0F, 1.0D, 1.2D)); However, I want to make the creeper to be scared of another entity I've created (called Cubos). I don't know how should I implement another goal in the registerGoals(). Is it useful to use the Access Transformers ? Quote
Top_Revolver Posted June 16, 2023 Posted June 16, 2023 Can't you just replace it with your entities name like: this.goalSelector.addGoal(3, new AvoidEntityGoal<>(this, CubosEntity.class, 6.0F, 1.0D, 1.2D)); //note that you should check if you really named the Entity CubosEntity! Quote
Warren Tode Posted June 16, 2023 Posted June 16, 2023 On 6/16/2023 at 2:36 PM, Top_Revolver said: Can't you just replace it with your entities name like: this.goalSelector.addGoal(3, new AvoidEntityGoal<>(this, CubosEntity.class, 6.0F, 1.0D, 1.2D)); //note that you should check if you really named the Entity CubosEntity! Expand You can, but you will need a mixin to insert that line of code into the registerGoals() method of the Creeper class. Or something along those lines. Quote
MFMods Posted June 19, 2023 Posted June 19, 2023 do not change creeper class. you need to change creeper entities at runtime. respond to "entity joins level" event. if the entity is a creeper, add your cat or whatever it is into goals of the creeper instance. 1 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.