Starsector API
Loading...
Searching...
No Matches
ShipSystemAPI.java
Go to the documentation of this file.
1package com.fs.starfarer.api.combat;
2
3import org.lwjgl.util.vector.Vector2f;
4
5import com.fs.starfarer.api.plugins.ShipSystemStatsScript;
6
7public interface ShipSystemAPI {
8
9 public static enum SystemState {
10 IDLE,
11 IN,
12 ACTIVE,
13 OUT,
14 COOLDOWN,
15 }
16
17 String getId();
18
20 boolean isOutOfAmmo();
24 boolean isActive();
25
26 boolean isCoolingDown();
27
28 int getAmmo();
29
32
34
38 boolean isOn();
39
40 boolean isChargeup();
41 boolean isChargedown();
42 boolean isStateActive();
43
45
46 void setAmmo(int ammo);
47
49 float getCooldown();
50 void setFluxPerUse(float fluxPerUse);
51 void setFluxPerSecond(float fluxPerSecond);
52
53 SystemState getState();
54
58
60
61 void deactivate();
62
63 void setCooldownRemaining(float remaining);
64 void setCooldown(float cooldown);
65
66 Vector2f getTargetLoc();
67
68 void forceState(SystemState state, float progress);
69
71
73 void setAmmoReloadProgress(float progress);
74
75 boolean canBeActivated();
76
78}
void forceState(SystemState state, float progress)
void setAmmoReloadProgress(float progress)
void setCooldownRemaining(float remaining)
void setFluxPerSecond(float fluxPerSecond)