use of uk.co.wehavecookies56.kk.common.entity.magic.EntityKH1Fire in project Kingdom-Keys-Re-Coded by Wehavecookies56.
the class EntityAIRedNocturne method shouldContinueExecuting.
@Override
public boolean shouldContinueExecuting() {
if (this.taskOwner.getAttackTarget() != null && this.taskOwner.getDistanceSqToEntity(this.taskOwner.getAttackTarget()) < MAX_DISTANCE_FOR_FIREBALL) {
if (ticksBeforeNextFlame <= 0) {
double d0 = this.taskOwner.getDistanceSqToEntity(this.taskOwner.getAttackTarget());
float f = MathHelper.sqrt(MathHelper.sqrt(d0));
double d1 = this.taskOwner.getAttackTarget().posX - this.taskOwner.posX;
double d2 = this.taskOwner.getAttackTarget().getEntityBoundingBox().minY + (double) (this.taskOwner.getAttackTarget().height / 2.0F) - (this.taskOwner.posY + (double) (this.taskOwner.height / 2.0F));
double d3 = this.taskOwner.getAttackTarget().posZ - this.taskOwner.posZ;
EntityKH1Fire esfb = new EntityKH1Fire(this.taskOwner.world, this.taskOwner);
this.taskOwner.world.playSound(null, this.taskOwner.posX, this.taskOwner.posY, this.taskOwner.posZ, SoundEvents.ENTITY_GHAST_SHOOT, SoundCategory.HOSTILE, 1.0F, 1.0F);
esfb.setThrowableHeading(d1, d2, d3, 1, 0);
esfb.posY = this.taskOwner.posY + (double) (this.taskOwner.height / 2.0F) + 0.5D;
this.taskOwner.world.spawnEntity(esfb);
ticksBeforeNextFlame = 30 + this.taskOwner.getRNG().nextInt(10);
} else {
ticksBeforeNextFlame--;
}
return true;
}
return false;
}
use of uk.co.wehavecookies56.kk.common.entity.magic.EntityKH1Fire in project Kingdom-Keys-Re-Coded by Wehavecookies56.
the class MagicKH1Fire method process.
@Override
public void process(EntityPlayer player, Side side) {
if (!player.getCapability(ModCapabilities.CHEAT_MODE, null).getCheatMode())
player.getCapability(ModCapabilities.PLAYER_STATS, null).remMP(Constants.getCost(Strings.Spell_Fire));
World world = player.world;
switch(player.getCapability(ModCapabilities.MAGIC_STATE, null).getMagicLevel(Strings.Spell_Fire)) {
case 1:
EntityKH1Fire entityKH1Fire = new EntityKH1Fire(world, player);
world.spawnEntity(entityKH1Fire);
entityKH1Fire.setHeadingFromThrower(player, player.rotationPitch, player.rotationYaw, 0, 1, 0);
PacketDispatcher.sendToAllAround(new SpawnKH1FireParticles(new EntityKH1Fire(world), 1), player, 64.0D);
break;
case 2:
EntityKH1Fira entityKH1Fira = new EntityKH1Fira(world, player);
world.spawnEntity(entityKH1Fira);
entityKH1Fira.setHeadingFromThrower(player, player.rotationPitch, player.rotationYaw, 0, 1, 0);
PacketDispatcher.sendToAllAround(new SpawnKH1FireParticles(new EntityKH1Fira(world), 1), player, 64.0D);
break;
case 3:
EntityKH1Firaga entityKH1Firaga = new EntityKH1Firaga(world, player);
world.spawnEntity(entityKH1Firaga);
entityKH1Firaga.setHeadingFromThrower(player, player.rotationPitch, player.rotationYaw, 0, 1, 0);
PacketDispatcher.sendToAllAround(new SpawnKH1FireParticles(new EntityKH1Firaga(world), 1), player, 64.0D);
break;
}
PacketDispatcher.sendTo(new SyncMagicData(player.getCapability(ModCapabilities.MAGIC_STATE, null), player.getCapability(ModCapabilities.PLAYER_STATS, null)), (EntityPlayerMP) player);
}
Aggregations