19 public void onHit(DamagingProjectileAPI projectile, CombatEntityAPI target,
20 Vector2f point,
boolean shieldHit, ApplyDamageResultAPI damageResult, CombatEngineAPI engine) {
22 if (!(target instanceof ShipAPI))
return;
23 ShipAPI ship = (ShipAPI) target;
24 float pierceChance = ((ShipAPI)target).getHardFluxLevel() - 0.1f;
25 pierceChance *= ship.getMutableStats().getDynamic().getValue(Stats.SHIELD_PIERCED_MULT);
27 boolean piercedShield = shieldHit && (float) Math.random() < pierceChance;
30 if (!shieldHit || piercedShield) {
31 float emp = projectile.getEmpAmount();
33 engine.spawnEmpArcPierceShields(
34 projectile.getSource(), point, target, target,
39 "tachyon_lance_emp_impact",
43 new Color(125,125,100,255),
44 new Color(255,255,255,255)