public class BaseEventPlugin extends java.lang.Object implements CampaignEventPlugin, CampaignEventListener
| Modifier and Type | Class and Description |
|---|---|
static interface |
BaseEventPlugin.MarketFilter |
CampaignEventPlugin.CampaignEventCategory, CampaignEventPlugin.PriceUpdatePluginCampaignEventListener.FleetDespawnReason| Modifier and Type | Field and Description |
|---|---|
protected SectorEntityToken |
entity |
protected CampaignEventTarget |
eventTarget |
protected java.lang.String |
eventType |
protected FactionAPI |
faction |
protected MarketAPI |
market |
protected MemoryAPI |
memory |
protected boolean |
started |
protected float |
startProbability |
protected java.lang.String |
statModId |
| Constructor and Description |
|---|
BaseEventPlugin() |
| Modifier and Type | Method and Description |
|---|---|
static void |
addFactionNameTokens(java.util.Map<java.lang.String,java.lang.String> tokens,
java.lang.String prefix,
FactionAPI faction) |
static void |
addPersonTokens(java.util.Map<java.lang.String,java.lang.String> tokens,
java.lang.String prefix,
PersonAPI person) |
void |
addTokensToList(java.util.List<java.lang.String> list,
java.lang.String... keys) |
void |
advance(float amount) |
boolean |
allowMultipleOngoingForSameTarget()
DO NOT USE, DOES NOT WORK.
|
boolean |
callEvent(java.lang.String ruleId,
InteractionDialogAPI dialog,
java.util.List<Misc.Token> params,
java.util.Map<java.lang.String,MemoryAPI> memoryMap)
Called by the CallEvent command (called from rules.csv).
|
void |
cleanup()
Called when this instance of the event is removed from the event manager (either due to event being over,
or due to event probability dropping to 0).
|
static java.util.List<MarketAPI> |
findMatchingMarkets(BaseEventPlugin.MarketFilter filter) |
static MarketAPI |
findNearestMarket(MarketAPI from,
BaseEventPlugin.MarketFilter filter) |
java.lang.String |
getCurrentImage()
The larger image in the message detail.
|
java.lang.String |
getCurrentMessageIcon()
Will be called by SectorAPI.reportEventStage().
|
protected MessagePriority |
getDefaultPriority() |
CampaignEventPlugin.CampaignEventCategory |
getEventCategory() |
java.lang.String |
getEventIcon()
Override for the "image" normally specified in events.json.
|
java.lang.String |
getEventName() |
CampaignEventTarget |
getEventTarget() |
java.lang.String |
getEventType() |
java.awt.Color[] |
getHighlightColors(java.lang.String stageId)
Since multiple reports (possibly from different channels) are possible per stage:
1) All reports must have the highlighted text occur in the same order, which is the order
this method returns them in, and
2) Not all highlights have to occur in every report.
|
java.lang.String[] |
getHighlights(java.lang.String stageId)
Since multiple reports (possibly from different channels) are possible per stage:
1) All reports must have the highlighted text occur in the same order, which is the order
this method returns them in, and
2) Not all highlights have to occur in every report.
|
java.lang.String |
getId()
Unique ID for this instance of the event.
|
protected java.lang.String |
getLoggingId() |
MemoryAPI |
getMemory() |
java.util.List<CampaignEventPlugin.PriceUpdatePlugin> |
getPriceUpdates() |
java.util.List<java.lang.String> |
getRelatedCommodities() |
java.lang.String |
getStageIdForLikely()
event_stage for when the event is likely, but hasn't happened yet.
|
java.lang.String |
getStageIdForPossible()
event_stage for when the event is possible, but hasn't happened yet.
|
java.lang.String |
getStatModId() |
java.lang.String |
getTargetName() |
java.util.Map<java.lang.String,java.lang.String> |
getTokenReplacements()
Token values for filling out descriptions from reports.csv.
|
MessagePriority |
getWarningWhenLikelyPriority()
Message priority for the "event is likely" report.
|
MessagePriority |
getWarningWhenPossiblePriority()
Message priority for the "event is possible" report.
|
void |
increaseRecentUnrest(float stabilityChange) |
void |
init(java.lang.String eventType,
CampaignEventTarget eventTarget)
Called when the EventProbability for this event is accessed.
|
void |
init(java.lang.String eventType,
CampaignEventTarget eventTarget,
boolean addListener) |
boolean |
isDone() |
protected boolean |
isEventStarted() |
void |
reportBattleFinished(CampaignFleetAPI primaryWinner,
BattleAPI battle) |
void |
reportBattleOccurred(CampaignFleetAPI primaryWinner,
BattleAPI battle)
Once for each autoresolve round for AI vs AI.
|
void |
reportEconomyMonthEnd() |
void |
reportEconomyTick(int iterIndex) |
void |
reportEncounterLootGenerated(FleetEncounterContextPlugin plugin,
CargoAPI loot) |
void |
reportFleetDespawned(CampaignFleetAPI fleet,
CampaignEventListener.FleetDespawnReason reason,
java.lang.Object param)
Could be destroyed or simply reached a despawn location.
|
void |
reportFleetJumped(CampaignFleetAPI fleet,
SectorEntityToken from,
JumpPointAPI.JumpDestination to)
from is generally a JumpPointAPI, but doesn't *have* to be.
|
void |
reportFleetReachedEntity(CampaignFleetAPI fleet,
SectorEntityToken entity)
Planets/stations/etc that are the target of a fleet's assignment.
|
void |
reportFleetSpawned(CampaignFleetAPI fleet) |
void |
reportPlayerActivatedAbility(AbilityPlugin ability,
java.lang.Object param) |
void |
reportPlayerClosedMarket(MarketAPI market) |
void |
reportPlayerDeactivatedAbility(AbilityPlugin ability,
java.lang.Object param) |
void |
reportPlayerDidNotTakeCargo(CargoAPI cargo) |
void |
reportPlayerDumpedCargo(CargoAPI cargo) |
void |
reportPlayerEngagement(EngagementResultAPI result) |
void |
reportPlayerMarketTransaction(PlayerMarketTransaction transaction) |
void |
reportPlayerOpenedMarket(MarketAPI market) |
void |
reportPlayerOpenedMarketAndCargoUpdated(MarketAPI market) |
void |
reportPlayerReputationChange(PersonAPI person,
float delta) |
void |
reportPlayerReputationChange(java.lang.String faction,
float delta) |
void |
reportShownInteractionDialog(InteractionDialogAPI dialog) |
void |
setParam(java.lang.Object param)
Only called when an event is started via CampaignEventManagerAPI.startEvent().
|
void |
setProbability(float p)
The probability that the event had of happening, set right before startEvent() is called.
|
void |
setTarget(CampaignEventTarget eventTarget) |
boolean |
showAllMessagesIfOngoing()
If true, messages for an ongoing event will be shown in the intel UI even if
they don't meet the "last week/month/cycle" criteria.
|
boolean |
showLatestMessageIfOngoing() |
void |
startEvent()
Called when the event starts.
|
void |
startEvent(boolean addListener) |
boolean |
useEventNameAsId() |
protected java.lang.String eventType
protected CampaignEventTarget eventTarget
protected SectorEntityToken entity
protected FactionAPI faction
protected java.lang.String statModId
protected boolean started
protected float startProbability
public BaseEventPlugin()
public void init(java.lang.String eventType, CampaignEventTarget eventTarget)
CampaignEventPlugininit in interface CampaignEventPluginpublic void init(java.lang.String eventType, CampaignEventTarget eventTarget, boolean addListener)
public void setTarget(CampaignEventTarget eventTarget)
protected java.lang.String getLoggingId()
public void cleanup()
CampaignEventPlugincleanup in interface CampaignEventPluginpublic void startEvent()
CampaignEventPluginstartEvent in interface CampaignEventPluginpublic void startEvent(boolean addListener)
protected boolean isEventStarted()
public void advance(float amount)
advance in interface CampaignEventPluginpublic CampaignEventTarget getEventTarget()
getEventTarget in interface CampaignEventPluginpublic java.lang.String getEventType()
getEventType in interface CampaignEventPluginpublic java.lang.String getStageIdForLikely()
CampaignEventPlugingetStageIdForLikely in interface CampaignEventPluginpublic java.lang.String getStageIdForPossible()
CampaignEventPlugingetStageIdForPossible in interface CampaignEventPluginpublic java.util.Map<java.lang.String,java.lang.String> getTokenReplacements()
CampaignEventPlugingetTokenReplacements in interface CampaignEventPluginpublic static void addFactionNameTokens(java.util.Map<java.lang.String,java.lang.String> tokens, java.lang.String prefix, FactionAPI faction)
public static void addPersonTokens(java.util.Map<java.lang.String,java.lang.String> tokens, java.lang.String prefix, PersonAPI person)
public MessagePriority getWarningWhenLikelyPriority()
CampaignEventPlugingetWarningWhenLikelyPriority in interface CampaignEventPluginpublic MessagePriority getWarningWhenPossiblePriority()
CampaignEventPlugingetWarningWhenPossiblePriority in interface CampaignEventPluginpublic boolean isDone()
isDone in interface CampaignEventPluginpublic void setParam(java.lang.Object param)
CampaignEventPluginsetParam in interface CampaignEventPluginpublic java.lang.String getTargetName()
public static MarketAPI findNearestMarket(MarketAPI from, BaseEventPlugin.MarketFilter filter)
public static java.util.List<MarketAPI> findMatchingMarkets(BaseEventPlugin.MarketFilter filter)
public void increaseRecentUnrest(float stabilityChange)
public void reportPlayerMarketTransaction(PlayerMarketTransaction transaction)
reportPlayerMarketTransaction in interface CampaignEventListenerpublic void reportFleetDespawned(CampaignFleetAPI fleet, CampaignEventListener.FleetDespawnReason reason, java.lang.Object param)
CampaignEventListenerreportFleetDespawned in interface CampaignEventListenerpublic void reportFleetJumped(CampaignFleetAPI fleet, SectorEntityToken from, JumpPointAPI.JumpDestination to)
CampaignEventListenerreportFleetJumped in interface CampaignEventListenerpublic void reportFleetReachedEntity(CampaignFleetAPI fleet, SectorEntityToken entity)
CampaignEventListenerreportFleetReachedEntity in interface CampaignEventListenerpublic boolean allowMultipleOngoingForSameTarget()
CampaignEventPluginallowMultipleOngoingForSameTarget in interface CampaignEventPluginpublic java.lang.String[] getHighlights(java.lang.String stageId)
CampaignEventPlugingetHighlights in interface CampaignEventPluginpublic java.awt.Color[] getHighlightColors(java.lang.String stageId)
CampaignEventPlugingetHighlightColors in interface CampaignEventPluginpublic void addTokensToList(java.util.List<java.lang.String> list, java.lang.String... keys)
public java.lang.String getEventName()
getEventName in interface CampaignEventPluginpublic CampaignEventPlugin.CampaignEventCategory getEventCategory()
getEventCategory in interface CampaignEventPluginprotected MessagePriority getDefaultPriority()
public java.util.List<java.lang.String> getRelatedCommodities()
getRelatedCommodities in interface CampaignEventPluginpublic java.util.List<CampaignEventPlugin.PriceUpdatePlugin> getPriceUpdates()
getPriceUpdates in interface CampaignEventPluginpublic void reportShownInteractionDialog(InteractionDialogAPI dialog)
reportShownInteractionDialog in interface CampaignEventListenerpublic void reportPlayerOpenedMarket(MarketAPI market)
reportPlayerOpenedMarket in interface CampaignEventListenerpublic java.lang.String getCurrentMessageIcon()
CampaignEventPlugingetCurrentMessageIcon in interface CampaignEventPluginpublic java.lang.String getCurrentImage()
CampaignEventPlugingetCurrentImage in interface CampaignEventPluginpublic java.lang.String getEventIcon()
CampaignEventPlugingetEventIcon in interface CampaignEventPluginpublic boolean showAllMessagesIfOngoing()
CampaignEventPluginshowAllMessagesIfOngoing in interface CampaignEventPluginpublic void reportPlayerReputationChange(java.lang.String faction, float delta)
reportPlayerReputationChange in interface CampaignEventListenerpublic void reportPlayerEngagement(EngagementResultAPI result)
reportPlayerEngagement in interface CampaignEventListenerpublic void reportFleetSpawned(CampaignFleetAPI fleet)
reportFleetSpawned in interface CampaignEventListenerpublic void reportPlayerOpenedMarketAndCargoUpdated(MarketAPI market)
reportPlayerOpenedMarketAndCargoUpdated in interface CampaignEventListenerpublic void reportEncounterLootGenerated(FleetEncounterContextPlugin plugin, CargoAPI loot)
reportEncounterLootGenerated in interface CampaignEventListenerpublic void reportPlayerClosedMarket(MarketAPI market)
reportPlayerClosedMarket in interface CampaignEventListenerpublic boolean callEvent(java.lang.String ruleId, InteractionDialogAPI dialog, java.util.List<Misc.Token> params, java.util.Map<java.lang.String,MemoryAPI> memoryMap)
CampaignEventPlugincallEvent in interface CampaignEventPlugincallEvent in interface CallEvent.CallableEventpublic MemoryAPI getMemory()
getMemory in interface CampaignEventPluginpublic java.lang.String getId()
CampaignEventPlugingetId in interface CampaignEventPluginpublic java.lang.String getStatModId()
public void reportPlayerReputationChange(PersonAPI person, float delta)
reportPlayerReputationChange in interface CampaignEventListenerpublic void reportPlayerActivatedAbility(AbilityPlugin ability, java.lang.Object param)
reportPlayerActivatedAbility in interface CampaignEventListenerpublic void reportPlayerDeactivatedAbility(AbilityPlugin ability, java.lang.Object param)
reportPlayerDeactivatedAbility in interface CampaignEventListenerpublic void reportBattleFinished(CampaignFleetAPI primaryWinner, BattleAPI battle)
reportBattleFinished in interface CampaignEventListenerpublic void reportBattleOccurred(CampaignFleetAPI primaryWinner, BattleAPI battle)
CampaignEventListenerreportBattleOccurred in interface CampaignEventListenerpublic void setProbability(float p)
CampaignEventPluginsetProbability in interface CampaignEventPluginpublic boolean useEventNameAsId()
useEventNameAsId in interface CampaignEventPluginpublic boolean showLatestMessageIfOngoing()
showLatestMessageIfOngoing in interface CampaignEventPluginpublic void reportPlayerDumpedCargo(CargoAPI cargo)
reportPlayerDumpedCargo in interface CampaignEventListenerpublic void reportPlayerDidNotTakeCargo(CargoAPI cargo)
reportPlayerDidNotTakeCargo in interface CampaignEventListenerpublic void reportEconomyMonthEnd()
reportEconomyMonthEnd in interface CampaignEventListenerpublic void reportEconomyTick(int iterIndex)
reportEconomyTick in interface CampaignEventListener