Starsector API
Loading...
Searching...
No Matches
ShowRemainingCapacity.java
Go to the documentation of this file.
1
package
com.fs.starfarer.api.impl.campaign.rulecmd;
2
3
import
java.util.List;
4
import
java.util.Map;
5
6
import
com.fs.starfarer.api.Global;
7
import
com.fs.starfarer.api.campaign.CargoAPI;
8
import
com.fs.starfarer.api.campaign.InteractionDialogAPI;
9
import
com.fs.starfarer.api.campaign.econ.CommoditySpecAPI;
10
import
com.fs.starfarer.api.campaign.rules.MemoryAPI;
11
import
com.fs.starfarer.api.impl.campaign.ids.Commodities;
12
import
com.fs.starfarer.api.util.Misc;
13
import
com.fs.starfarer.api.util.Misc.Token;
14
18
public
class
ShowRemainingCapacity
extends
BaseCommandPlugin
{
19
20
public
boolean
execute
(String ruleId,
InteractionDialogAPI
dialog, List<Token> params, Map<String, MemoryAPI> memoryMap) {
21
if
(dialog ==
null
)
return
false
;
22
23
String cid =
Commodities
.
SUPPLIES
;
// show cargo capacity by default
24
if
(params.size() >= 1) {
25
cid = params.get(0).getString(memoryMap);
26
}
27
28
CommoditySpecAPI
spec =
Global
.
getSettings
().
getCommoditySpec
(cid);
29
CargoAPI
cargo =
Global
.
getSector
().
getPlayerFleet
().
getCargo
();
30
String str =
""
;
31
int
cap = 0;
32
if
(spec.
isFuel
()) {
33
cap = cargo.
getFreeFuelSpace
();
34
if
(cap > 1) {
35
str +=
"Your fleet's fuel tanks can hold an additional %s units of fuel."
;
36
}
else
{
37
str +=
"Your fleet's fuel tanks are currently full."
;
38
}
39
}
else
if
(spec.
isPersonnel
()) {
40
cap = cargo.
getFreeCrewSpace
();
41
if
(cap > 1) {
42
str +=
"Your fleet's crew quarters can accommodate an additional %s personnel."
;
43
}
else
{
44
str +=
"Your fleet's crew berths are currently full."
;
45
}
46
}
else
{
47
cap = (int) cargo.
getSpaceLeft
();
48
if
(cap > 1) {
49
str +=
"Your fleet's holds can accommodate an additional %s units of cargo."
;
50
}
else
{
51
str +=
"Your fleet's cargo holds are currently full."
;
52
}
53
}
54
dialog.
getTextPanel
().
addPara
(str,
Misc
.
getHighlightColor
(),
Misc
.
getWithDGS
(cap));
55
56
return
true
;
57
}
58
}
59
60
com.fs.starfarer.api.Global
Definition
Global.java:13
com.fs.starfarer.api.Global.getSettings
static SettingsAPI getSettings()
Definition
Global.java:57
com.fs.starfarer.api.Global.getSector
static SectorAPI getSector()
Definition
Global.java:65
com.fs.starfarer.api.impl.campaign.ids.Commodities
Definition
Commodities.java:3
com.fs.starfarer.api.impl.campaign.ids.Commodities.SUPPLIES
static final String SUPPLIES
Definition
Commodities.java:4
com.fs.starfarer.api.impl.campaign.rulecmd.BaseCommandPlugin
Definition
BaseCommandPlugin.java:11
com.fs.starfarer.api.impl.campaign.rulecmd.ShowRemainingCapacity
Definition
ShowRemainingCapacity.java:18
com.fs.starfarer.api.impl.campaign.rulecmd.ShowRemainingCapacity.execute
boolean execute(String ruleId, InteractionDialogAPI dialog, List< Token > params, Map< String, MemoryAPI > memoryMap)
Definition
ShowRemainingCapacity.java:20
com.fs.starfarer.api.util.Misc
Definition
Misc.java:188
com.fs.starfarer.api.util.Misc.getWithDGS
static String getWithDGS(float num)
Definition
Misc.java:1381
com.fs.starfarer.api.util.Misc.getHighlightColor
static Color getHighlightColor()
Definition
Misc.java:792
com.fs.starfarer.api.SettingsAPI.getCommoditySpec
CommoditySpecAPI getCommoditySpec(String commodityId)
com.fs.starfarer.api.campaign.CargoAPI
Definition
CargoAPI.java:13
com.fs.starfarer.api.campaign.CargoAPI.getSpaceLeft
float getSpaceLeft()
com.fs.starfarer.api.campaign.CargoAPI.getFreeCrewSpace
int getFreeCrewSpace()
com.fs.starfarer.api.campaign.CargoAPI.getFreeFuelSpace
int getFreeFuelSpace()
com.fs.starfarer.api.campaign.InteractionDialogAPI
Definition
InteractionDialogAPI.java:14
com.fs.starfarer.api.campaign.InteractionDialogAPI.getTextPanel
TextPanelAPI getTextPanel()
com.fs.starfarer.api.campaign.SectorAPI.getPlayerFleet
CampaignFleetAPI getPlayerFleet()
com.fs.starfarer.api.campaign.SectorEntityToken.getCargo
CargoAPI getCargo()
com.fs.starfarer.api.campaign.TextPanelAPI.addPara
LabelAPI addPara(String text)
com.fs.starfarer.api.campaign.econ.CommoditySpecAPI
Definition
CommoditySpecAPI.java:8
com.fs.starfarer.api.campaign.econ.CommoditySpecAPI.isFuel
boolean isFuel()
com.fs.starfarer.api.campaign.econ.CommoditySpecAPI.isPersonnel
boolean isPersonnel()
src
com
fs
starfarer
api
impl
campaign
rulecmd
ShowRemainingCapacity.java
Generated by
1.12.0