Search in sources :

Example 26 with RevengeGoal

use of net.minecraft.entity.ai.goal.RevengeGoal in project MCDoom by AzureDoom.

the class MarauderEntity 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 RangedAttackGoal(this, new RangedAttack(this).setProjectileOriginOffset(0.8, 0.8, 0.8).setDamage(config.marauder_ssgdamage).setSound(ModSoundEvents.SUPER_SHOTGUN_SHOOT, 1.0F, 1.4F + this.getRandom().nextFloat() * 0.35F), 1.1D));
    this.targetSelector.add(1, new MarauderEntity.TeleportTowardsPlayerGoal(this, this::shouldAngerAt));
    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());
}
Also used : AbstractRangedAttack(mod.azure.doom.entity.attack.AbstractRangedAttack) RevengeGoal(net.minecraft.entity.ai.goal.RevengeGoal) WanderAroundFarGoal(net.minecraft.entity.ai.goal.WanderAroundFarGoal) MerchantEntity(net.minecraft.entity.passive.MerchantEntity) LookAroundGoal(net.minecraft.entity.ai.goal.LookAroundGoal) LookAtEntityGoal(net.minecraft.entity.ai.goal.LookAtEntityGoal) RangedAttackGoal(mod.azure.doom.entity.ai.goal.RangedAttackGoal) PlayerEntity(net.minecraft.entity.player.PlayerEntity)

Example 27 with RevengeGoal

use of net.minecraft.entity.ai.goal.RevengeGoal in project MCDoom by AzureDoom.

the class SummonerEntity 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 SummonerEntity.AttackGoal(this));
    this.targetSelector.add(1, new SummonerEntity.TeleportTowardsPlayerGoal(this, this::shouldAngerAt));
    this.targetSelector.add(2, new RevengeGoal(this).setGroupRevenge());
    this.targetSelector.add(2, new ActiveTargetGoal<>(this, PlayerEntity.class, true));
    this.targetSelector.add(2, new ActiveTargetGoal<>(this, MerchantEntity.class, true));
}
Also used : RevengeGoal(net.minecraft.entity.ai.goal.RevengeGoal) WanderAroundFarGoal(net.minecraft.entity.ai.goal.WanderAroundFarGoal) MerchantEntity(net.minecraft.entity.passive.MerchantEntity) LookAroundGoal(net.minecraft.entity.ai.goal.LookAroundGoal) LookAtEntityGoal(net.minecraft.entity.ai.goal.LookAtEntityGoal) PlayerEntity(net.minecraft.entity.player.PlayerEntity)

Example 28 with RevengeGoal

use of net.minecraft.entity.ai.goal.RevengeGoal in project MCDoom by AzureDoom.

the class SpectreEntity method initGoals.

@Override
protected void initGoals() {
    this.goalSelector.add(8, new LookAtEntityGoal(this, PlayerEntity.class, 8.0F));
    this.goalSelector.add(5, new WanderAroundFarGoal(this, 0.8D));
    this.goalSelector.add(8, new LookAroundGoal(this));
    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());
}
Also used : RevengeGoal(net.minecraft.entity.ai.goal.RevengeGoal) WanderAroundFarGoal(net.minecraft.entity.ai.goal.WanderAroundFarGoal) MerchantEntity(net.minecraft.entity.passive.MerchantEntity) DemonAttackGoal(mod.azure.doom.entity.ai.goal.DemonAttackGoal) LookAroundGoal(net.minecraft.entity.ai.goal.LookAroundGoal) LookAtEntityGoal(net.minecraft.entity.ai.goal.LookAtEntityGoal) PlayerEntity(net.minecraft.entity.player.PlayerEntity)

Example 29 with RevengeGoal

use of net.minecraft.entity.ai.goal.RevengeGoal in project MCDoom by AzureDoom.

