Posted April 11, 20169 yr 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?
April 11, 20169 yr Author 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()); }
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.