1package com.fs.starfarer.api.campaign.econ;
4import java.util.Collection;
5import java.util.LinkedHashSet;
7import java.util.Random;
10import org.lwjgl.util.vector.Vector2f;
12import com.fs.starfarer.api.campaign.CampaignFleetAPI;
13import com.fs.starfarer.api.campaign.CommDirectoryAPI;
14import com.fs.starfarer.api.campaign.FactionAPI;
15import com.fs.starfarer.api.campaign.FactionAPI.ShipPickParams;
16import com.fs.starfarer.api.campaign.LocationAPI;
17import com.fs.starfarer.api.campaign.PlanetAPI;
18import com.fs.starfarer.api.campaign.SectorEntityToken;
19import com.fs.starfarer.api.campaign.StarSystemAPI;
20import com.fs.starfarer.api.campaign.rules.HasMemory;
21import com.fs.starfarer.api.campaign.rules.MemoryAPI;
22import com.fs.starfarer.api.characters.PersonAPI;
23import com.fs.starfarer.api.combat.MutableStat;
24import com.fs.starfarer.api.combat.MutableStatWithTempMods;
25import com.fs.starfarer.api.combat.StatBonus;
26import com.fs.starfarer.api.fleet.MutableMarketStatsAPI;
27import com.fs.starfarer.api.fleet.ShipFilter;
28import com.fs.starfarer.api.fleet.ShipRolePick;
29import com.fs.starfarer.api.impl.campaign.econ.impl.ConstructionQueue;
30import com.fs.starfarer.api.impl.campaign.population.PopulationComposition;
34 public static enum MarketInteractionMode {
39 public static enum SurveyLevel {
124 float getSupplyPrice(String commodityId,
double quantity,
boolean isPlayerPrice);
133 float getDemandPrice(String commodityId,
double quantity,
boolean isPlayerPrice);
233 Random random, ShipFilter filter);
234 List<ShipRolePick>
pickShipsForRole(String role, String factionId, ShipPickParams params, Random random, ShipFilter filter);
PopulationComposition getPopulation()
void setSurveyLevel(SurveyLevel surveyLevel)
void addSubmarket(SubmarketAPI submarket)
void addTransientImmigrationModifier(MarketImmigrationModifier mod)
void unsuppressCondition(String id)
void removeImmigrationModifier(MarketImmigrationModifier mod)
List< CommodityOnMarketAPI > getCommoditiesWithTags(String ... tags)
LinkedHashSet< MarketImmigrationModifier > getTransientImmigrationModifiers()
LocationAPI getContainingLocation()
void suppressCondition(String id)
SurveyLevel getSurveyLevel()
float getShipQualityFactor()
boolean isInvalidMissionTarget()
void setUseStockpilesForShortages(boolean useStockpilesForShortages)
float pickShipAndAddToFleet(String role, ShipPickParams params, CampaignFleetAPI fleet)
List< ShipRolePick > pickShipsForRole(String role, String factionId, ShipPickParams params, Random random, ShipFilter filter)
void setHasSpaceport(boolean hasSpaceport)
void setPlayerOwned(boolean playerOwned)
float getDemandPriceAssumingExistingTransaction(String commodityId, double quantity, double existingTransactionUtility, boolean isPlayerPrice)
List< ShipRolePick > pickShipsForRole(String role, ShipPickParams params, Random random, ShipFilter filter)
Industry instantiateIndustry(String id)
float pickShipAndAddToFleet(String role, String factionId, ShipPickParams params, CampaignFleetAPI fleet)
boolean wasIncomingSetBefore()
float getStabilityValue()
void setIncoming(PopulationComposition incoming)
boolean hasSpecificCondition(String token)
float getImmigrationIncentivesCost()
boolean isPlanetConditionMarketOnly()
void setEconGroup(String econGroup)
String addCondition(String id, Object param)
void setDaysInExistence(float daysInExistence)
void setFactionId(String factionId)
void addImmigrationModifier(MarketImmigrationModifier mod)
List< MarketDemandAPI > getDemandWithTag(String tag)
boolean isImmigrationIncentivesOn()
void setPlanetConditionMarketOnly(boolean isPlanetConditionMarketOnly)
PopulationComposition getIncoming()
void addSubmarket(String specId)
void setImmigrationIncentivesOn(Boolean incentivesOn)
float getSupplyPriceAssumingExistingTransaction(String commodityId, double quantity, double existingTransactionUtility, boolean isPlayerPrice)
float getSupplyPrice(String commodityId, double quantity, boolean isPlayerPrice)
boolean isImmigrationClosed()
void setHidden(Boolean hidden)
float getExportIncome(boolean withOverhead)
CommodityOnMarketAPI getCommodityData(String commodityId)
void setPrimaryEntity(SectorEntityToken primaryEntity)
void removeSubmarket(String specId)
float getIndustryIncome()
Set< SectorEntityToken > getConnectedEntities()
MutableMarketStatsAPI getStats()
boolean isUseStockpilesForShortages()
void setImmigrationClosed(boolean closed)
MemoryAPI getMemoryWithoutUpdate()
List< CommodityOnMarketAPI > getCommoditiesCopy()
SubmarketAPI getSubmarket(String specId)
void setFreePort(boolean freePort)
List< CommodityOnMarketAPI > getCommoditiesWithTag(String tag)
void removeSpecificCondition(String token)
void setAdmin(PersonAPI admin)
boolean isIllegal(String commodityId)
MarketConditionAPI getCondition(String id)
void setSuppressedConditions(LinkedHashSet< String > suppressedConditions)
void addPerson(PersonAPI person)
MutableStatWithTempMods getStability()
StatBonus getSupplyPriceMod()
LinkedHashSet< String > getSuppressedConditions()
void setName(String name)
StatBonus getAccessibilityMod()
CommDirectoryAPI getCommDirectory()
Color getTextColorForFactionOrPlanet()
Collection< String > getTags()
boolean isConditionSuppressed(String id)
void advance(float amount)
boolean hasFunctionalIndustry(String id)
void addCondition(MarketConditionAPI mc)
void reapplyCondition(String token)
float getIncentiveCredits()
float getDemandPrice(String commodityId, double quantity, boolean isPlayerPrice)
MutableStat getIncomeMult()
MarketConditionAPI getSpecificCondition(String token)
float getIndustryUpkeep()
void removeIndustry(String id, MarketInteractionMode mode, boolean forUpgrade)
void addIndustry(String id, List< String > params)
String addCondition(String id)
MarketDemandDataAPI getDemandData()
boolean hasIndustry(String id)
void setPopulation(PopulationComposition population)
boolean hasTag(String tag)
List< SubmarketAPI > getSubmarketsCopy()
Color getDarkColorForFactionOrPlanet()
List< Industry > getIndustries()
void removeTag(String tag)
Vector2f getLocationInHyperspace()
LinkedHashSet< MarketImmigrationModifier > getImmigrationModifiers()
List< PersonAPI > getPeopleCopy()
StarSystemAPI getStarSystem()
float getShortageCounteringCost()
boolean hasSubmarket(String specId)
void setIncentiveCredits(float incentiveCredits)
MarketConditionAPI getFirstCondition(String id)
Industry getIndustry(String id)
PlanetAPI getPlanetEntity()
boolean hasCondition(String id)
void removePerson(PersonAPI person)
float getDaysInExistence()
boolean isForceNoConvertOnSave()
void setRetainSuppressedConditionsSetWhenEmpty(Boolean retainSuppressedConditionsSetWhenEmpty)
void setHasWaystation(boolean hasWaystation)
void removeTransientImmigrationModifier(MarketImmigrationModifier mod)
List< MarketConditionAPI > getConditions()
ConstructionQueue getConstructionQueue()
StatBonus getDemandPriceMod()
boolean isIllegal(CommodityOnMarketAPI com)
void removeCondition(String id)
void setForceNoConvertOnSave(boolean forceNoConvertOnSave)
List< MarketImmigrationModifier > getAllImmigrationModifiers()
SectorEntityToken getPrimaryEntity()
void addIndustry(String id)
MarketDemandAPI getDemand(String demandClass)
MutableStat getUpkeepMult()
List< CommodityOnMarketAPI > getAllCommodities()
void setInvalidMissionTarget(Boolean invalidMissionTarget)