1package com.fs.starfarer.api.impl.campaign.intel.inspection;
3import java.util.Random;
5import com.fs.starfarer.api.EveryFrameScript;
6import com.fs.starfarer.api.Global;
7import com.fs.starfarer.api.campaign.econ.Industry;
8import com.fs.starfarer.api.campaign.econ.MarketAPI;
9import com.fs.starfarer.api.impl.campaign.DebugFlags;
10import com.fs.starfarer.api.impl.campaign.ids.Commodities;
11import com.fs.starfarer.api.impl.campaign.ids.Factions;
12import com.fs.starfarer.api.impl.campaign.ids.MemFlags;
13import com.fs.starfarer.api.util.IntervalUtil;
14import com.fs.starfarer.api.util.Misc;
15import com.fs.starfarer.api.util.WeightedRandomPicker;
19 public static final String
KEY =
"$core_hegemonyInspectionManager";
51 float days = Misc.getDays(amount);
53 if (
intel.isEnded()) {
76 for (MarketAPI market :
Global.
getSector().getEconomy().getMarketsCopy()) {
77 if (market.isPlayerOwned()) {
78 if (market.isInHyperspace())
continue;
93 protected Random
random =
new Random();
100 MarketAPI target =
null;
102 for (MarketAPI market :
Global.
getSector().getEconomy().getMarketsCopy()) {
103 if (market.isPlayerOwned()) {
104 if (market.isInHyperspace())
continue;
113 if (target !=
null && max > 0) {
114 WeightedRandomPicker<MarketAPI> picker =
new WeightedRandomPicker<MarketAPI>(
random);
115 for (MarketAPI market :
Global.
getSector().getEconomy().getMarketsCopy()) {
116 if (market.getFactionId().equals(Factions.HEGEMONY)) {
117 if (market.getMemoryWithoutUpdate().getBoolean(MemFlags.MARKET_MILITARY)) {
118 picker.add(market, market.getSize());
122 MarketAPI from = picker.pick();
123 if (from ==
null)
return;
127 if (fpOverride !=
null) {
131 if (
intel.isDone()) {
154 String aiCoreId = market.getAdmin().getAICoreId();
155 if (aiCoreId !=
null) {
159 for (Industry ind : market.getIndustries()) {
160 String
id = ind.getAICoreId();
162 if (Commodities.ALPHA_CORE.equals(
id)) {
164 }
else if (Commodities.BETA_CORE.equals(
id)) {
166 }
else if (Commodities.GAMMA_CORE.equals(
id)) {
static SettingsAPI getSettings()
static SectorAPI getSector()
static boolean HEGEMONY_INSPECTION_DEBUG
static final float MAX_THRESHOLD
HegemonyInspectionManager()
HegemonyInspectionIntel intel
void createInspection(Integer fpOverride)
static HegemonyInspectionManager getInstance()
IntervalUtil inspectionChecker
static final float FREQ_MULT
void advance(float amount)
static float getAICoreUseValue(MarketAPI market)
float getFloat(String key)