1package com.fs.starfarer.api.impl.campaign.procgen.themes;
3import java.util.Random;
5import com.fs.starfarer.api.campaign.AICoreOfficerPlugin;
6import com.fs.starfarer.api.campaign.CampaignFleetAPI;
7import com.fs.starfarer.api.campaign.SectorEntityToken;
8import com.fs.starfarer.api.characters.PersonAPI;
9import com.fs.starfarer.api.combat.ShipVariantAPI;
10import com.fs.starfarer.api.fleet.FleetMemberAPI;
11import com.fs.starfarer.api.impl.campaign.BaseGenericPlugin;
12import com.fs.starfarer.api.impl.campaign.DModManager;
13import com.fs.starfarer.api.impl.campaign.fleets.DefaultFleetInflater;
14import com.fs.starfarer.api.impl.campaign.fleets.DefaultFleetInflaterParams;
15import com.fs.starfarer.api.impl.campaign.ids.Commodities;
16import com.fs.starfarer.api.impl.campaign.ids.HullMods;
17import com.fs.starfarer.api.impl.campaign.ids.Skills;
18import com.fs.starfarer.api.impl.campaign.ids.Tags;
19import com.fs.starfarer.api.impl.campaign.rulecmd.salvage.SalvageGenFromSeed.SDMParams;
20import com.fs.starfarer.api.impl.campaign.rulecmd.salvage.SalvageGenFromSeed.SalvageDefenderModificationPlugin;
21import com.fs.starfarer.api.loading.VariantSource;
22import com.fs.starfarer.api.util.Misc;
26 public float getStrength(SDMParams p,
float strength, Random random,
boolean withOverride) {
31 public float getMinSize(SDMParams p,
float minSize, Random random,
boolean withOverride) {
35 public float getMaxSize(SDMParams p,
float maxSize, Random random,
boolean withOverride) {
39 public float getProbability(SDMParams p,
float probability, Random random,
boolean withOverride) {
52 fleet.
setName(
"Remnants of Task Force Safeguard");
62 member.
setId(
"xivtf_" + random.nextLong());
91 curr.getRepairTracker().setCR(curr.getRepairTracker().getMaxCR());
95 v = curr.getVariant().
clone();
97 curr.setVariant(v,
false,
false);
103 dfip.allWeapons =
true;
104 dfip.averageSMods = 3;
108 DModManager.assumeAllShipsAreAutomated =
true;
111 DModManager.assumeAllShipsAreAutomated =
false;
116 curr.getVariant().setVariantDisplayName(
"Automated");
121 if (curr.isCapital()) {
131 member.
setId(
"xivtf_" + random.nextLong());
136 if (shipName !=
null) {
139 if (aiCore !=
null) {
199 if (!(params instanceof SDMParams))
return 0;
200 SDMParams p = (SDMParams) params;
208 public float getQuality(SDMParams p,
float quality, Random random,
boolean withOverride) {
static final String ALPHA_CORE
static final String BETA_CORE
static final String GAMMA_CORE
static final String AUTOMATED
static final String BALLISTIC_MASTERY
static final String COMBAT_ENDURANCE
static final String MISSILE_SPECIALIZATION
static final String FIGHTER_UPLINK
static final String CARRIER_GROUP
static String PK_CACHE_KEY
void reportDefeated(SDMParams p, SectorEntityToken entity, CampaignFleetAPI fleet)
float getProbability(SDMParams p, float probability, Random random, boolean withOverride)
float getStrength(SDMParams p, float strength, Random random, boolean withOverride)
float getMinSize(SDMParams p, float minSize, Random random, boolean withOverride)
float getMaxSize(SDMParams p, float maxSize, Random random, boolean withOverride)
static void addAutomated(CampaignFleetAPI fleet, String variantId, String shipName, String aiCore, Random random)
int getHandlingPriority(Object params)
float getQuality(SDMParams p, float quality, Random random, boolean withOverride)
static void makeAICoreSkillsGoodForLowTech(FleetMemberAPI member, boolean integrate)
void modifyFleet(SDMParams p, CampaignFleetAPI fleet, Random random, boolean withOverride)
static AICoreOfficerPlugin getAICoreOfficerPlugin(String commodityId)
static void addDefeatTrigger(CampaignFleetAPI fleet, String trigger)
PersonAPI createPerson(String aiCoreId, String factionId, Random random)
void setName(String name)
void setCommander(PersonAPI commander)
FleetDataAPI getFleetData()
void setInflater(FleetInflater inflater)
FleetInflater getInflater()
void setNoFactionInName(boolean noFactionInName)
void setShipNameRandom(Random shipNameRandom)
void addFleetMember(FleetMemberAPI member)
List< FleetMemberAPI > getMembersListCopy()
MemoryAPI getMemoryWithoutUpdate()
boolean contains(String key)
void setSkillLevel(String id, float level)
void setSkipRefresh(boolean skipRefresh)
MutableCharacterStatsAPI getStats()
void setSource(VariantSource source)
ShipVariantAPI getVariant()
void setCaptain(PersonAPI commander)
void setShipName(String name)
void setVariant(ShipVariantAPI variant, boolean withRefit, boolean withStatsUpdate)