1package com.fs.starfarer.api.impl.campaign.rulecmd.salvage.special;
4import java.util.Random;
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.InteractionDialogAPI;
10import com.fs.starfarer.api.campaign.OptionPanelAPI;
11import com.fs.starfarer.api.campaign.SectorEntityToken;
12import com.fs.starfarer.api.campaign.TextPanelAPI;
13import com.fs.starfarer.api.campaign.VisualPanelAPI;
14import com.fs.starfarer.api.campaign.rules.MemoryAPI;
15import com.fs.starfarer.api.impl.campaign.ids.MemFlags;
16import com.fs.starfarer.api.impl.campaign.rulecmd.BaseCommandPlugin;
17import com.fs.starfarer.api.impl.campaign.rulecmd.salvage.SalvageSpecialInteraction.SalvageSpecialPlugin;
18import com.fs.starfarer.api.util.Misc;
24 public static class ExtraSalvage {
25 public CargoAPI cargo;
26 public ExtraSalvage(CargoAPI cargo) {
31 protected boolean done =
false;
33 protected InteractionDialogAPI
dialog;
37 protected TextPanelAPI
text;
47 extra =
new ExtraSalvage(cargo);
49 extra.cargo.addAll(cargo);
61 extra =
new ExtraSalvage(cargo);
63 extra.cargo.addAll(cargo);
72 if (extra !=
null && extra.cargo !=
null) cargo.addAll(extra.cargo);
73 if (temp !=
null && temp.cargo !=
null) cargo.addAll(temp.cargo);
80 if (extra !=
null && extra.cargo !=
null) cargo.addAll(extra.cargo);
81 if (temp !=
null && temp.cargo !=
null) cargo.addAll(temp.cargo);
122 public void init(InteractionDialogAPI
dialog, Object specialData) {
135 long seed = memory.getLong(MemFlags.SALVAGE_SEED);
139 random = Misc.getRandom(seed, 50);
177 private boolean showAgain =
false;
183 this.showAgain = showAgain;
186 private boolean shouldAbortSalvageAndRemoveEntity;
188 return shouldAbortSalvageAndRemoveEntity;
192 this.shouldAbortSalvageAndRemoveEntity = shouldAbortSalvageAndRemoveEntity;
static FactoryAPI getFactory()
static SectorAPI getSector()
static MemoryAPI getEntityMemory(Map< String, MemoryAPI > memoryMap)
Map< String, MemoryAPI > memoryMap
static CargoAPI getCombinedExtraSalvage(SectorEntityToken entity)
void setDone(boolean done)
void optionSelected(String optionText, Object optionData)
void init(InteractionDialogAPI dialog, Object specialData)
static final String EXTRA_SALVAGE
boolean shouldAbortSalvageAndRemoveEntity()
static final String TEMP_EXTRA_SALVAGE
InteractionDialogAPI dialog
void addText(String format)
static ExtraSalvage getTempExtraSalvage(Map< String, MemoryAPI > memoryMap)
boolean endWithContinue()
void addTempExtraSalvage(CargoAPI cargo)
static ExtraSalvage getExtraSalvage(MemoryAPI memory)
static void addExtraSalvage(SectorEntityToken entity, CargoAPI cargo)
static ExtraSalvage getTempExtraSalvage(SectorEntityToken entity)
static CargoAPI getCombinedExtraSalvage(Map< String, MemoryAPI > memoryMap)
void setShowAgain(boolean showAgain)
boolean shouldShowAgain()
static ExtraSalvage getTempExtraSalvage(MemoryAPI memory)
static void clearExtraSalvage(SectorEntityToken entity)
static void clearExtraSalvage(MemoryAPI memory)
String getString(String format)
void setEndWithContinue(boolean endWithContinue)
CampaignFleetAPI playerFleet
static void addExtraSalvage(CargoAPI cargo, MemoryAPI memory, float expire)
static ExtraSalvage getExtraSalvage(Map< String, MemoryAPI > memoryMap)
static void clearExtraSalvage(Map< String, MemoryAPI > memoryMap)
void setShouldAbortSalvageAndRemoveEntity(boolean shouldAbortSalvageAndRemoveEntity)
static ExtraSalvage getExtraSalvage(SectorEntityToken entity)
CargoAPI createCargo(boolean unlimitedStacks)