Starsector API
Loading...
Searching...
No Matches
SubmarketPlugin.java
Go to the documentation of this file.
1package com.fs.starfarer.api.campaign;
2
3import com.fs.starfarer.api.Script;
4import com.fs.starfarer.api.campaign.econ.SubmarketAPI;
5import com.fs.starfarer.api.fleet.FleetMemberAPI;
6import com.fs.starfarer.api.ui.TooltipMakerAPI;
7import com.fs.starfarer.api.util.Highlights;
8
9public interface SubmarketPlugin {
10
11 public static enum PlayerEconomyImpactMode {
12 PLAYER_SELL_ONLY,
13 PLAYER_BUY_ONLY,
14 BOTH,
15 NONE,
16 }
17
18 public static enum TransferAction {
19 PLAYER_BUY,
20 PLAYER_SELL,
21 }
22
23 public static enum OnClickAction {
24 OPEN_SUBMARKET,
25 SHOW_TEXT_DIALOG,
26 }
27
28 public static class DialogOption {
29 private String text;
30 private Script action;
31 public DialogOption(String text, Script action) {
32 this.text = text;
33 this.action = action;
34 }
35 public String getText() {
36 return text;
37 }
38 public Script getAction() {
39 return action;
40 }
41 }
42
43
44 void init(SubmarketAPI submarket);
45 String getName();
46
48
50 void addAllCargo(CargoAPI otherCargo);
51
52 boolean isIllegalOnSubmarket(String commodityId, TransferAction action);
53 boolean isIllegalOnSubmarket(CargoStackAPI stack, TransferAction action);
54 String getIllegalTransferText(CargoStackAPI stack, TransferAction action);
55 Highlights getIllegalTransferTextHighlights(CargoStackAPI stack, TransferAction action);
56
57 boolean isIllegalOnSubmarket(FleetMemberAPI member, TransferAction action);
58 String getIllegalTransferText(FleetMemberAPI member, TransferAction action);
59 Highlights getIllegalTransferTextHighlights(FleetMemberAPI member, TransferAction action);
60
61
62 void advance(float amount);
63
68 float getTariff();
69
70
71 boolean isFreeTransfer();
72 String getSellVerb();
73 String getBuyVerb();
74
76
77 boolean isBlackMarket();
78 boolean isOpenMarket();
80
87
88 //boolean isEnabled();
89 boolean isEnabled(CoreUIAPI ui);
90
91 OnClickAction getOnClickAction(CoreUIAPI ui);
94 DialogOption [] getDialogOptions(CoreUIAPI ui);
95
99
102 void createTooltip(CoreUIAPI ui, TooltipMakerAPI tooltip, boolean expanded);
104
105 boolean isHidden();
109 PlayerEconomyImpactMode getPlayerEconomyImpactMode();
110
111 public String getTariffTextOverride();
112 public String getTariffValueOverride();
113 public String getTotalTextOverride();
114 public String getTotalValueOverride();
115
116 public SubmarketAPI getSubmarket();
118}
119
120
121
122
123
124
String getIllegalTransferText(FleetMemberAPI member, TransferAction action)
void createTooltip(CoreUIAPI ui, TooltipMakerAPI tooltip, boolean expanded)
Highlights getDialogTextHighlights(CoreUIAPI ui)
Highlights getIllegalTransferTextHighlights(FleetMemberAPI member, TransferAction action)
void reportPlayerMarketTransaction(PlayerMarketTransaction transaction)
OnClickAction getOnClickAction(CoreUIAPI ui)
boolean isIllegalOnSubmarket(String commodityId, TransferAction action)
DialogOption[] getDialogOptions(CoreUIAPI ui)
boolean isIllegalOnSubmarket(CargoStackAPI stack, TransferAction action)
Highlights getTooltipAppendixHighlights(CoreUIAPI ui)
PlayerEconomyImpactMode getPlayerEconomyImpactMode()
String getIllegalTransferText(CargoStackAPI stack, TransferAction action)
Highlights getIllegalTransferTextHighlights(CargoStackAPI stack, TransferAction action)
boolean isIllegalOnSubmarket(FleetMemberAPI member, TransferAction action)