1package com.fs.starfarer.api.impl.campaign.rulecmd.missions;
3import java.util.ArrayList;
7import com.fs.starfarer.api.Global;
8import com.fs.starfarer.api.campaign.BaseCampaignEntityPickerListener;
9import com.fs.starfarer.api.campaign.CampaignFleetAPI;
10import com.fs.starfarer.api.campaign.CargoAPI;
11import com.fs.starfarer.api.campaign.CargoAPI.CargoItemType;
12import com.fs.starfarer.api.campaign.InteractionDialogAPI;
13import com.fs.starfarer.api.campaign.LocationAPI;
14import com.fs.starfarer.api.campaign.OptionPanelAPI;
15import com.fs.starfarer.api.campaign.SectorEntityToken;
16import com.fs.starfarer.api.campaign.StarSystemAPI;
17import com.fs.starfarer.api.campaign.TextPanelAPI;
18import com.fs.starfarer.api.campaign.rules.MemoryAPI;
19import com.fs.starfarer.api.impl.campaign.DebugFlags;
20import com.fs.starfarer.api.impl.campaign.ids.Commodities;
21import com.fs.starfarer.api.impl.campaign.ids.Tags;
22import com.fs.starfarer.api.impl.campaign.intel.misc.GateHaulerIntel;
23import com.fs.starfarer.api.impl.campaign.rulecmd.BaseCommandPlugin;
24import com.fs.starfarer.api.ui.TooltipMakerAPI;
25import com.fs.starfarer.api.util.Misc;
26import com.fs.starfarer.api.util.Misc.Token;
51 String command = params.get(0).getString(
memoryMap);
52 if (command ==
null)
return false;
65 if (command.equals(
"addIntel")) {
67 }
else if (command.equals(
"printCost")) {
69 }
else if (command.equals(
"removeActivationCosts")) {
71 }
else if (command.equals(
"canActivate")) {
73 }
else if (command.equals(
"selectDestination")) {
75 }
else if (command.equals(
"activate")) {
77 }
else if (command.equals(
"canDeploy")) {
79 }
else if (command.equals(
"deploy")) {
81 }
else if (command.equals(
"isInCurrentSystem")) {
83 }
else if (command.equals(
"wasDeployedToCurrentSystem")) {
91 if (loc ==
null)
return false;
116 if (intel ==
null)
return false;
122 float minDist = Float.MAX_VALUE;
126 if (dist < minDist) {
147 text.
addPara(
"You do not have the necessary resources to reactivate the Gate Hauler.");
155 for (
int i = 0; i < res.length; i++) {
156 String commodityId = res[i];
157 int quantity = quantities[i];
171 for (
int i = 0; i < res.length; i++) {
172 String commodityId = res[i];
173 int quantity = quantities[i];
174 if (quantity > cargo.
getQuantity(CargoItemType.RESOURCES, commodityId)) {
199 final ArrayList<SectorEntityToken> systems =
new ArrayList<SectorEntityToken>();
202 if (curr.hasTag(
Tags.
THEME_HIDDEN) && !
"Limbo".equals(curr.getBaseName()))
continue;
203 if (curr.isDeepSpace())
continue;
204 if (curr.getHyperspaceAnchor() ==
null)
continue;
206 systems.add(curr.getHyperspaceAnchor());
221 public void cancelledEntityPicking() {
226 if (system !=
null) {
233 if (system !=
null) {
241 String daysStr =
"days";
242 if (days == 1) daysStr =
"day";
249 public float getFuelColorAlphaMult() {
252 public float getFuelRangeMult() {
static SectorAPI getSector()
static boolean OBJECTIVES_DEBUG
static final String RARE_METALS
GateHaulerAction getAction()
int computeTransitDays(StarSystemAPI destination)
void initiateDeployment(SectorEntityToken stableLocation)
void initiateDeparture(StarSystemAPI destination)
static GateHaulerIntel get(SectorEntityToken gateHauler)
SectorEntityToken getGateHauler()
static MemoryAPI getEntityMemory(Map< String, MemoryAPI > memoryMap)
void removeActivationCosts()
SectorEntityToken stableLocation
boolean isInCurrentSystem()
boolean wasDeployedToCurrentSystem()
SectorEntityToken findNearestStableLocation()
InteractionDialogAPI dialog
CampaignFleetAPI playerFleet
Map< String, MemoryAPI > memoryMap
int getTravelDays(SectorEntityToken entity)
static int ACTIVATION_COST
boolean execute(String ruleId, InteractionDialogAPI dialog, List< Token > params, Map< String, MemoryAPI > memoryMap)
static float getDistance(SectorEntityToken from, SectorEntityToken to)
static Color getHighlightColor()
static void showCost(TextPanelAPI text, Color color, Color dark, String[] res, int[] quantities)
static StarSystemAPI getStarSystemForAnchor(SectorEntityToken anchor)
float getQuantity(CargoAPI.CargoItemType type, Object data)
void removeCommodity(String id, float quantity)
TextPanelAPI getTextPanel()
SectorEntityToken getInteractionTarget()
OptionPanelAPI getOptionPanel()
void showCampaignEntityPicker(String title, String selectedText, String okText, FactionAPI factionForUIColors, List< SectorEntityToken > entities, CampaignEntityPickerListener listener)
List< SectorEntityToken > getEntitiesWithTag(String tag)
String getNameWithLowercaseType()
MemoryAPI getMemoryWithoutUpdate()
String getNameWithLowercaseTypeShort()
CampaignFleetAPI getPlayerFleet()
List< StarSystemAPI > getStarSystems()
LocationAPI getCurrentLocation()
FactionAPI getPlayerFaction()
void setPaused(boolean paused)
IntelManagerAPI getIntelManager()
LocationAPI getContainingLocation()
LabelAPI addPara(String text)
void addIntel(IntelInfoPlugin plugin)
boolean getBoolean(String key)