the class ArchvileEntity 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(7, new ArchvileEntity.AttackGoal(this));
    this.targetSelector.add(1, new ArchvileEntity.TeleportTowardsPlayerGoal(this, this::shouldAngerAt));
    this.targetSelector.add(2, new RevengeGoal(this).setGroupRevenge());
    this.targetSelector.add(2, new ActiveTargetGoal<>(this, PlayerEntity.class, true));
    this.targetSelector.add(2, new ActiveTargetGoal<>(this, MerchantEntity.class, true));
}
Also used : RevengeGoal(net.minecraft.entity.ai.goal.RevengeGoal) WanderAroundFarGoal(net.minecraft.entity.ai.goal.WanderAroundFarGoal) MerchantEntity(net.minecraft.entity.passive.MerchantEntity) LookAroundGoal(net.minecraft.entity.ai.goal.LookAroundGoal) LookAtEntityGoal(net.minecraft.entity.ai.goal.LookAtEntityGoal) PlayerEntity(net.minecraft.entity.player.PlayerEntity)

Example 30 with RevengeGoal

use of net.minecraft.entity.ai.goal.RevengeGoal in project MCDoom by AzureDoom.

the class BaronEntity method initGoals.

@SuppressWarnings({ "unchecked", "rawtypes" })
@Override
protected void initGoals() {
    this.goalSelector.add(5, new WanderAroundFarGoal(this, 1.0D));
    this.goalSelector.add(6, new LookAtEntityGoal(this, PlayerEntity.class, 8.0F));
    this.goalSelector.add(6, new LookAroundGoal(this));
    this.goalSelector.add(5, new WanderAroundFarGoal(this, 0.8D));
    this.goalSelector.add(4, new RangedAttackGoal(this, new BaronEntity.FireballAttack(this).setProjectileOriginOffset(0.8, 0.4, 0.8).setDamage(config.baron_ranged_damage), 1.2));
    this.targetSelector.add(1, new RevengeGoal(this, new Class[0]).setGroupRevenge());
    this.targetSelector.add(2, new ActiveTargetGoal(this, PlayerEntity.class, true));
    this.targetSelector.add(2, new ActiveTargetGoal<>(this, MerchantEntity.class, true));
}
Also used : ActiveTargetGoal(net.minecraft.entity.ai.goal.ActiveTargetGoal) RevengeGoal(net.minecraft.entity.ai.goal.RevengeGoal) WanderAroundFarGoal(net.minecraft.entity.ai.goal.WanderAroundFarGoal) MerchantEntity(net.minecraft.entity.passive.MerchantEntity) LookAroundGoal(net.minecraft.entity.ai.goal.LookAroundGoal) LookAtEntityGoal(net.minecraft.entity.ai.goal.LookAtEntityGoal) RangedAttackGoal(mod.azure.doom.entity.ai.goal.RangedAttackGoal) PlayerEntity(net.minecraft.entity.player.PlayerEntity)

Aggregations

RevengeGoal (net.minecraft.entity.ai.goal.RevengeGoal)44 PlayerEntity (net.minecraft.entity.player.PlayerEntity)43 LookAtEntityGoal (net.minecraft.entity.ai.goal.LookAtEntityGoal)42 MerchantEntity (net.minecraft.entity.passive.MerchantEntity)40 LookAroundGoal (net.minecraft.entity.ai.goal.LookAroundGoal)34 WanderAroundFarGoal (net.minecraft.entity.ai.goal.WanderAroundFarGoal)31 RangedAttackGoal (mod.azure.doom.entity.ai.goal.RangedAttackGoal)12 DemonAttackGoal (mod.azure.doom.entity.ai.goal.DemonAttackGoal)10 RangedStrafeAttackGoal (mod.azure.doom.entity.ai.goal.RangedStrafeAttackGoal)8 RandomFlyConvergeOnTargetGoal (mod.azure.doom.entity.ai.goal.RandomFlyConvergeOnTargetGoal)7 FireballAttack (mod.azure.doom.entity.attack.FireballAttack)7 ServerPlayerEntity (net.minecraft.server.network.ServerPlayerEntity)5 AbstractRangedAttack (mod.azure.doom.entity.attack.AbstractRangedAttack)4 ActiveTargetGoal (net.minecraft.entity.ai.goal.ActiveTargetGoal)4 SwimGoal (net.minecraft.entity.ai.goal.SwimGoal)3 UUID (java.util.UUID)2 Lists (com.google.common.collect.Lists)1 List (java.util.List)1 Predicate (java.util.function.Predicate)1 IconAttackGoal (mod.azure.doom.entity.ai.goal.IconAttackGoal)1