use of mod.azure.doom.entity.attack.FireballAttack in project MCDoom by AzureDoom.
the class ImpEntity method initGoals.
@Override
protected void initGoals() {
this.goalSelector.add(8, new LookAtEntityGoal(this, PlayerEntity.class, 8.0F));
this.goalSelector.add(8, new LookAroundGoal(this));
this.goalSelector.add(5, new WanderAroundFarGoal(this, 0.8D));
this.goalSelector.add(4, new RangedStrafeAttackGoal(this, new FireballAttack(this, false).setProjectileOriginOffset(0.8, 0.8, 0.8).setDamage(config.imp_ranged_damage).setSound(SoundEvents.ENTITY_BLAZE_SHOOT, 1.0F, 1.4F + this.getRandom().nextFloat() * 0.35F), 1.0D, 5, 30, 15, 15F, 1).setMultiShot(2, 3));
this.goalSelector.add(4, new DemonAttackGoal(this, 1.25D, 2));
this.targetSelector.add(2, new ActiveTargetGoal<>(this, PlayerEntity.class, true));
this.targetSelector.add(2, new ActiveTargetGoal<>(this, MerchantEntity.class, true));
this.targetSelector.add(2, new RevengeGoal(this).setGroupRevenge());
}
use of mod.azure.doom.entity.attack.FireballAttack in project MCDoom by AzureDoom.
the class ProwlerEntity method initGoals.
@Override
protected void initGoals() {
this.goalSelector.add(0, new SwimGoal(this));
this.goalSelector.add(4, new DemonAttackGoal(this, 1.25D, 2));
this.goalSelector.add(4, new ProwlerEntity.RangedStrafeAttackGoal(this, new FireballAttack(this, false).setProjectileOriginOffset(0.8, 0.8, 0.8).setDamage(config.prowler_ranged_damage).setSound(SoundEvents.ENTITY_BLAZE_SHOOT, 1.0F, 1.4F + this.getRandom().nextFloat() * 0.35F), 1.0D, 50, 30, 15, 15F).setMultiShot(3, 2));
this.goalSelector.add(8, new LookAtEntityGoal(this, PlayerEntity.class, 8.0F));
this.goalSelector.add(8, new LookAroundGoal(this));
this.targetSelector.add(1, new ProwlerEntity.TeleportTowardsPlayerGoal(this, this::shouldAngerAt));
this.targetSelector.add(3, new ActiveTargetGoal<>(this, PlayerEntity.class, true));
this.targetSelector.add(3, new ActiveTargetGoal<>(this, MerchantEntity.class, true));
this.targetSelector.add(2, new RevengeGoal(this));
this.targetSelector.add(4, new UniversalAngerGoal<>(this, false));
}
Aggregations