Starsector API
Loading...
Searching...
No Matches
OutpostStats.java
Go to the documentation of this file.
1package com.fs.starfarer.api.util;
2
3import com.fs.starfarer.api.Global;
4import com.fs.starfarer.api.campaign.econ.MarketAPI;
5import com.fs.starfarer.api.characters.MutableCharacterStatsAPI;
6import com.fs.starfarer.api.impl.campaign.econ.impl.PopulationAndInfrastructure;
7
8public class OutpostStats {
9 public int outposts;
10 public int adminOutposts;
11 public int admins;
12 public int aiCoreOutposts;
13 public int maxOutposts;
14 public int maxAdmin;
15 public int penalty;
16
17 public static OutpostStats get() {
18 OutpostStats result = new OutpostStats();
19
20 MutableCharacterStatsAPI stats = Global.getSector().getCharacterData().getPerson().getStats();
21
22 for (MarketAPI market : Global.getSector().getEconomy().getMarketsCopy()) {
23 if (!market.isPlayerOwned()) continue;
24
25 if (market.getAdmin().isPlayer() || market.getAdmin().isDefault()) {
26 result.outposts++;
27 } else if (!market.getAdmin().isAICore()) {
28 result.adminOutposts++;
29 }
30 if (market.getAdmin().isAICore()) {
31 result.aiCoreOutposts++;
32 }
33 }
34
35 result.maxOutposts = stats.getOutpostNumber().getModifiedInt();
36 result.maxAdmin = stats.getAdminNumber().getModifiedInt();
37
38 result.penalty = PopulationAndInfrastructure.getMismanagementPenalty();
39 result.admins = Global.getSector().getCharacterData().getAdmins().size();
40
41 return result;
42 }
43}
44
static SectorAPI getSector()
Definition Global.java:59