1package com.fs.starfarer.api.impl.combat.dweller;
7import org.lwjgl.util.vector.Vector2f;
9import com.fs.starfarer.api.Global;
10import com.fs.starfarer.api.combat.CombatFleetManagerAPI;
11import com.fs.starfarer.api.combat.DeployedFleetMemberAPI;
12import com.fs.starfarer.api.combat.MutableShipStatsAPI;
13import com.fs.starfarer.api.combat.ShipAPI;
14import com.fs.starfarer.api.combat.ShipAPI.HullSize;
15import com.fs.starfarer.api.combat.ShipwideAIFlags.AIFlags;
16import com.fs.starfarer.api.impl.combat.dweller.DwellerCombatPlugin.DCPPlugin;
17import com.fs.starfarer.api.impl.combat.dweller.DwellerCombatPlugin.WobblyPart;
18import com.fs.starfarer.api.impl.combat.dweller.DwellerShroud.DwellerShroudParams;
19import com.fs.starfarer.api.util.IntervalUtil;
20import com.fs.starfarer.api.util.Misc;
29 super.initBeforeShipCreation(hullSize, stats,
id);
42 boolean anythingLargerNearby =
false;
46 if (interval.intervalElapsed()) {
48 if (fleetManager !=
null) {
49 anythingLargerNearby =
false;
51 if (curr.getShip() ==
null)
continue;
52 if (curr.getShip().getHullSize().ordinal() > ship.
getHullSize().ordinal()) {
56 anythingLargerNearby =
true;
75 List<DwellerShipPart> parts = plugin.
getParts();
81 WobblyPart part =
new WobblyPart(
"shrouded_tendril_base", 2f * scale, 1f,
new Vector2f(0, 0), 0f);
92 part =
new WobblyPart(
"clusterB", 1f * scale, 3, 3, 2f,
new Vector2f(30f * scale, 0), 0f);
94 part.additiveBlend =
true;
112 params.maxOffset = 80f;
113 params.initialMembers = (int) (100f / 4f);
114 params.initialMembers = 70;
115 params.baseMembersToMaintain = params.initialMembers;
117 params.flashFrequency /= 2f;
124 params.negativeParticleAreaMult = 1.25f;
128 params.overloadGlowSizeMult *= 0.75f;
static CombatEngineAPI getCombatEngine()
void setFlag(AIFlags flag)
void unsetFlag(AIFlags flag)
void modifyMult(String source, float value)
void setPlugin(DCPPlugin plugin)
static Color STANDARD_PART_GLOW_COLOR
List< DwellerShipPart > getParts()
DwellerCombatPlugin createPlugin(final ShipAPI ship)
void modifyBaselineShroudParams(ShipAPI ship, DwellerShroudParams params)
void initBeforeShipCreation(HullSize hullSize, MutableShipStatsAPI stats, String id)
static float FLUX_COST_MULT
void advance(float amount)
static float getDistance(SectorEntityToken from, SectorEntityToken to)
CombatFleetManagerAPI getFleetManager(FleetSide side)
float getCollisionRadius()
List< DeployedFleetMemberAPI > getDeployedCopyDFM()
StatBonus getBallisticWeaponFluxCostMod()
StatBonus getMissileWeaponFluxCostMod()
StatBonus getEnergyWeaponFluxCostMod()
float getSinceLastDamageTaken()
ShipwideAIFlags getAIFlags()