Starsector API
Loading...
Searching...
No Matches
ListenerUtil.java
Go to the documentation of this file.
1package com.fs.starfarer.api.campaign.listeners;
2
3import java.util.ArrayList;
4import java.util.Collections;
5import java.util.Comparator;
6import java.util.List;
7import java.util.Map;
8
9import com.fs.starfarer.api.Global;
10import com.fs.starfarer.api.campaign.BattleAPI;
11import com.fs.starfarer.api.campaign.CampaignEventListener.FleetDespawnReason;
12import com.fs.starfarer.api.campaign.CampaignFleetAPI;
13import com.fs.starfarer.api.campaign.CargoAPI;
14import com.fs.starfarer.api.campaign.CargoStackAPI;
15import com.fs.starfarer.api.campaign.CoreUITabId;
16import com.fs.starfarer.api.campaign.FactionAPI;
17import com.fs.starfarer.api.campaign.FleetInflater;
18import com.fs.starfarer.api.campaign.InteractionDialogAPI;
19import com.fs.starfarer.api.campaign.LocationAPI;
20import com.fs.starfarer.api.campaign.PlanetAPI;
21import com.fs.starfarer.api.campaign.PlayerMarketTransaction;
22import com.fs.starfarer.api.campaign.SectorEntityToken;
23import com.fs.starfarer.api.campaign.econ.Industry;
24import com.fs.starfarer.api.campaign.econ.Industry.IndustryTooltipMode;
25import com.fs.starfarer.api.campaign.econ.MarketAPI;
26import com.fs.starfarer.api.campaign.econ.SubmarketAPI;
27import com.fs.starfarer.api.campaign.listeners.GroundRaidObjectivesListener.RaidResultData;
28import com.fs.starfarer.api.campaign.listeners.IndustryOptionProvider.IndustryOptionData;
29import com.fs.starfarer.api.campaign.listeners.SubmarketInteractionListener.SubmarketInteractionType;
30import com.fs.starfarer.api.campaign.rules.MemoryAPI;
31import com.fs.starfarer.api.combat.CollisionGridAPI;
32import com.fs.starfarer.api.combat.MutableStat;
33import com.fs.starfarer.api.combat.ViewportAPI;
34import com.fs.starfarer.api.fleet.FleetMemberAPI;
35import com.fs.starfarer.api.impl.campaign.enc.EncounterPoint;
36import com.fs.starfarer.api.impl.campaign.enc.EncounterPointProvider;
37import com.fs.starfarer.api.impl.campaign.graid.GroundRaidObjectivePlugin;
38import com.fs.starfarer.api.impl.campaign.intel.FactionCommissionIntel;
39import com.fs.starfarer.api.impl.campaign.intel.bases.LuddicPathCellsIntel;
40import com.fs.starfarer.api.impl.campaign.rulecmd.salvage.MarketCMD.RaidType;
41import com.fs.starfarer.api.impl.campaign.rulecmd.salvage.MarketCMD.TempData;
42import com.fs.starfarer.api.impl.campaign.velfield.SlipstreamManager;
43import com.fs.starfarer.api.input.InputEventAPI;
44import com.fs.starfarer.api.ui.TooltipMakerAPI;
45import com.fs.starfarer.api.util.WeightedRandomPicker;
46
47public class ListenerUtil {
48
49 public static List<CampaignInputListener> getSortedInputListeners() {
50 List<CampaignInputListener> list = Global.getSector().getListenerManager().getListeners(CampaignInputListener.class);
51 Collections.sort(list, new Comparator<CampaignInputListener>() {
52 public int compare(CampaignInputListener o1, CampaignInputListener o2) {
54 }
55 });
56 return list;
57 }
58 public static void processCampaignInputPreCore(List<InputEventAPI> events) {
60 x.processCampaignInputPreCore(events);
61 }
62 }
63 public static void processCampaignInputPostCore(List<InputEventAPI> events) {
65 x.processCampaignInputPostCore(events);
66 }
67 }
68 public static void processCampaignInputPreFleetControl(List<InputEventAPI> events) {
70 x.processCampaignInputPreFleetControl(events);
71 }
72 }
73
74 public static void reportPlayerSurveyedPlanet(PlanetAPI planet) {
75 for (SurveyPlanetListener x : Global.getSector().getListenerManager().getListeners(SurveyPlanetListener.class)) {
76 x.reportPlayerSurveyedPlanet(planet);
77 }
78 }
79
80 public static void reportPlayerColonizedPlanet(PlanetAPI planet) {
81 for (PlayerColonizationListener x : Global.getSector().getListenerManager().getListeners(PlayerColonizationListener.class)) {
82 x.reportPlayerColonizedPlanet(planet);
83 }
84 }
85
86 public static void reportPlayerAbandonedColony(MarketAPI colony) {
87 for (PlayerColonizationListener x : Global.getSector().getListenerManager().getListeners(PlayerColonizationListener.class)) {
88 x.reportPlayerAbandonedColony(colony);
89 }
90 }
91
93 for (ShowLootListener x : Global.getSector().getListenerManager().getListeners(ShowLootListener.class)) {
94 x.reportAboutToShowLootToPlayer(loot, dialog);
95 }
96 }
97
99 for (CargoGainedListener x : Global.getSector().getListenerManager().getListeners(CargoGainedListener.class)) {
100 x.reportSpecialCargoGainedFromRecoveredDerelict(loot, dialog);
101 }
102 }
103
104
105 public static void reportFleetDespawnedToListener(CampaignFleetAPI fleet, FleetDespawnReason reason, Object param) {
106 for (FleetEventListener x : Global.getSector().getListenerManager().getListeners(FleetEventListener.class)) {
107 x.reportFleetDespawnedToListener(fleet, reason, param);
108 }
109 }
110
111 public static void reportBattleOccurred(CampaignFleetAPI fleet, CampaignFleetAPI primaryWinner, BattleAPI battle) {
112 for (FleetEventListener x : Global.getSector().getListenerManager().getListeners(FleetEventListener.class)) {
113 x.reportBattleOccurred(fleet, primaryWinner, battle);
114 }
115 }
116
117 public static void reportEconomyTick(int iterIndex) {
118 for (EconomyTickListener x : Global.getSector().getListenerManager().getListeners(EconomyTickListener.class)) {
119 x.reportEconomyTick(iterIndex);
120 }
121 }
122 public static void reportEconomyMonthEnd() {
123 for (EconomyTickListener x : Global.getSector().getListenerManager().getListeners(EconomyTickListener.class)) {
124 x.reportEconomyMonthEnd();
125 }
126 }
127
128 public static void reportEntityDiscovered(SectorEntityToken entity) {
129 for (DiscoverEntityListener x : Global.getSector().getListenerManager().getListeners(DiscoverEntityListener.class)) {
130 x.reportEntityDiscovered(entity);
131 }
132 }
133
134
135 public static void reportObjectiveChangedHands(SectorEntityToken objective, FactionAPI from, FactionAPI to) {
136 for (ObjectiveEventListener x : Global.getSector().getListenerManager().getListeners(ObjectiveEventListener.class)) {
137 x.reportObjectiveChangedHands(objective, from, to);
138 }
139 }
140 public static void reportObjectiveDestroyed(SectorEntityToken objective, SectorEntityToken stableLocation, FactionAPI enemy) {
141 for (ObjectiveEventListener x : Global.getSector().getListenerManager().getListeners(ObjectiveEventListener.class)) {
142 x.reportObjectiveDestroyed(objective, stableLocation, enemy);
143 }
144 }
145
146 public static void reportRaidForValuablesFinishedBeforeCargoShown(InteractionDialogAPI dialog, MarketAPI market, TempData actionData, CargoAPI cargo) {
147 for (ColonyPlayerHostileActListener x : Global.getSector().getListenerManager().getListeners(ColonyPlayerHostileActListener.class)) {
148 x.reportRaidForValuablesFinishedBeforeCargoShown(dialog, market, actionData, cargo);
149 }
150 }
151 public static void reportRaidToDisruptFinished(InteractionDialogAPI dialog, MarketAPI market, TempData actionData, Industry industry) {
152 for (ColonyPlayerHostileActListener x : Global.getSector().getListenerManager().getListeners(ColonyPlayerHostileActListener.class)) {
153 x.reportRaidToDisruptFinished(dialog, market, actionData, industry);
154 }
155 }
156
157 public static void reportTacticalBombardmentFinished(InteractionDialogAPI dialog, MarketAPI market, TempData actionData) {
158 for (ColonyPlayerHostileActListener x : Global.getSector().getListenerManager().getListeners(ColonyPlayerHostileActListener.class)) {
159 x.reportTacticalBombardmentFinished(dialog, market, actionData);
160 }
161 }
162
163 public static void reportSaturationBombardmentFinished(InteractionDialogAPI dialog, MarketAPI market, TempData actionData) {
164 for (ColonyPlayerHostileActListener x : Global.getSector().getListenerManager().getListeners(ColonyPlayerHostileActListener.class)) {
165 x.reportSaturationBombardmentFinished(dialog, market, actionData);
166 }
167 }
168
169 public static void reportExtraSalvageShown(SectorEntityToken entity) {
170 for (ExtraSalvageShownListener x : Global.getSector().getListenerManager().getListeners(ExtraSalvageShownListener.class)) {
171 x.reportExtraSalvageShown(entity);
172 }
173 }
174
175 public static void reportPlayerOpenedSubmarket(SubmarketAPI submarket, SubmarketInteractionType type) {
176 for (SubmarketInteractionListener x : Global.getSector().getListenerManager().getListeners(SubmarketInteractionListener.class)) {
177 x.reportPlayerOpenedSubmarket(submarket, type);
178 }
179 }
180
181 public static void reportPlayerOpenedMarket(MarketAPI market) {
182 for (ColonyInteractionListener x : Global.getSector().getListenerManager().getListeners(ColonyInteractionListener.class)) {
183 x.reportPlayerOpenedMarket(market);
184 }
185 }
186
187 public static void reportPlayerClosedMarket(MarketAPI market) {
188 for (ColonyInteractionListener x : Global.getSector().getListenerManager().getListeners(ColonyInteractionListener.class)) {
189 x.reportPlayerClosedMarket(market);
190 }
191 }
192
193 public static void reportPlayerOpenedMarketAndCargoUpdated(MarketAPI market) {
194 for (ColonyInteractionListener x : Global.getSector().getListenerManager().getListeners(ColonyInteractionListener.class)) {
195 x.reportPlayerOpenedMarketAndCargoUpdated(market);
196 }
197 }
198
200 for (ColonyInteractionListener x : Global.getSector().getListenerManager().getListeners(ColonyInteractionListener.class)) {
201 x.reportPlayerMarketTransaction(transaction);
202 }
203 }
204
205 public static void modifyRaidObjectives(MarketAPI market, SectorEntityToken entity, List<GroundRaidObjectivePlugin> objectives, RaidType type, int marineTokens, int priority) {
206 for (GroundRaidObjectivesListener x : Global.getSector().getListenerManager().getListeners(GroundRaidObjectivesListener.class)) {
207 x.modifyRaidObjectives(market, entity, objectives, type, marineTokens, priority);
208 }
209 }
210
211 public static void reportRaidObjectivesAchieved(RaidResultData data, InteractionDialogAPI dialog, Map<String, MemoryAPI> memoryMap) {
212 for (GroundRaidObjectivesListener x : Global.getSector().getListenerManager().getListeners(GroundRaidObjectivesListener.class)) {
213 x.reportRaidObjectivesAchieved(data, dialog, memoryMap);
214 }
215 }
216
217 public static void addCommodityTooltipSectionAfterPrice(TooltipMakerAPI info, float width, boolean expanded, CargoStackAPI stack) {
218 for (CommodityTooltipModifier x : Global.getSector().getListenerManager().getListeners(CommodityTooltipModifier.class)) {
219 x.addSectionAfterPrice(info, width, expanded, stack);
220 }
221 }
222
223 public static void reportCargoScreenOpened() {
224 for (CargoScreenListener x : Global.getSector().getListenerManager().getListeners(CargoScreenListener.class)) {
225 x.reportCargoScreenOpened();
226 }
227 }
228
229 public static void reportSubmarketCargoAndShipsUpdated(SubmarketAPI submarket) {
230 for (SubmarketUpdateListener x : Global.getSector().getListenerManager().getListeners(SubmarketUpdateListener.class)) {
231 x.reportSubmarketCargoAndShipsUpdated(submarket);
232 }
233 }
234
235 public static void reportPlayerLeftCargoPods(SectorEntityToken entity) {
236 for (CargoScreenListener x : Global.getSector().getListenerManager().getListeners(CargoScreenListener.class)) {
237 x.reportPlayerLeftCargoPods(entity);
238 }
239 }
240
242 for (CargoScreenListener x : Global.getSector().getListenerManager().getListeners(CargoScreenListener.class)) {
243 x.reportPlayerNonMarketTransaction(transaction, dialog);
244 }
245 }
246
247 public static void reportSubmarketOpened(SubmarketAPI submarket) {
248 for (CargoScreenListener x : Global.getSector().getListenerManager().getListeners(CargoScreenListener.class)) {
249 x.reportSubmarketOpened(submarket);
250 }
251 }
252
253 public static void printOtherFactors(TooltipMakerAPI text, SectorEntityToken entity) {
254 for (ColonyOtherFactorsListener x : Global.getSector().getListenerManager().getListeners(ColonyOtherFactorsListener.class)) {
255 x.printOtherFactors(text, entity);
256 }
257 }
258
259 public static void modifyMarineLossesStatPreRaid(MarketAPI market, List<GroundRaidObjectivePlugin> objectives, MutableStat stat) {
260 for (MarineLossesStatModifier x : Global.getSector().getListenerManager().getListeners(MarineLossesStatModifier.class)) {
261 x.modifyMarineLossesStatPreRaid(market, objectives, stat);
262 }
263 }
264
266 for (GateTransitListener x : Global.getSector().getListenerManager().getListeners(GateTransitListener.class)) {
267 x.reportFleetTransitingGate(fleet, gateFrom, gateTo);
268 }
269 }
270
271 public static void reportShipsRecovered(List<FleetMemberAPI> ships, InteractionDialogAPI dialog) {
272 for (ShipRecoveryListener x : Global.getSector().getListenerManager().getListeners(ShipRecoveryListener.class)) {
273 x.reportShipsRecovered(ships, dialog);
274 }
275 }
276
277 public static void reportCurrentLocationChanged(LocationAPI prev, LocationAPI curr) {
278 for (CurrentLocationChangedListener x : Global.getSector().getListenerManager().getListeners(CurrentLocationChangedListener.class)) {
279 x.reportCurrentLocationChanged(prev, curr);
280 }
281 }
282
283 public static void reportColonyAboutToBeDecivilized(MarketAPI market, boolean fullyDestroyed) {
284 for (ColonyDecivListener x : Global.getSector().getListenerManager().getListeners(ColonyDecivListener.class)) {
285 x.reportColonyAboutToBeDecivilized(market, fullyDestroyed);
286 }
287}
288 public static void reportColonyDecivilized(MarketAPI market, boolean fullyDestroyed) {
289 for (ColonyDecivListener x : Global.getSector().getListenerManager().getListeners(ColonyDecivListener.class)) {
290 x.reportColonyDecivilized(market, fullyDestroyed);
291 }
292 }
293
294 public static void updateSlipstreamBlockers(CollisionGridAPI grid, SlipstreamManager manager) {
295 for (SlipstreamBlockerUpdater x : Global.getSector().getListenerManager().getListeners(SlipstreamBlockerUpdater.class)) {
296 x.updateSlipstreamBlockers(grid, manager);
297 }
298 }
299 public static void updateSlipstreamConfig(String prevConfig, WeightedRandomPicker<String> nextConfigPicker,
300 SlipstreamManager manager) {
301 for (SlipstreamConfigUpdater x : Global.getSector().getListenerManager().getListeners(SlipstreamConfigUpdater.class)) {
302 x.updateSlipstreamConfig(prevConfig, nextConfigPicker, manager);
303 }
304 }
305
306 public static int countOtherFactors(SectorEntityToken entity) {
307 int count = 0;
308 for (ColonyOtherFactorsListener x : Global.getSector().getListenerManager().getListeners(ColonyOtherFactorsListener.class)) {
309 if (x.isActiveFactorFor(entity)) count++;
310 }
311 return count;
312 }
313 public static boolean hasOtherFactors(SectorEntityToken entity) {
314 return countOtherFactors(entity) > 0;
315 }
316
317 public static List<EncounterPoint> generateEncounterPoints(LocationAPI where) {
318 List<EncounterPoint> result = new ArrayList<EncounterPoint>();
319 if (where == null) return result;
320 for (EncounterPointProvider x : Global.getSector().getListenerManager().getListeners(EncounterPointProvider.class)) {
321 List<EncounterPoint> curr = x.generateEncounterPoints(where);
322 if (curr != null) {
323 result.addAll(curr);
324 }
325 }
326 return result;
327 }
328
329 public static void reportCellDisrupted(LuddicPathCellsIntel cell) {
330 for (PatherCellListener x : Global.getSector().getListenerManager().getListeners(PatherCellListener.class)) {
331 x.reportCellsDisrupted(cell);
332 }
333 }
334
335 public static void reportAboutToOpenCoreTab(CoreUITabId tab, Object param) {
336 for (CoreUITabListener x : Global.getSector().getListenerManager().getListeners(CoreUITabListener.class)) {
337 x.reportAboutToOpenCoreTab(tab, param);
338 }
339 }
340
341
343 for (CharacterStatsRefreshListener x : Global.getSector().getListenerManager().getListeners(CharacterStatsRefreshListener.class)) {
344 x.reportAboutToRefreshCharacterStatEffects();
345 }
346 }
347
349 for (CharacterStatsRefreshListener x : Global.getSector().getListenerManager().getListeners(CharacterStatsRefreshListener.class)) {
350 x.reportRefreshedCharacterStatEffects();
351 }
352 }
353
354 public static void renderInUICoordsBelowUI(ViewportAPI viewport) {
355 for (CampaignUIRenderingListener x : Global.getSector().getListenerManager().getListeners(CampaignUIRenderingListener.class)) {
356 x.renderInUICoordsBelowUI(viewport);
357 }
358 }
359 public static void renderInUICoordsAboveUIBelowTooltips(ViewportAPI viewport) {
360 for (CampaignUIRenderingListener x : Global.getSector().getListenerManager().getListeners(CampaignUIRenderingListener.class)) {
361 x.renderInUICoordsAboveUIBelowTooltips(viewport);
362 }
363 }
364 public static void renderInUICoordsAboveUIAndTooltips(ViewportAPI viewport) {
365 for (CampaignUIRenderingListener x : Global.getSector().getListenerManager().getListeners(CampaignUIRenderingListener.class)) {
366 x.renderInUICoordsAboveUIAndTooltips(viewport);
367 }
368 }
369
370 public static List<IndustryOptionData> getIndustryOptions(Industry ind) {
371 List<IndustryOptionData> result = new ArrayList<IndustryOptionData>();
372 for (IndustryOptionProvider x : Global.getSector().getListenerManager().getListeners(IndustryOptionProvider.class)) {
373 List<IndustryOptionData> curr = x.getIndustryOptions(ind);
374 if (curr != null) {
375 result.addAll(curr);
376 }
377 }
378 return result;
379 }
380
381 public static void addToIndustryTooltip(Industry ind, IndustryTooltipMode mode, TooltipMakerAPI tooltip, float width, boolean expanded) {
382 // don't want to do it this way since a provider might add a one-time option that doesn't stay in the list
383 // but has a lasting effect that needs to be shown in the tooltip
384// List<IndustryOptionData> list = getIndustryOptions(ind);
385// Set<IndustryOptionProvider> providers = new LinkedHashSet<IndustryOptionProvider>();
386// for (IndustryOptionData curr : list) {
387// providers.add(curr.provider);
388// }
389// for (IndustryOptionProvider x : providers) {
390// x.addToIndustryTooltip(mode, tooltip, width, expanded);
391// }
392
393 for (IndustryOptionProvider x : Global.getSector().getListenerManager().getListeners(IndustryOptionProvider.class)) {
394 x.addToIndustryTooltip(ind, mode, tooltip, width, expanded);
395 }
396 }
397
398 public static void reportFleetInflated(CampaignFleetAPI fleet, FleetInflater inflater) {
399 for (FleetInflationListener x : Global.getSector().getListenerManager().getListeners(FleetInflationListener.class)) {
400 x.reportFleetInflated(fleet, inflater);
401 }
402 }
403
404
406 for (NavigationDataSectionListener x : Global.getSector().getListenerManager().getListeners(NavigationDataSectionListener.class)) {
407 x.reportNavigationDataSectionAboutToBeCreated(target);
408 }
409// CampaignFleetAPI pf = Global.getSector().getPlayerFleet();
410// MutableStat stat = pf.getStats().getFuelUseHyperMult();
411// stat.modifyMult("test123", 0.1f, "Test");
412 }
413
415 for (NavigationDataSectionListener x : Global.getSector().getListenerManager().getListeners(NavigationDataSectionListener.class)) {
416 x.reportNavigationDataSectionWasCreated(target);
417 }
418// CampaignFleetAPI pf = Global.getSector().getPlayerFleet();
419// MutableStat stat = pf.getStats().getFuelUseHyperMult();
420// stat.unmodifyMult("test123");
421 }
422
423
424
425 public static void reportCommissionEnded(FactionCommissionIntel intel) {
426 for (CommissionEndedListener x : Global.getSector().getListenerManager().getListeners(CommissionEndedListener.class)) {
427 x.reportCommissionEnded(intel);
428 }
429 }
430
431
432 public static void reportColonySizeChanged(MarketAPI market, int prevSize) {
433 for (ColonySizeChangeListener x : Global.getSector().getListenerManager().getListeners(ColonySizeChangeListener.class)) {
434 x.reportColonySizeChanged(market, prevSize);
435 }
436 }
437
438}
439
440
441
442
443
444
445
446
447
448
449
450
static SectorAPI getSector()
Definition Global.java:59
static void reportBattleOccurred(CampaignFleetAPI fleet, CampaignFleetAPI primaryWinner, BattleAPI battle)
static void reportAboutToShowLootToPlayer(CargoAPI loot, InteractionDialogAPI dialog)
static void reportRaidObjectivesAchieved(RaidResultData data, InteractionDialogAPI dialog, Map< String, MemoryAPI > memoryMap)
static void reportPlayerNonMarketTransaction(PlayerMarketTransaction transaction, InteractionDialogAPI dialog)
static void modifyMarineLossesStatPreRaid(MarketAPI market, List< GroundRaidObjectivePlugin > objectives, MutableStat stat)
static void reportRaidForValuablesFinishedBeforeCargoShown(InteractionDialogAPI dialog, MarketAPI market, TempData actionData, CargoAPI cargo)
static void reportNavigationDataSectionWasCreated(SectorEntityToken target)
static void reportPlayerSurveyedPlanet(PlanetAPI planet)
static List< IndustryOptionData > getIndustryOptions(Industry ind)
static void reportFleetTransitingGate(CampaignFleetAPI fleet, SectorEntityToken gateFrom, SectorEntityToken gateTo)
static void reportSubmarketOpened(SubmarketAPI submarket)
static void reportCellDisrupted(LuddicPathCellsIntel cell)
static void reportCommissionEnded(FactionCommissionIntel intel)
static void reportFleetDespawnedToListener(CampaignFleetAPI fleet, FleetDespawnReason reason, Object param)
static void reportEntityDiscovered(SectorEntityToken entity)
static void processCampaignInputPreCore(List< InputEventAPI > events)
static List< EncounterPoint > generateEncounterPoints(LocationAPI where)
static void modifyRaidObjectives(MarketAPI market, SectorEntityToken entity, List< GroundRaidObjectivePlugin > objectives, RaidType type, int marineTokens, int priority)
static void reportShipsRecovered(List< FleetMemberAPI > ships, InteractionDialogAPI dialog)
static void reportObjectiveDestroyed(SectorEntityToken objective, SectorEntityToken stableLocation, FactionAPI enemy)
static void reportSaturationBombardmentFinished(InteractionDialogAPI dialog, MarketAPI market, TempData actionData)
static boolean hasOtherFactors(SectorEntityToken entity)
static void renderInUICoordsAboveUIAndTooltips(ViewportAPI viewport)
static int countOtherFactors(SectorEntityToken entity)
static void reportSpecialCargoGainedFromRecoveredDerelict(CargoAPI loot, InteractionDialogAPI dialog)
static void reportCurrentLocationChanged(LocationAPI prev, LocationAPI curr)
static void renderInUICoordsAboveUIBelowTooltips(ViewportAPI viewport)
static void reportPlayerLeftCargoPods(SectorEntityToken entity)
static void reportPlayerColonizedPlanet(PlanetAPI planet)
static void reportObjectiveChangedHands(SectorEntityToken objective, FactionAPI from, FactionAPI to)
static void updateSlipstreamBlockers(CollisionGridAPI grid, SlipstreamManager manager)
static void reportPlayerOpenedSubmarket(SubmarketAPI submarket, SubmarketInteractionType type)
static void reportRaidToDisruptFinished(InteractionDialogAPI dialog, MarketAPI market, TempData actionData, Industry industry)
static void updateSlipstreamConfig(String prevConfig, WeightedRandomPicker< String > nextConfigPicker, SlipstreamManager manager)
static void reportColonyDecivilized(MarketAPI market, boolean fullyDestroyed)
static void reportColonySizeChanged(MarketAPI market, int prevSize)
static void reportNavigationDataSectionAboutToBeCreated(SectorEntityToken target)
static void reportExtraSalvageShown(SectorEntityToken entity)
static void reportPlayerMarketTransaction(PlayerMarketTransaction transaction)
static void reportPlayerOpenedMarketAndCargoUpdated(MarketAPI market)
static void reportAboutToOpenCoreTab(CoreUITabId tab, Object param)
static void addToIndustryTooltip(Industry ind, IndustryTooltipMode mode, TooltipMakerAPI tooltip, float width, boolean expanded)
static void reportTacticalBombardmentFinished(InteractionDialogAPI dialog, MarketAPI market, TempData actionData)
static void printOtherFactors(TooltipMakerAPI text, SectorEntityToken entity)
static void reportColonyAboutToBeDecivilized(MarketAPI market, boolean fullyDestroyed)
static void renderInUICoordsBelowUI(ViewportAPI viewport)
static void processCampaignInputPreFleetControl(List< InputEventAPI > events)
static void reportFleetInflated(CampaignFleetAPI fleet, FleetInflater inflater)
static void addCommodityTooltipSectionAfterPrice(TooltipMakerAPI info, float width, boolean expanded, CargoStackAPI stack)
static void reportPlayerAbandonedColony(MarketAPI colony)
static void reportSubmarketCargoAndShipsUpdated(SubmarketAPI submarket)
static void processCampaignInputPostCore(List< InputEventAPI > events)
static List< CampaignInputListener > getSortedInputListeners()