Starsector API
Loading...
Searching...
No Matches
StandardRespawnDialogPluginImpl.java
Go to the documentation of this file.
1package com.fs.starfarer.api.impl.campaign;
2
3import java.util.Map;
4
5import com.fs.starfarer.api.Global;
6import com.fs.starfarer.api.campaign.CampaignFleetAPI;
7import com.fs.starfarer.api.campaign.InteractionDialogAPI;
8import com.fs.starfarer.api.campaign.InteractionDialogPlugin;
9import com.fs.starfarer.api.campaign.OptionPanelAPI;
10import com.fs.starfarer.api.campaign.TextPanelAPI;
11import com.fs.starfarer.api.campaign.VisualPanelAPI;
12import com.fs.starfarer.api.campaign.rules.MemoryAPI;
13import com.fs.starfarer.api.characters.OfficerDataAPI;
14import com.fs.starfarer.api.combat.EngagementResultAPI;
15import com.fs.starfarer.api.fleet.FleetMemberAPI;
16import com.fs.starfarer.api.impl.campaign.fleets.FleetFactoryV3;
17import com.fs.starfarer.api.impl.campaign.ids.Abilities;
18import com.fs.starfarer.api.impl.campaign.ids.Factions;
19import com.fs.starfarer.api.impl.campaign.ids.MemFlags;
20import com.fs.starfarer.api.impl.campaign.shared.PersonBountyEventData;
21import com.fs.starfarer.api.impl.campaign.shared.SharedData;
22import com.fs.starfarer.api.util.Misc;
23
25
26 public static enum OptionId {
27 INIT,
28 RESPAWN,
29 ;
30 }
31
36
38
40 this.dialog = dialog;
44
46
47 visual.showImagePortion("illustrations", "space_wreckage", 640, 400, 0, 0, 480, 300);
48
49 optionSelected(null, OptionId.INIT);
50 }
51
52 public Map<String, MemoryAPI> getMemoryMap() {
53 return null;
54 }
55
57 // no combat here, so this won't get called
58 }
59
60 public void optionSelected(String text, Object optionData) {
61 if (optionData == null) return;
62
63 OptionId option = (OptionId) optionData;
64
65 if (text != null) {
66 //textPanel.addParagraph(text, Global.getSettings().getColor("buttonText"));
68 }
69
70 switch (option) {
71 case INIT:
72 textPanel.addParagraph("Your fleet has been defeated!");
73
74 textPanel.addParagraph("Normally, if this happens you and your remaining crew will " +
75 "spend some time \"behind the scenes\" assembling a smaller fleet of recovered " +
76 "ships.");
77
78 textPanel.addParagraph("During the course of this tutorial, the only available option is to reload the last save.");
79
81 options.addOption("Continue", OptionId.RESPAWN, null);
82 break;
83 case RESPAWN:
84
86
89 break;
90 }
91 }
92
93
94 protected void createPlayerFleet() {
95
96 float fp = 10;
97 float crew = 50;
98
100 if (daysSince < 2) {
103 }
104
106
107
108
110 MemoryAPI mem = other.getMemoryWithoutUpdate();
113 //System.out.println("Hostile: " + mem.getBoolean(MemFlags.MEMORY_KEY_MAKE_HOSTILE_WHILE_TOFF));
114 }
116
117 if (!Misc.isPermaKnowsWhoPlayerIs(other)) {
119 }
120 }
121
123 fleet.setName("Fleet");
124
126 fleet.setLocation(1000000000f, 1000000000f);
127
129 fleet.getFleetData().addOfficer(officer);
130 }
131
135
136
137 fleet.getFleetData().setSyncNeeded();
138 fleet.getFleetData().syncIfNeeded();
139
140 for (FleetMemberAPI member : fleet.getFleetData().getMembersListCopy()) {
141 float max = member.getRepairTracker().getMaxCR();
142 member.getRepairTracker().setCR(max);
143 }
144
145
146 for (String id : Global.getSector().getCharacterData().getAbilities()) {
147 fleet.addAbility(id);
148 }
149
150 if (fleet.getAbility(Abilities.TRANSPONDER) != null) {
152 }
153
154 Global.getSector().setPaused(true);
155
156// float minCredits = 2000;
157// float newCredits = Math.max(credits * 0.8f, minCredits);
158// float change = credits - newCredits;
159//
160// fleet.getCargo().getCredits().add(newCredits);
161// if (change > 0) {
162// addMessage("Lost " + (int)(change) + " credits");
163// } else if (change < 0) {
164// addMessage("Gained " + (int)(-change) + " credits");
165// }
166
168
170
172 data.setLevel(Math.max(0, data.getLevel() - 1));
173 data.setSuccessesThisLevel(0);
174 }
175
176
177
178
179
180 public void optionMousedOver(String optionText, Object optionData) {
181
182 }
183
184 public void advance(float amount) {
185
186 }
187
188 public Object getContext() {
189 return null;
190 }
191}
192
193
194
static SectorAPI getSector()
Definition Global.java:65
static CampaignFleetAPI createEmptyFleet(String factionId, String fleetType, MarketAPI market)
static final String MEMORY_KEY_SAW_PLAYER_WITH_TRANSPONDER_ON
static final String MEMORY_KEY_SAW_PLAYER_WITH_TRANSPONDER_OFF
static void clearAreaAroundPlayer(float minDist)
Definition Misc.java:4108
static boolean isPermaKnowsWhoPlayerIs(CampaignFleetAPI fleet)
Definition Misc.java:4204
List< OfficerDataAPI > getOfficersCopy()
List< FleetMemberAPI > getMembersListCopy()
List< CampaignFleetAPI > getFleets()
void addOption(String text, Object data)
void setCurrentLocation(LocationAPI location)
void setPlayerFleet(CampaignFleetAPI playerFleet)
void setLastPlayerBattleWon(boolean lastPlayerBattleWon)
void setLastPlayerBattleTimestamp(long lastPlayerBattleTimestamp)
void showImagePortion(String category, String id, float x, float y, float w, float h, float xOffset, float yOffset, float displayWidth, float displayHeight)