Starsector API
Loading...
Searching...
No Matches
WormholeScannerPlugin.java
Go to the documentation of this file.
1package com.fs.starfarer.api.campaign.impl.items;
2
3import java.awt.Color;
4
5import com.fs.starfarer.api.Global;
6import com.fs.starfarer.api.campaign.CargoAPI;
7import com.fs.starfarer.api.campaign.CargoAPI.CargoItemType;
8import com.fs.starfarer.api.campaign.CargoTransferHandlerAPI;
9import com.fs.starfarer.api.campaign.SpecialItemData;
10import com.fs.starfarer.api.impl.campaign.ids.Items;
11import com.fs.starfarer.api.ui.TooltipMakerAPI;
12import com.fs.starfarer.api.util.Misc;
13
15
16 public static String PLAYER_CAN_USE_WORMHOLES = "$playerCanUseWormholes"; // in global memory
17
18 @Override
19 public void createTooltip(TooltipMakerAPI tooltip, boolean expanded, CargoTransferHandlerAPI transferHandler, Object stackSource) {
20 float pad = 3f;
21 float opad = 10f;
22 float small = 5f;
23 Color h = Misc.getHighlightColor();
24 Color g = Misc.getGrayColor();
25 Color b = Misc.getButtonTextColor();
27
29 tooltip.addTitle(getName());
30 } else {
31 tooltip.addSpacer(-opad);
32 }
33
34 String design = getDesignType();
35 if (design != null) {
36 Misc.addDesignTypePara(tooltip, design, 10f);
37 }
38
39 if (!spec.getDesc().isEmpty()) {
41 tooltip.setParaSmallInsignia();
42 }
43 tooltip.addPara(spec.getDesc(), Misc.getTextColor(), opad);
44 }
45
46 addCostLabel(tooltip, opad, transferHandler, stackSource);
47
49 tooltip.addPara("Right-click to integrate the " + getName() + " with your fleet", b, opad);
50 }
51 }
52
53 @Override
54 public float getTooltipWidth() {
55 return super.getTooltipWidth();
56 }
57
58 @Override
59 public boolean isTooltipExpandable() {
60 return false;
61 }
62
63 @Override
64 public boolean hasRightClickAction() {
65 return true;
66 }
67
68 @Override
70 return true;
71 }
72
73 @Override
76 Global.getSoundPlayer().playUISound(getSpec().getSoundId(), 1f, 1f);
78 getName() + " integrated - can transit wormholes");
79 }
80
81
82 public static boolean canPlayerUseWormholes() {
84 return true;
85 }
86
88 String id = Items.WORMHOLE_SCANNER;
89 if (cargo.getQuantity(CargoItemType.SPECIAL, new SpecialItemData(id, null)) >= 1) {
90 return true;
91 }
92
93 return false;
94 }
95}
96
97
98
static boolean CODEX_TOOLTIP_MODE
Definition Global.java:15
static SoundPlayerAPI getSoundPlayer()
Definition Global.java:49
static SectorAPI getSector()
Definition Global.java:65
void addCostLabel(TooltipMakerAPI tooltip, float pad, CargoTransferHandlerAPI transferHandler, Object stackSource)
void createTooltip(TooltipMakerAPI tooltip, boolean expanded, CargoTransferHandlerAPI transferHandler, Object stackSource)
static Color getTextColor()
Definition Misc.java:839
static Color getButtonTextColor()
Definition Misc.java:842
static Color getGrayColor()
Definition Misc.java:826
static Color getHighlightColor()
Definition Misc.java:792
static LabelAPI addDesignTypePara(TooltipMakerAPI tooltip, String design, float pad)
Definition Misc.java:4946
static Color getPositiveHighlightColor()
Definition Misc.java:822
SoundAPI playUISound(String id, float pitch, float volume)
float getQuantity(CargoAPI.CargoItemType type, Object data)
void set(String key, Object value)
LabelAPI addPara(String format, float pad, Color hl, String... highlights)
UIComponentAPI addSpacer(float height)