4package com.fs.starfarer.api.impl.campaign.econ.impl;
6import java.util.ArrayList;
7import java.util.LinkedHashSet;
13import com.fs.starfarer.api.Global;
14import com.fs.starfarer.api.campaign.SectorEntityToken;
15import com.fs.starfarer.api.campaign.SpecialItemData;
16import com.fs.starfarer.api.campaign.SpecialItemSpecAPI;
17import com.fs.starfarer.api.campaign.econ.Industry;
18import com.fs.starfarer.api.campaign.econ.InstallableIndustryItemPlugin.InstallableItemDescriptionMode;
19import com.fs.starfarer.api.campaign.econ.MarketAPI;
20import com.fs.starfarer.api.campaign.econ.MarketAPI.SurveyLevel;
21import com.fs.starfarer.api.impl.campaign.ids.Conditions;
22import com.fs.starfarer.api.ui.TooltipMakerAPI;
23import com.fs.starfarer.api.util.Misc;
24import com.fs.starfarer.api.util.Pair;
36 if (mode == InstallableItemDescriptionMode.INDUSTRY_MENU_TOOLTIP ||
37 mode == InstallableItemDescriptionMode.CARGO_TOOLTIP) {
46 if (mode == InstallableItemDescriptionMode.MANAGE_ITEM_DIALOG_LIST ||
47 mode == InstallableItemDescriptionMode.INDUSTRY_TOOLTIP) {
49 }
else if (mode == InstallableItemDescriptionMode.MANAGE_ITEM_DIALOG_INSTALLED ||
50 mode == InstallableItemDescriptionMode.INDUSTRY_MENU_TOOLTIP) {
51 pre = name +
" currently installed. ";
53 if (mode == InstallableItemDescriptionMode.INDUSTRY_MENU_TOOLTIP ||
54 mode == InstallableItemDescriptionMode.CARGO_TOOLTIP) {
71 return new String [0];
75 List<String> reqs =
new ArrayList<String>();
86 List<String> unmet =
new ArrayList<String>();
87 if (industry ==
null)
return unmet;
91 boolean prelim = market.
getSurveyLevel().ordinal() >= SurveyLevel.PRELIMINARY.ordinal();
92 boolean full = market.
getSurveyLevel().ordinal() >= SurveyLevel.FULL.ordinal();
155 float dist = Float.MAX_VALUE;
156 if (p !=
null) dist = p.
two;
167 Set<String> cond =
new LinkedHashSet<>();
205 InstallableItemDescriptionMode mode, String ... reqs) {
206 if (canInstall)
return;
210 for (String curr : reqs) {
216 if (mode != InstallableItemDescriptionMode.CARGO_TOOLTIP) {
221 if (!list.isEmpty()) list = list.substring(0, list.length() - 2);
222 if (!list.isEmpty()) {
223 text.
addPara(
"Requires: " + list, opad,
static SettingsAPI getSettings()
List< String > getUnmetRequirements(Industry industry)
void addRequirements(TooltipMakerAPI text, boolean canInstall, InstallableItemDescriptionMode mode, String ... reqs)
void addItemDescriptionImpl(Industry industry, TooltipMakerAPI text, SpecialItemData data, InstallableItemDescriptionMode mode, String pre, float pad)
List< String > getRequirements(Industry industry)
void addItemDescription(Industry industry, TooltipMakerAPI text, SpecialItemData data, InstallableItemDescriptionMode mode)
BaseInstallableItemEffect(String id)
String getItemInstalledText(TooltipMakerAPI text, SpecialItemData data, InstallableItemDescriptionMode mode)
List< String > getUnmetRequirements(Industry industry, boolean checkSurveyed)
float getItemDescPad(InstallableItemDescriptionMode mode)
String[] getSimpleReqs(Industry industry)
Set< String > getConditionsRelatedToRequirements(Industry industry)
static String NOT_EXTREME_WEATHER
static String NOT_EXTREME_TECTONIC_ACTIVITY
static String NO_ATMOSPHERE
static String NO_VOLATILES_DEPOSITS
static String HOT_OR_EXTREME_HEAT
static int CORONAL_TAP_LIGHT_YEARS
static String CORONAL_TAP_RANGE
static String COLD_OR_EXTREME_COLD
static String NOT_HABITABLE
static String NOT_A_GAS_GIANT
static String NO_TRANSPLUTONIC_ORE_DEPOSITS
static Pair< SectorEntityToken, Float > getNearestCoronalTap(Vector2f locInHyper, boolean usable)
static final String VOLATILES_TRACE
static final String NO_ATMOSPHERE
static final String EXTREME_WEATHER
static final String RARE_ORE_SPARSE
static final String RARE_ORE_ULTRARICH
static final String VOLATILES_ABUNDANT
static final String RARE_ORE_ABUNDANT
static final String VERY_COLD
static final String VOLATILES_DIFFUSE
static final String EXTREME_TECTONIC_ACTIVITY
static final String VOLATILES_PLENTIFUL
static final String VERY_HOT
static final String RARE_ORE_RICH
static final String RARE_ORE_MODERATE
static final String HABITABLE
static String ucFirst(String str)
static Color getNegativeHighlightColor()
static Color getBasePlayerColor()
static Color getGrayColor()
SpecialItemSpecAPI getSpecialItemSpec(String itemId)
SurveyLevel getSurveyLevel()
Vector2f getLocationInHyperspace()
PlanetAPI getPlanetEntity()
boolean hasCondition(String id)