Search in sources :

Example 1 with EntityAIShootPoisonProjectiles

use of team.cqr.cqrepoured.entity.ai.spells.EntityAIShootPoisonProjectiles in project ChocolateQuestRepoured by TeamChocoQuest.

the class EntityCQRGiantSpider method registerGoals.

@Override
protected void registerGoals() {
    this.spellHandler = this.createSpellHandler();
    this.goalSelector.addGoal(0, new SwimGoal(this));
    this.goalSelector.addGoal(1, new BossAISpiderSummonMinions(this));
    this.goalSelector.addGoal(2, new BossAISpiderWebshot(this));
    this.goalSelector.addGoal(3, new BossAISpiderHook(this));
    this.goalSelector.addGoal(12, new BossAISpiderLeapAttack(this, 1.2F));
    this.goalSelector.addGoal(14, new EntityAIAttack(this));
    this.goalSelector.addGoal(20, new EntityAIFollowAttackTarget(this));
    this.goalSelector.addGoal(30, new EntityAIMoveToLeader(this));
    this.goalSelector.addGoal(31, new EntityAIFollowPath(this));
    this.goalSelector.addGoal(32, new EntityAIMoveToHome(this));
    this.goalSelector.addGoal(11, this.spellHandler);
    this.spellHandler.addSpell(0, new EntityAIShootPoisonProjectiles(this, 80, 20) {

        @Override
        protected SoundEvent getStartChargingSound() {
            return SoundEvents.SPIDER_HURT;
        }

        @Override
        protected SoundEvent getStartCastingSound() {
            return SoundEvents.SPIDER_AMBIENT;
        }
    });
    this.goalSelector.addGoal(0, new EntityAICQRNearestAttackTarget(this));
    this.goalSelector.addGoal(1, new EntityAIHurtByTarget(this));
}
Also used : EntityAIFollowPath(team.cqr.cqrepoured.entity.ai.EntityAIFollowPath) EntityAIAttack(team.cqr.cqrepoured.entity.ai.attack.EntityAIAttack) BossAISpiderHook(team.cqr.cqrepoured.entity.ai.boss.giantspider.BossAISpiderHook) EntityAIMoveToHome(team.cqr.cqrepoured.entity.ai.EntityAIMoveToHome) EntityAIHurtByTarget(team.cqr.cqrepoured.entity.ai.target.EntityAIHurtByTarget) EntityAIMoveToLeader(team.cqr.cqrepoured.entity.ai.EntityAIMoveToLeader) BossAISpiderSummonMinions(team.cqr.cqrepoured.entity.ai.boss.giantspider.BossAISpiderSummonMinions) SwimGoal(net.minecraft.entity.ai.goal.SwimGoal) SoundEvent(net.minecraft.util.SoundEvent) BossAISpiderWebshot(team.cqr.cqrepoured.entity.ai.boss.giantspider.BossAISpiderWebshot) BossAISpiderLeapAttack(team.cqr.cqrepoured.entity.ai.boss.giantspider.BossAISpiderLeapAttack) EntityAIShootPoisonProjectiles(team.cqr.cqrepoured.entity.ai.spells.EntityAIShootPoisonProjectiles) EntityAICQRNearestAttackTarget(team.cqr.cqrepoured.entity.ai.target.EntityAICQRNearestAttackTarget) EntityAIFollowAttackTarget(team.cqr.cqrepoured.entity.ai.EntityAIFollowAttackTarget)

Example 2 with EntityAIShootPoisonProjectiles

use of team.cqr.cqrepoured.entity.ai.spells.EntityAIShootPoisonProjectiles in project ChocolateQuestRepoured by TeamChocoQuest.

the class EntityCQRLich method registerGoals.

@Override
protected void registerGoals() {
    super.registerGoals();
    this.spellHandler.addSpell(0, new EntityAIArmorSpell(this, 50, 30) {

        @Override
        public boolean isInterruptible() {
            return true;
        }
    });
    this.spellHandler.addSpell(1, new EntityAISummonMinionSpell(this, 15, 10, new ResourceLocation(CQRMain.MODID, "zombie"), ECircleTexture.ZOMBIE, true, 25, 5, new Vector3d(0, 0, 0)) {

        @Override
        public boolean isInterruptible() {
            return false;
        }
    });
    this.spellHandler.addSpell(2, new EntityAIFangAttack(this, 20, 5, 1, 12) {

        @Override
        public boolean isInterruptible() {
            return false;
        }
    });
    this.spellHandler.addSpell(3, new EntityAIShootPoisonProjectiles(this, 40, 20) {

        @Override
        public boolean isInterruptible() {
            return false;
        }
    });
}
Also used : EntityAIArmorSpell(team.cqr.cqrepoured.entity.ai.spells.EntityAIArmorSpell) EntityAISummonMinionSpell(team.cqr.cqrepoured.entity.ai.spells.EntityAISummonMinionSpell) Vector3d(net.minecraft.util.math.vector.Vector3d) EntityAIShootPoisonProjectiles(team.cqr.cqrepoured.entity.ai.spells.EntityAIShootPoisonProjectiles) ResourceLocation(net.minecraft.util.ResourceLocation) EntityAIFangAttack(team.cqr.cqrepoured.entity.ai.spells.EntityAIFangAttack)

Aggregations

EntityAIShootPoisonProjectiles (team.cqr.cqrepoured.entity.ai.spells.EntityAIShootPoisonProjectiles)2 SwimGoal (net.minecraft.entity.ai.goal.SwimGoal)1 ResourceLocation (net.minecraft.util.ResourceLocation)1 SoundEvent (net.minecraft.util.SoundEvent)1 Vector3d (net.minecraft.util.math.vector.Vector3d)1 EntityAIFollowAttackTarget (team.cqr.cqrepoured.entity.ai.EntityAIFollowAttackTarget)1 EntityAIFollowPath (team.cqr.cqrepoured.entity.ai.EntityAIFollowPath)1 EntityAIMoveToHome (team.cqr.cqrepoured.entity.ai.EntityAIMoveToHome)1 EntityAIMoveToLeader (team.cqr.cqrepoured.entity.ai.EntityAIMoveToLeader)1 EntityAIAttack (team.cqr.cqrepoured.entity.ai.attack.EntityAIAttack)1 BossAISpiderHook (team.cqr.cqrepoured.entity.ai.boss.giantspider.BossAISpiderHook)1 BossAISpiderLeapAttack (team.cqr.cqrepoured.entity.ai.boss.giantspider.BossAISpiderLeapAttack)1 BossAISpiderSummonMinions (team.cqr.cqrepoured.entity.ai.boss.giantspider.BossAISpiderSummonMinions)1 BossAISpiderWebshot (team.cqr.cqrepoured.entity.ai.boss.giantspider.BossAISpiderWebshot)1 EntityAIArmorSpell (team.cqr.cqrepoured.entity.ai.spells.EntityAIArmorSpell)1 EntityAIFangAttack (team.cqr.cqrepoured.entity.ai.spells.EntityAIFangAttack)1 EntityAISummonMinionSpell (team.cqr.cqrepoured.entity.ai.spells.EntityAISummonMinionSpell)1 EntityAICQRNearestAttackTarget (team.cqr.cqrepoured.entity.ai.target.EntityAICQRNearestAttackTarget)1 EntityAIHurtByTarget (team.cqr.cqrepoured.entity.ai.target.EntityAIHurtByTarget)1