Class ConstructionSwarmSystemScript
java.lang.Object
com.fs.starfarer.api.impl.combat.BaseShipSystemScript
com.fs.starfarer.api.impl.combat.threat.ConstructionSwarmSystemScript
- All Implemented Interfaces:
ShipSystemStatsScript
,ShipSystemStatsScriptAdvanced
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enum
static class
static class
Nested classes/interfaces inherited from interface com.fs.starfarer.api.plugins.ShipSystemStatsScript
ShipSystemStatsScript.State, ShipSystemStatsScript.StatusData
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic float
static int
static float
static float
static float
static int
protected int
protected static boolean
static int
static float
static float
static int
static float
static float
protected boolean
protected WeightedRandomPicker<WeaponSlotAPI>
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
apply
(MutableShipStatsAPI stats, String id, ShipSystemStatsScript.State state, float effectLevel) static boolean
constructionSwarmWillBuild
(ShipAPI ship, String tag, ShipAPI.HullSize size) boolean
enoughCR
(ShipSystemAPI system, ShipAPI ship) boolean
enoughDP
(ShipSystemAPI system, ShipAPI ship) boolean
enoughFragments
(ShipSystemAPI system, ShipAPI ship) protected void
static int
getCombatDeployed
(CombatFleetManagerAPI manager, ShipAPI.HullSize size) static float
static int
getFragmentCost
(float dp, ShipAPI.HullSize size) getInfoText
(ShipSystemAPI system, ShipAPI ship) If null, uses "READY" and "ACTIVE" as appropritate in the ship info widget.static int
static int
getNumHivesDeployed
(CombatFleetManagerAPI manager) static int
static void
init()
Can't do this in a static block because the AI script is loaded and references this and would run the static block which in turns triggers some stuff that makes the game crash on startup.boolean
isUsable
(ShipSystemAPI system, ShipAPI ship) protected void
launchSwarm
(ShipAPI ship) pickVariant
(ShipAPI ship) Methods inherited from class com.fs.starfarer.api.impl.combat.BaseShipSystemScript
getActiveOverride, getDisplayNameOverride, getInOverride, getOutOverride, getRegenOverride, getStatusData, getUsesOverride, unapply
-
Field Details
-
BASE_FRAGMENTS
public static int BASE_FRAGMENTS -
CONSTRUCTION_SWARM_SPEED_MULT
public static float CONSTRUCTION_SWARM_SPEED_MULT -
BASE_CONSTRUCTION_TIME
public static float BASE_CONSTRUCTION_TIME -
CONSTRUCTION_TIME_DP_MULT
public static float CONSTRUCTION_TIME_DP_MULT -
CONSTRUCTION_TIME_OVERSEER_EXTRA
public static float CONSTRUCTION_TIME_OVERSEER_EXTRA -
NUM_LARGE_AS_FRACTION_OF_DESTROYERS
public static float NUM_LARGE_AS_FRACTION_OF_DESTROYERS -
NUM_DESTROYERS_AS_FRACTION_OF_FRIGATES
public static float NUM_DESTROYERS_AS_FRACTION_OF_FRIGATES -
FAST_CONSTRUCTION_FRIGATES_MAX
public static int FAST_CONSTRUCTION_FRIGATES_MAX -
MIN_CR
public static float MIN_CR -
MIN_DP
public static float MIN_DP -
MIN_FRAGMENTS
public static int MIN_FRAGMENTS -
MAX_FRAGMENTS
public static int MAX_FRAGMENTS -
CONSTRUCTABLE
-
inited
protected static boolean inited -
slots
-
readyToFire
protected boolean readyToFire -
fastConstructionLeft
protected int fastConstructionLeft
-
-
Constructor Details
-
ConstructionSwarmSystemScript
public ConstructionSwarmSystemScript()
-
-
Method Details
-
init
public static void init()Can't do this in a static block because the AI script is loaded and references this and would run the static block which in turns triggers some stuff that makes the game crash on startup. -
findSlots
-
apply
public void apply(MutableShipStatsAPI stats, String id, ShipSystemStatsScript.State state, float effectLevel) - Specified by:
apply
in interfaceShipSystemStatsScript
- Overrides:
apply
in classBaseShipSystemScript
-
launchSwarm
-
pickVariant
-
constructionSwarmWillBuild
-
getNumFabricatorsDeployed
-
getNumOverseersDeployed
-
getNumHivesDeployed
-
getCombatWeightDeployed
-
getCombatDeployed
-
getFragmentCost
-
getInfoText
Description copied from interface:ShipSystemStatsScriptAdvanced
If null, uses "READY" and "ACTIVE" as appropritate in the ship info widget.- Specified by:
getInfoText
in interfaceShipSystemStatsScriptAdvanced
- Overrides:
getInfoText
in classBaseShipSystemScript
- Returns:
-
enoughCR
-
enoughDP
-
enoughFragments
-
isUsable
- Specified by:
isUsable
in interfaceShipSystemStatsScriptAdvanced
- Overrides:
isUsable
in classBaseShipSystemScript
-