1package com.fs.starfarer.api.impl.campaign.rulecmd.salvage;
6import com.fs.starfarer.api.Global;
7import com.fs.starfarer.api.campaign.CampaignFleetAPI;
8import com.fs.starfarer.api.campaign.CargoAPI;
9import com.fs.starfarer.api.campaign.CargoPickerListener;
10import com.fs.starfarer.api.campaign.CargoStackAPI;
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.SectorEntityToken;
15import com.fs.starfarer.api.campaign.TextPanelAPI;
16import com.fs.starfarer.api.campaign.econ.CommoditySpecAPI;
17import com.fs.starfarer.api.campaign.rules.MemoryAPI;
18import com.fs.starfarer.api.characters.PersonAPI;
19import com.fs.starfarer.api.impl.campaign.CoreReputationPlugin.CustomRepImpact;
20import com.fs.starfarer.api.impl.campaign.CoreReputationPlugin.RepActionEnvelope;
21import com.fs.starfarer.api.impl.campaign.CoreReputationPlugin.RepActions;
22import com.fs.starfarer.api.impl.campaign.ids.Commodities;
23import com.fs.starfarer.api.impl.campaign.ids.Ranks;
24import com.fs.starfarer.api.impl.campaign.ids.Strings;
25import com.fs.starfarer.api.impl.campaign.rulecmd.AddRemoveCommodity;
26import com.fs.starfarer.api.impl.campaign.rulecmd.BaseCommandPlugin;
27import com.fs.starfarer.api.impl.campaign.rulecmd.FireBest;
28import com.fs.starfarer.api.ui.TooltipMakerAPI;
29import com.fs.starfarer.api.util.Misc;
30import com.fs.starfarer.api.util.Misc.Token;
60 String command = params.get(0).getString(
memoryMap);
61 if (command ==
null)
return false;
82 if (command.equals(
"selectCores")) {
84 }
else if (command.equals(
"playerHasCores")) {
86 }
else if (command.equals(
"personCanAcceptCores")) {
114 final float width = 310f;
116 public void pickedCargo(
CargoAPI cargo) {
118 cancelledCargoSelection();
125 if (stack.isCommodityStack()) {
126 int num = (int) stack.getSize();
129 String key =
"$turnedIn_" + stack.getCommodityId();
134 String key2 =
"$turnedIn_allCores";
148 if (repChange >= 1f) {
149 CustomRepImpact impact =
new CustomRepImpact();
150 impact.delta = repChange * 0.01f;
152 new RepActionEnvelope(RepActions.CUSTOM, impact,
156 impact.delta *= 0.25f;
157 if (impact.delta >= 0.01f) {
159 new RepActionEnvelope(RepActions.CUSTOM, impact,
167 public void cancelledCargoSelection() {
191 panel.
addPara(
"Compared to dealing with other factions, turning AI cores in to " +
193 "will result in:", opad);
200 panel.
addPara(
"If you turn in the selected AI cores, you will receive a %s bounty " +
204 "" + (
int) repChange);
static FactoryAPI getFactory()
static SectorAPI getSector()
static final String ALPHA_CORE
static final String BETA_CORE
static final String GAMMA_CORE
static final String AI_CORES
static final String OMEGA_CORE
static String POST_STATION_COMMANDER
static String POST_ADMINISTRATOR
static String POST_BASE_COMMANDER
static String POST_OUTPOST_COMMANDER
static void addCommodityLossText(String commodityId, int quantity, TextPanelAPI text)
static void addCreditsGainText(int credits, TextPanelAPI text)
static MemoryAPI getEntityMemory(Map< String, MemoryAPI > memoryMap)
static boolean fire(String ruleId, InteractionDialogAPI dialog, Map< String, MemoryAPI > memoryMap, String params)
float computeCoreCreditValue(CargoAPI cargo)
boolean execute(String ruleId, InteractionDialogAPI dialog, List< Token > params, Map< String, MemoryAPI > memoryMap)
boolean personCanAcceptCores()
CampaignFleetAPI playerFleet
static float getBaseRepValue(String coreType)
float computeCoreReputationValue(CargoAPI cargo)
Map< String, MemoryAPI > memoryMap
InteractionDialogAPI dialog
static String getWithDGS(float num)
static String ucFirst(String str)
static Color getHighlightColor()
CargoAPI createCargo(boolean unlimitedStacks)
void addFromStack(CargoStackAPI stack)
boolean removeItems(CargoAPI.CargoItemType itemType, Object data, float quantity)
MutableValue getCredits()
List< CargoStackAPI > getStacksCopy()
float getCustomFloat(String key)
MemoryAPI getMemoryWithoutUpdate()
String getDisplayNameWithArticle()
boolean getCustomBoolean(String key)
String getDisplayNameLongWithArticle()
TextPanelAPI getTextPanel()
SectorEntityToken getInteractionTarget()
void showCargoPickerDialog(String title, String okText, String cancelText, boolean small, float textPanelWidth, CargoAPI cargo, CargoPickerListener listener)
OptionPanelAPI getOptionPanel()
CampaignFleetAPI getPlayerFleet()
ReputationAdjustmentResult adjustPlayerReputation(Object action, String factionId)
FactionAPI getPlayerFaction()
PersonAPI getActivePerson()
void set(String key, Object value)