1package com.fs.starfarer.api.impl.combat.dweller;
3import org.lwjgl.util.vector.Vector2f;
5import com.fs.starfarer.api.Global;
6import com.fs.starfarer.api.combat.CombatEngineAPI;
7import com.fs.starfarer.api.combat.CombatFleetManagerAPI;
8import com.fs.starfarer.api.combat.MutableShipStatsAPI;
9import com.fs.starfarer.api.combat.ShipAPI;
10import com.fs.starfarer.api.combat.ShipwideAIFlags.AIFlags;
11import com.fs.starfarer.api.impl.combat.BaseShipSystemScript;
12import com.fs.starfarer.api.impl.combat.dweller.VortexLauncherEffect.DisturbShroudPlugin;
13import com.fs.starfarer.api.util.Misc;
39 if (state == State.IN) {
54 if (state == State.ACTIVE &&
fireDir !=
null) {
63 if (state == State.OUT &&
fireDir !=
null) {
69 if (state == State.IDLE || state == State.COOLDOWN) {
91 velMult = 0.5f + (float) Math.random() * 1f;
98 shroud.custom1 = ship;
102 if (sourceShroud !=
null) {
105 new DisturbShroudPlugin(1f,
fireDir, ejecta, offset, sourceShroud,
114 public StatusData
getStatusData(
int index, State state,
float effectLevel) {
static SoundPlayerAPI getSoundPlayer()
static CombatEngineAPI getCombatEngine()
Object getCustom(AIFlags flag)
boolean hasFlag(AIFlags flag)
static DwellerShroud getShroudFor(CombatEntityAPI entity)
int getNumMembersToMaintain()
static String EJECTA_WING
void apply(MutableShipStatsAPI stats, String id, State state, float effectLevel)
StatusData getStatusData(int index, State state, float effectLevel)
static float REFIRE_DELAY
static float BACK_OFF_ACCEL
static void fireShroudedEjecta(ShipAPI ship, Vector2f fireDir)
CombatEntityAPI getAttachedTo()
static Vector2f getUnitVectorAtDegreeAngle(float degrees)
static float getAngleInDegrees(Vector2f v)
SoundAPI playSound(String id, float pitch, float volume, Vector2f loc, Vector2f vel)
CombatFleetManagerAPI getFleetManager(FleetSide side)
void addPlugin(EveryFrameCombatPlugin plugin)
float getElapsedInLastFrame()
ShipAPI spawnShipOrWing(String specId, Vector2f location, float facing)
void setSuppressDeploymentMessages(boolean suppressDeploymentMessages)
CombatEntityAPI getEntity()
Vector2f getMouseTarget()
ShipwideAIFlags getAIFlags()