Starsector API
Loading...
Searching...
No Matches
CampaignEventPlugin.java
Go to the documentation of this file.
1package com.fs.starfarer.api.campaign.events;
2
3import java.awt.Color;
4import java.util.List;
5import java.util.Map;
6
7import com.fs.starfarer.api.campaign.InteractionDialogAPI;
8import com.fs.starfarer.api.campaign.comm.MessagePriority;
9import com.fs.starfarer.api.campaign.econ.CommodityOnMarketAPI;
10import com.fs.starfarer.api.campaign.econ.MarketAPI;
11import com.fs.starfarer.api.campaign.rules.MemoryAPI;
12import com.fs.starfarer.api.impl.campaign.rulecmd.CallEvent.CallableEvent;
13import com.fs.starfarer.api.util.Misc.Token;
14
15
16public interface CampaignEventPlugin extends CallableEvent {
17
18 //public static final String SUBJECT = "cep_subject";
19
20 public static enum CampaignEventCategory {
21 EVENT,
22 BOUNTY,
23 MISSION,
24 DO_NOT_SHOW_IN_MESSAGE_FILTER,
25 }
26
27 public static interface PriceUpdatePlugin {
28 public static enum PriceType {
29 CHEAP,
30 EXPENSIVE,
31 NORMAL,
32 }
33
34 MarketAPI getMarket();
35 CommodityOnMarketAPI getCommodity();
36 float getSupplyPrice();
37 float getDemandPrice();
38 PriceType getType();
39 long getTimestamp();
40 void updateType();
41 float getDemand();
42 float getAvailable();
43 int getRoundedPriceForDisplay();
44 }
45
46
47
52 String getId();
53
60 void init(String eventType, CampaignEventTarget eventTarget);
61
62
67 void cleanup();
68
69
75 void setProbability(float p);
76
80 void startEvent();
81
82 void advance(float amount);
83 boolean isDone();
84
86 String getEventType();
87
88
93 Map<String, String> getTokenReplacements();
94
103 String[] getHighlights(String stageId);
104
113 Color[] getHighlightColors(String stageId);
114
115
121
122
128
129
135
141
142
147 void setParam(Object param);
148
157
158 String getEventName();
160
161 CampaignEventCategory getEventCategory();
162
163 List<String> getRelatedCommodities();
164 List<PriceUpdatePlugin> getPriceUpdates();
165
178
179
185
186
191 String getEventIcon();
192
193
200
201
207 boolean callEvent(String ruleId, InteractionDialogAPI dialog, List<Token> params, Map<String, MemoryAPI> memoryMap);
208
209 MemoryAPI getMemory();
210
212}
213
214
215
216
boolean callEvent(String ruleId, InteractionDialogAPI dialog, List< Token > params, Map< String, MemoryAPI > memoryMap)
void init(String eventType, CampaignEventTarget eventTarget)