1package com.fs.starfarer.api.impl.campaign.rulecmd.salvage;
6import org.lwjgl.util.vector.Vector2f;
8import com.fs.starfarer.api.Global;
9import com.fs.starfarer.api.campaign.CampaignFleetAPI;
10import com.fs.starfarer.api.campaign.CargoAPI;
11import com.fs.starfarer.api.campaign.FactionAPI;
12import com.fs.starfarer.api.campaign.InteractionDialogAPI;
13import com.fs.starfarer.api.campaign.OptionPanelAPI;
14import com.fs.starfarer.api.campaign.RepLevel;
15import com.fs.starfarer.api.campaign.SectorEntityToken;
16import com.fs.starfarer.api.campaign.SectorEntityToken.VisibilityLevel;
17import com.fs.starfarer.api.campaign.TextPanelAPI;
18import com.fs.starfarer.api.campaign.econ.CommoditySpecAPI;
19import com.fs.starfarer.api.campaign.rules.MemoryAPI;
20import com.fs.starfarer.api.characters.AbilityPlugin;
21import com.fs.starfarer.api.characters.PersonAPI;
22import com.fs.starfarer.api.fleet.FleetMemberAPI;
23import com.fs.starfarer.api.impl.campaign.abilities.DistressCallAbility;
24import com.fs.starfarer.api.impl.campaign.ids.Abilities;
25import com.fs.starfarer.api.impl.campaign.ids.Commodities;
26import com.fs.starfarer.api.impl.campaign.ids.Entities;
27import com.fs.starfarer.api.impl.campaign.ids.Strings;
28import com.fs.starfarer.api.impl.campaign.rulecmd.AddRemoveCommodity;
29import com.fs.starfarer.api.impl.campaign.rulecmd.BaseCommandPlugin;
30import com.fs.starfarer.api.util.Misc;
31import com.fs.starfarer.api.util.Misc.Token;
62 String command = params.get(0).getString(
memoryMap);
63 if (command ==
null)
return false;
82 if (command.equals(
"playerNeedsHelp")) {
84 }
else if (command.equals(
"didNotNeedHelp")) {
87 else if (command.equals(
"acceptHelp")) {
90 else if (command.equals(
"neverMind")) {
93 else if (command.equals(
"isCargoPodsScam")) {
96 else if (command.equals(
"cargoPodsScam")) {
99 else if (command.equals(
"unrespond")) {
102 else if (command.equals(
"init")) {
105 else if (command.equals(
"pay")) {
108 else if (command.equals(
"thank")) {
123 boolean adequate = fuel <= maxFuel * 1.5f && supplies <= maxSupplies * 1.5f;
138 if (fuel > maxFuel) fuel = maxFuel;
139 if (supplies > maxSupplies) supplies = maxSupplies;
145 distressPayment = (float) Math.ceil(distressPayment / 10000f) * 10000f;
146 distressPayment *= 2f;
148 return (
int) distressPayment;
153 if (plugin !=
null) {
176 if (level == VisibilityLevel.COMPOSITION_DETAILS ||
177 level == VisibilityLevel.COMPOSITION_AND_FACTION_DETAILS) {
195 if (fuel < 10) fuel = 10;
197 if (fuel < 0) fuel = 0;
206 supplies += member.getStats().getSuppliesPerMonth().getModifiedValue();
210 if (supplies < 5) supplies = 5;
212 if (supplies < 0) supplies = 0;
214 return (
int) supplies;
269 if (fuel > maxFuel) fuel = maxFuel;
270 if (supplies > maxSupplies) supplies = maxSupplies;
static SettingsAPI getSettings()
static SectorAPI getSector()
static final String DISTRESS_CALL
static final String SUPPLIES
static final String CARGO_PODS
static void addCommodityGainText(String commodityId, int quantity, TextPanelAPI text)
static void addCreditsLossText(int credits, TextPanelAPI text)
static MemoryAPI getEntityMemory(Map< String, MemoryAPI > memoryMap)
CampaignFleetAPI playerFleet
InteractionDialogAPI dialog
Map< String, MemoryAPI > memoryMap
boolean playerNeedsHelp()
boolean execute(String ruleId, InteractionDialogAPI dialog, List< Token > params, Map< String, MemoryAPI > memoryMap)
static int getNeededFuel(CampaignFleetAPI playerFleet)
boolean isCargoPodsScam()
static String getWithDGS(float num)
static float getDistanceLY(SectorEntityToken from, SectorEntityToken to)
static void giveStandardReturnToSourceAssignments(CampaignFleetAPI fleet)
static void adjustRep(float repChangeFaction, RepLevel limit, String factionId, float repChangePerson, RepLevel personLimit, PersonAPI person, TextPanelAPI text)
static void makeUnimportant(SectorEntityToken entity, String reason)
static void clearTarget(CampaignFleetAPI fleet, boolean forgetTransponder)
CommoditySpecAPI getCommoditySpec(String commodityId)
LocationAPI getContainingLocation()
FleetDataAPI getFleetData()
FleetLogisticsAPI getLogistics()
MutableValue getCredits()
void addSupplies(float quantity)
void addFuel(float quantity)
List< FleetMemberAPI > getMembersListCopy()
TextPanelAPI getTextPanel()
SectorEntityToken getInteractionTarget()
OptionPanelAPI getOptionPanel()
List< SectorEntityToken > getAllEntities()
CampaignFleetAPI getPlayerFleet()
FactionAPI getPlayerFaction()
String getCustomEntityType()
VisibilityLevel getVisibilityLevelTo(SectorEntityToken other)
PersonAPI getActivePerson()
Vector2f getLocationInHyperspace()
MemoryAPI getMemoryWithoutUpdate()
AbilityPlugin getAbility(String id)
float getFloat(String key)
void set(String key, Object value)
MemoryAPI getMemoryWithoutUpdate()
float getFuelCostPerLightYear()