content: package com.github.alexthe666.iceandfire.entity;
  
  import com.github.alexthe666.iceandfire.IafConfig;
  import com.github.alexthe666.iceandfire.entity.util.IDragonProjectile;
  import com.github.alexthe666.iceandfire.misc.IafDamageRegistry;
  import net.minecraft.core.BlockPos;
  import net.minecraft.world.damagesource.DamageSource;
  import net.minecraft.world.entity.Entity;
  import net.minecraft.world.entity.EntityType;
  import net.minecraft.world.entity.projectile.Fireball;
  import net.minecraft.world.level.Level;
  import net.minecraftforge.network.PlayMessages;
  
  import javax.annotation.Nullable;
  
  public class EntityDragonLightningCharge extends EntityDragonCharge implements IDragonProjectile {
  
  
      public EntityDragonLightningCharge(EntityType<? extends Fireball> type, Level worldIn) {
          super(type, worldIn);
      }
  
      public EntityDragonLightningCharge(PlayMessages.SpawnEntity spawnEntity, Level worldIn) {
          this(IafEntityRegistry.LIGHTNING_DRAGON_CHARGE.get(), worldIn);
      }
  
      public EntityDragonLightningCharge(EntityType<? extends Fireball> type, Level worldIn, double posX,
                                         double posY, double posZ, double accelX, double accelY, double accelZ) {
          super(type, worldIn, posX, posY, posZ, accelX, accelY, accelZ);
      }
  
      public EntityDragonLightningCharge(EntityType<? extends Fireball> type, Level worldIn,
                                         EntityDragonBase shooter, double accelX, double accelY, double accelZ) {
          super(type, worldIn, shooter, accelX, accelY, accelZ);
      }
  
      @Override
      public DamageSource causeDamage(@Nullable Entity cause) {
          return IafDamageRegistry.causeDragonLightningDamage(cause);
      }
  
      @Override
      public void destroyArea(Level world, BlockPos center, EntityDragonBase destroyer) {
          IafDragonDestructionManager.destroyAreaLightningCharge(world, center, destroyer);
      }
  
      @Override
      public float getDamage() {
          return (float) IafConfig.dragonAttackDamageLightning;
      }
  
  
  }