public class BaseEventPlugin extends java.lang.Object implements CampaignEventPlugin, CampaignEventListener
Modifier and Type | Class and Description |
---|---|
static interface |
BaseEventPlugin.MarketFilter |
CampaignEventPlugin.CampaignEventCategory, CampaignEventPlugin.PriceUpdatePlugin
CampaignEventListener.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 MarketAPI market
protected SectorEntityToken entity
protected FactionAPI faction
protected java.lang.String statModId
protected boolean started
protected MemoryAPI memory
protected float startProbability
public void init(java.lang.String eventType, CampaignEventTarget eventTarget)
CampaignEventPlugin
init
in interface CampaignEventPlugin
public void init(java.lang.String eventType, CampaignEventTarget eventTarget, boolean addListener)
public void setTarget(CampaignEventTarget eventTarget)
protected java.lang.String getLoggingId()
public void cleanup()
CampaignEventPlugin
cleanup
in interface CampaignEventPlugin
public void startEvent()
CampaignEventPlugin
startEvent
in interface CampaignEventPlugin
public void startEvent(boolean addListener)
protected boolean isEventStarted()
public void advance(float amount)
advance
in interface CampaignEventPlugin
public CampaignEventTarget getEventTarget()
getEventTarget
in interface CampaignEventPlugin
public java.lang.String getEventType()
getEventType
in interface CampaignEventPlugin
public java.lang.String getStageIdForLikely()
CampaignEventPlugin
getStageIdForLikely
in interface CampaignEventPlugin
public java.lang.String getStageIdForPossible()
CampaignEventPlugin
getStageIdForPossible
in interface CampaignEventPlugin
public java.util.Map<java.lang.String,java.lang.String> getTokenReplacements()
CampaignEventPlugin
getTokenReplacements
in interface CampaignEventPlugin
public 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()
CampaignEventPlugin
getWarningWhenLikelyPriority
in interface CampaignEventPlugin
public MessagePriority getWarningWhenPossiblePriority()
CampaignEventPlugin
getWarningWhenPossiblePriority
in interface CampaignEventPlugin
public boolean isDone()
isDone
in interface CampaignEventPlugin
public void setParam(java.lang.Object param)
CampaignEventPlugin
setParam
in interface CampaignEventPlugin
public 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 CampaignEventListener
public void reportFleetDespawned(CampaignFleetAPI fleet, CampaignEventListener.FleetDespawnReason reason, java.lang.Object param)
CampaignEventListener
reportFleetDespawned
in interface CampaignEventListener
public void reportFleetJumped(CampaignFleetAPI fleet, SectorEntityToken from, JumpPointAPI.JumpDestination to)
CampaignEventListener
reportFleetJumped
in interface CampaignEventListener
public void reportFleetReachedEntity(CampaignFleetAPI fleet, SectorEntityToken entity)
CampaignEventListener
reportFleetReachedEntity
in interface CampaignEventListener
public boolean allowMultipleOngoingForSameTarget()
CampaignEventPlugin
allowMultipleOngoingForSameTarget
in interface CampaignEventPlugin
public java.lang.String[] getHighlights(java.lang.String stageId)
CampaignEventPlugin
getHighlights
in interface CampaignEventPlugin
public java.awt.Color[] getHighlightColors(java.lang.String stageId)
CampaignEventPlugin
getHighlightColors
in interface CampaignEventPlugin
public void addTokensToList(java.util.List<java.lang.String> list, java.lang.String... keys)
public java.lang.String getEventName()
getEventName
in interface CampaignEventPlugin
public CampaignEventPlugin.CampaignEventCategory getEventCategory()
getEventCategory
in interface CampaignEventPlugin
protected MessagePriority getDefaultPriority()
public java.util.List<java.lang.String> getRelatedCommodities()
getRelatedCommodities
in interface CampaignEventPlugin
public java.util.List<CampaignEventPlugin.PriceUpdatePlugin> getPriceUpdates()
getPriceUpdates
in interface CampaignEventPlugin
public void reportShownInteractionDialog(InteractionDialogAPI dialog)
reportShownInteractionDialog
in interface CampaignEventListener
public void reportPlayerOpenedMarket(MarketAPI market)
reportPlayerOpenedMarket
in interface CampaignEventListener
public java.lang.String getCurrentMessageIcon()
CampaignEventPlugin
getCurrentMessageIcon
in interface CampaignEventPlugin
public java.lang.String getCurrentImage()
CampaignEventPlugin
getCurrentImage
in interface CampaignEventPlugin
public java.lang.String getEventIcon()
CampaignEventPlugin
getEventIcon
in interface CampaignEventPlugin
public boolean showAllMessagesIfOngoing()
CampaignEventPlugin
showAllMessagesIfOngoing
in interface CampaignEventPlugin
public void reportPlayerReputationChange(java.lang.String faction, float delta)
reportPlayerReputationChange
in interface CampaignEventListener
public void reportPlayerEngagement(EngagementResultAPI result)
reportPlayerEngagement
in interface CampaignEventListener
public void reportFleetSpawned(CampaignFleetAPI fleet)
reportFleetSpawned
in interface CampaignEventListener
public void reportPlayerOpenedMarketAndCargoUpdated(MarketAPI market)
reportPlayerOpenedMarketAndCargoUpdated
in interface CampaignEventListener
public void reportEncounterLootGenerated(FleetEncounterContextPlugin plugin, CargoAPI loot)
reportEncounterLootGenerated
in interface CampaignEventListener
public void reportPlayerClosedMarket(MarketAPI market)
reportPlayerClosedMarket
in interface CampaignEventListener
public boolean callEvent(java.lang.String ruleId, InteractionDialogAPI dialog, java.util.List<Misc.Token> params, java.util.Map<java.lang.String,MemoryAPI> memoryMap)
CampaignEventPlugin
callEvent
in interface CampaignEventPlugin
callEvent
in interface CallEvent.CallableEvent
public MemoryAPI getMemory()
getMemory
in interface CampaignEventPlugin
public java.lang.String getId()
CampaignEventPlugin
getId
in interface CampaignEventPlugin
public java.lang.String getStatModId()
public void reportPlayerReputationChange(PersonAPI person, float delta)
reportPlayerReputationChange
in interface CampaignEventListener
public void reportPlayerActivatedAbility(AbilityPlugin ability, java.lang.Object param)
reportPlayerActivatedAbility
in interface CampaignEventListener
public void reportPlayerDeactivatedAbility(AbilityPlugin ability, java.lang.Object param)
reportPlayerDeactivatedAbility
in interface CampaignEventListener
public void reportBattleFinished(CampaignFleetAPI primaryWinner, BattleAPI battle)
reportBattleFinished
in interface CampaignEventListener
public void reportBattleOccurred(CampaignFleetAPI primaryWinner, BattleAPI battle)
CampaignEventListener
reportBattleOccurred
in interface CampaignEventListener
public void setProbability(float p)
CampaignEventPlugin
setProbability
in interface CampaignEventPlugin
public boolean useEventNameAsId()
useEventNameAsId
in interface CampaignEventPlugin
public boolean showLatestMessageIfOngoing()
showLatestMessageIfOngoing
in interface CampaignEventPlugin
public void reportPlayerDumpedCargo(CargoAPI cargo)
reportPlayerDumpedCargo
in interface CampaignEventListener
public void reportPlayerDidNotTakeCargo(CargoAPI cargo)
reportPlayerDidNotTakeCargo
in interface CampaignEventListener
public void reportEconomyMonthEnd()
reportEconomyMonthEnd
in interface CampaignEventListener
public void reportEconomyTick(int iterIndex)
reportEconomyTick
in interface CampaignEventListener
Copyright © 2013 Fractal Softworks, LLC. All Rights Reserved.