001package com.fs.starfarer.api.impl.combat;
002
003import java.awt.Color;
004
005import org.lwjgl.util.vector.Vector2f;
006
007import com.fs.starfarer.api.combat.CombatEngineAPI;
008import com.fs.starfarer.api.combat.CombatEntityAPI;
009import com.fs.starfarer.api.combat.DamageType;
010import com.fs.starfarer.api.combat.DamagingProjectileAPI;
011import com.fs.starfarer.api.combat.OnHitEffectPlugin;
012import com.fs.starfarer.api.combat.ShipAPI;
013import com.fs.starfarer.api.combat.listeners.ApplyDamageResultAPI;
014
015public class TestOnHitEffect implements OnHitEffectPlugin {
016
017
018        public void onHit(DamagingProjectileAPI projectile, CombatEntityAPI target,
019                                          Vector2f point, boolean shieldHit, ApplyDamageResultAPI damageResult, CombatEngineAPI engine) {
020                if (target instanceof ShipAPI) {
021                        float emp = projectile.getEmpAmount();
022                        float dam = projectile.getDamageAmount();
023
024                        for (int i = 0; i < 10; i++) {
025                                engine.spawnEmpArc(projectile.getSource(), point, target, target,
026                                                                   DamageType.ENERGY, 
027                                                                   dam,
028                                                                   emp, // emp 
029                                                                   100000f, // max range 
030                                                                   "tachyon_lance_emp_impact",
031                                                                   20f, // thickness
032                                                                   new Color(25,100,155,255),
033                                                                   new Color(255,255,255,255)
034                                                                   );
035                        }
036                }
037        }
038}