Thornack Posted April 11, 2016 Share Posted April 11, 2016 Hi everyone, I am working on a targeting AI, it is basically identical atm to the skeleton targeting AI as I have just started and I got this to work for my entity all of the methods are called properly etc etc. I was wondering if anyone would know how I could get the last attackerEntity that attacked the entity doing the targeting? I basically want to use this to change the targeting code so that instead of doing the regular targeting code that a skeleton does, my ai will do revenge attacks on the last attacking entity inside the shouldExecute method? I have tried outprinting the following to see whether or not i could get the entity using getLastAttacker(); System.out.println("LAST ENTITY TO ATTACK ME WAS: " + this.taskOwner.getLastAttacker()); but I get null every tick. anyone know why? Quote Link to comment Share on other sites More sharing options...
Thornack Posted April 11, 2016 Author Share Posted April 11, 2016 I use the LivingHurtEvent to set the last attacker and then I just get the attacker in my AI and it works @SubscribeEvent public void hurt(LivingHurtEvent event) { if(event.entity instanceof EntityCustom){ EntityCustom entity = (EntityCustom) event.entity; entity.setLastAttacker(event.source.getEntity()); } } now it isnt null public boolean shouldExecute() { System.out.println("ATTACKING ENTITY IS: " + this.taskOwner.getLastAttacker()); } Quote Link to comment Share on other sites More sharing options...
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.