Starsector API
Loading...
Searching...
No Matches
SpacerObligation.java
Go to the documentation of this file.
1package com.fs.starfarer.api.impl.campaign.tutorial;
2
3import com.fs.starfarer.api.Global;
4import com.fs.starfarer.api.campaign.econ.MonthlyReport;
5import com.fs.starfarer.api.campaign.econ.MonthlyReport.FDNode;
6import com.fs.starfarer.api.campaign.listeners.EconomyTickListener;
7import com.fs.starfarer.api.impl.campaign.shared.SharedData;
8import com.fs.starfarer.api.ui.TooltipMakerAPI;
9import com.fs.starfarer.api.ui.TooltipMakerAPI.TooltipCreator;
10import com.fs.starfarer.api.util.Misc;
11
12public class SpacerObligation implements EconomyTickListener, TooltipCreator {
13
14 public static int DEBT_BASE = 1000;
15 public static int DEBT_PER_LEVEL = 3000;
16
17 protected long startTime = 0;
19 Global.getSector().getListenerManager().addListener(this);
20 startTime = Global.getSector().getClock().getTimestamp();
21 }
22
23 public void reportEconomyTick(int iterIndex) {
24 int lastIterInMonth = (int) Global.getSettings().getFloat("economyIterPerMonth") - 1;
25 if (iterIndex != lastIterInMonth) return;
26
27 MonthlyReport report = SharedData.getData().getCurrentReport();
28
29
30 int debt = getDebt();
31 FDNode fleetNode = report.getNode(MonthlyReport.FLEET);
32
33 FDNode stipendNode = report.getNode(fleetNode, "SpacerObligation");
34 stipendNode.upkeep = debt;
35 stipendNode.name = "An obligation from your past";
36 stipendNode.icon = Global.getSettings().getSpriteName("income_report", "generic_expense");
37 stipendNode.tooltipCreator = this;
38 }
39
40 protected int getDebt() {
41 return DEBT_BASE + (Global.getSector().getPlayerStats().getLevel() - 1) * DEBT_PER_LEVEL;
42 }
43
44 public void reportEconomyMonthEnd() {
45 }
46
47 public void createTooltip(TooltipMakerAPI tooltip, boolean expanded, Object tooltipParam) {
48 tooltip.addPara("You never talk about it.",
49 0f, Misc.getHighlightColor(), Misc.getDGSCredits(getDebt()));
50 }
51
52 public float getTooltipWidth(Object tooltipParam) {
53 return 450;
54 }
55
56 public boolean isTooltipExpandable(Object tooltipParam) {
57 return false;
58 }
59}
60
61
62
static SettingsAPI getSettings()
Definition Global.java:51
static SectorAPI getSector()
Definition Global.java:59
void createTooltip(TooltipMakerAPI tooltip, boolean expanded, Object tooltipParam)
String getSpriteName(String category, String id)