use of net.minecraft.entity.ai.goal.RangedAttackGoal in project Hostile-Mobs-and-Girls by Mechalopa.
the class ArurauneEntity method registerGoals.
@Override
protected void registerGoals() {
this.goalSelector.addGoal(1, new SwimGoal(this));
this.goalSelector.addGoal(4, new RangedAttackGoal(this, 1.0D, 40, 60, 10.0F));
this.goalSelector.addGoal(5, new WaterAvoidingRandomWalkingGoal(this, 1.0D));
this.goalSelector.addGoal(6, new LookAtGoal(this, PlayerEntity.class, 8.0F));
this.goalSelector.addGoal(6, new LookRandomlyGoal(this));
this.targetSelector.addGoal(1, new HurtByTargetGoal(this));
this.targetSelector.addGoal(2, new NearestAttackableTargetGoal<>(this, PlayerEntity.class, true));
if (ModConfigs.cachedServer.ARURAUNE_ATTACK_VILLAGERS)
this.targetSelector.addGoal(3, new NearestAttackableTargetGoal<>(this, AbstractVillagerEntity.class, false));
this.targetSelector.addGoal(3, new NearestAttackableTargetGoal<>(this, IronGolemEntity.class, true));
}
use of net.minecraft.entity.ai.goal.RangedAttackGoal in project DivineRPG by DivineRPG.
the class EntityFrostArcher method registerGoals.
@Override
protected void registerGoals() {
super.registerGoals();
addAttackingAI();
goalSelector.addGoal(0, new RangedAttackGoal(this, this.getAttribute(Attributes.MOVEMENT_SPEED).getBaseValue(), 3, (float) getAttribute(Attributes.FOLLOW_RANGE).getBaseValue()));
}
use of net.minecraft.entity.ai.goal.RangedAttackGoal in project DivineRPG by DivineRPG.
the class EntityKingOfScorchers method registerGoals.
@Override
protected void registerGoals() {
super.registerGoals();
this.goalSelector.addGoal(2, new RangedAttackGoal(this, 1.0D, 40, 32.0F));
this.goalSelector.addGoal(1, new NearestAttackableTargetGoal<>(this, PlayerEntity.class, true));
this.targetSelector.addGoal(1, new NearestAttackableTargetGoal<>(this, PlayerEntity.class, 10, true, false, (entity) -> {
return Math.abs(entity.getY() - this.getY()) <= 4.0D;
}));
}
use of net.minecraft.entity.ai.goal.RangedAttackGoal in project Hostile-Mobs-and-Girls by Mechalopa.
the class MeltyMonsterEntity method registerGoals.
@Override
protected void registerGoals() {
this.goalSelector.addGoal(2, new AvoidEntityGoal<>(this, StriderEntity.class, 10.0F, 1.0D, 1.5D));
this.goalSelector.addGoal(3, new MeltyMonsterEntity.MoveToLavaGoal(this, 1.5D));
this.goalSelector.addGoal(5, new RangedAttackGoal(this, 1.0D, 30, 40, 8.0F));
this.goalSelector.addGoal(6, new WaterAvoidingRandomWalkingGoal(this, 1.0D));
this.goalSelector.addGoal(7, new LookAtGoal(this, PlayerEntity.class, 8.0F));
this.goalSelector.addGoal(7, new LookRandomlyGoal(this));
this.targetSelector.addGoal(1, new HurtByTargetGoal(this));
this.targetSelector.addGoal(2, new NearestAttackableTargetGoal<>(this, PlayerEntity.class, 10, true, false, (p) -> {
return !(p.getVehicle() instanceof StriderEntity);
}));
}
use of net.minecraft.entity.ai.goal.RangedAttackGoal in project DivineRPG by DivineRPG.
the class EntityFrost method registerGoals.
@Override
protected void registerGoals() {
super.registerGoals();
addAttackingAI();
this.goalSelector.addGoal(2, new RangedAttackGoal(this, 1.0D, 40, 20.0F));
}
Aggregations