Starsector API
Loading...
Searching...
No Matches
ShipSystemSpecAPI.java
Go to the documentation of this file.
1package com.fs.starfarer.api.combat;
2
3import java.util.EnumSet;
4import java.util.Set;
5
6import java.awt.Color;
7
8import org.json.JSONObject;
9
10import com.fs.starfarer.api.combat.WeaponAPI.WeaponType;
11import com.fs.starfarer.api.loading.WithSourceMod;
12import com.fs.starfarer.api.plugins.ShipSystemStatsScript;
13
14public interface ShipSystemSpecAPI extends WithSourceMod {
15
17
19
20 void setCanUseWhileRightClickSystemOn(boolean canUseWhileRightClickSystemOn);
21
23
24 boolean isPhaseCloak();
26
30
33
35
37 void setPhaseChargedownVulnerabilityFraction(float phaseChargedownVulnerabilityFraction);
38
39 float getCrPerUse();
40
41 void setCrPerUse(float crPerUse);
42
44
46
48
50
51 JSONObject getSpecJson();
52
54
56
57 float getShipAlpha();
58
60
62
65
67
69
70 float getThreatArc();
71
73
74 float getEmpDamage();
75
76 float getDamage();
77
79
81
83
84 boolean isAllowFreeRoam();
85
87
89
91
93
95
97
99
101
103
105
107
109
111
113
115
117
118 String getLoopSound();
119
121
123
125
127
129
131
133
135
137
139
141
143
144 void setIconSpriteName(String iconSpriteName);
145
147
148 EnumSet<WeaponType> getWeaponTypes();
149
151
153
154 void setTriggersExtraEngines(boolean triggersEngines);
155
157
159
160 void setHardDissipationAllowed(boolean allowHardDissipation);
161
163
164 void setVentingAllowed(boolean ventingAllowed);
165
167
169
170 void setToggle(boolean toggle);
171
172 void setDissipationAllowed(boolean dissipationAllowed);
173
175
177
179
181
183
184 void setRegen(float regen);
185
186 float getIn();
187
188 void setIn(float in);
189
190 float getActive();
191
192 void setActive(float active);
193
194 float getOut();
195
196 void setOut(float out);
197
198 void setCooldown(float cooldown);
199
200 boolean isToggle();
201
203
204 void setFiringAllowed(boolean firingAllowed);
205
206 String getUseSound();
207
208 void setUseSound(String useSound);
209
211
212 void setOutOfUsesSound(String outOfAmmoSound);
213
214 String getId();
215
216 void setId(String id);
217
218 String getName();
219
220 void setName(String name);
221
222 String getWeaponId();
223
224 void setWeaponId(String weaponId);
225
227
228 void setFluxPerSecond(float fluxPerSecond);
229
231
232 void setFluxPerUse(float fluxPerUse);
233
234 void setMaxUses(int maxUses);
235
237
238 void setTurningAllowed(boolean turnAllowed);
239
241
242 void setStrafeAllowed(boolean strafeAllowed);
243
245
246 void setShieldAllowed(boolean shieldAllowed);
247
249
250 void setAccelerateAllowed(boolean accelerateAllowed);
251
253
254 void setFluxPerSecondBaseRate(float fluxPerSecondBaseRate);
255
257
258 void setFluxPerSecondBaseCap(float fluxPerSecondBaseCap);
259
261
262 void setFluxPerUseBaseRate(float fluxPerUseBaseRate);
263
265
266 void setFluxPerUseBaseCap(float fluxPerUseBaseCap);
267
269
270 void setCanNotCauseOverload(boolean canNotCauseOverload);
271
273
274 void setRequiresZeroFluxBoost(boolean requiresZeroFluxBoost);
275
276 void addTag(String tag);
277
278 Set<String> getTags();
279
280 boolean hasTag(String tag);
281
283
284 void setAllowFlameoutOnImpactWithFriendly(boolean allowFlameoutOnImpactWithFriendly);
285
287 void setReloadBaseAmmoAmountOnly(boolean reloadBaseAmmoAmountOnly);
288
289 boolean usesAmmo();
290
291}
void setTriggersExtraEngines(boolean triggersEngines)
void setCanNotCauseOverload(boolean canNotCauseOverload)
void setPhaseChargedownVulnerabilityFraction(float phaseChargedownVulnerabilityFraction)
void setCanUseWhileRightClickSystemOn(boolean canUseWhileRightClickSystemOn)
float getRange(MutableShipStatsAPI stats)
void setFluxPerSecond(float fluxPerSecond)
void setDissipationAllowed(boolean dissipationAllowed)
void setHardDissipationAllowed(boolean allowHardDissipation)
void setFluxPerSecondBaseRate(float fluxPerSecondBaseRate)
float getThreatRange(MutableShipStatsAPI stats)
void setFluxPerSecondBaseCap(float fluxPerSecondBaseCap)
void setFluxPerUseBaseCap(float fluxPerUseBaseCap)
void setStrafeAllowed(boolean strafeAllowed)
void setAllowFlameoutOnImpactWithFriendly(boolean allowFlameoutOnImpactWithFriendly)
void setShieldAllowed(boolean shieldAllowed)
void setAccelerateAllowed(boolean accelerateAllowed)
float getCooldown(MutableShipStatsAPI stats)
void setVentingAllowed(boolean ventingAllowed)
void setPhaseCloak(boolean isPhaseCloak)
int getMaxUses(MutableShipStatsAPI stats)
void setIconSpriteName(String iconSpriteName)
void setFiringAllowed(boolean firingAllowed)
void setReloadBaseAmmoAmountOnly(boolean reloadBaseAmmoAmountOnly)
void setGeneratesHardFlux(boolean generatesHardFlux)
void setRequiresZeroFluxBoost(boolean requiresZeroFluxBoost)
void setTurningAllowed(boolean turnAllowed)
void setFluxPerUseBaseRate(float fluxPerUseBaseRate)
float getRegen(MutableShipStatsAPI stats)
void setOutOfUsesSound(String outOfAmmoSound)