Package com.fs.starfarer.api.campaign
Interface SectorAPI
public interface SectorAPI
Note: generics can not be used in scripts.
They are used in this API purely to show the return/parameter types of functions more clearly.
- Author:
- Alex Mosolov Copyright 2012 Fractal Softworks, LLC
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addListener
(CampaignEventListener listener) void
addListenerWithTimeout
(CampaignEventListener listener, float daysToKeep) addPing
(SectorEntityToken entity, CampaignPingSpec custom) addPing
(SectorEntityToken entity, String pingType) See data/campaign/pings.json for ping types.addPing
(SectorEntityToken entity, String pingType, Color colorOverride) void
addScript
(EveryFrameScript script) void
addTransientListener
(CampaignEventListener listener) void
addTransientScript
(EveryFrameScript script) adjustPlayerReputation
(Object action, PersonAPI person) Adjust the player's reputation with the specified person, based on the action.adjustPlayerReputation
(Object action, String factionId) Adjust the player's reputation with the specified faction, based on the action.createNascentGravityWell
(SectorEntityToken target, float radius) createStarSystem
(String name) void
doHyperspaceTransition
(CampaignFleetAPI fleet, SectorEntityToken jumpLocation, JumpPointAPI.JumpDestination dest) void
doHyperspaceTransition
(CampaignFleetAPI fleetAPI, SectorEntityToken jumpLocation, JumpPointAPI.JumpDestination dest, float initialDelay) genUID()
All star systems and hyperspace.getClock()
getEntitiesWithTag
(String tag) Iterates through hyperspace and all star systems.getEntityById
(String id) Will look for the entity in all LocationAPIs.getFaction
(String factionId) getIntel()
long
"global" memory.Can be used (including by classes that are not part of the savegame - i.e.long
Same as getCharacterData().getMemoryWithoutUpdate()org.lwjgl.util.vector.Vector2f
getRules()
getStarSystem
(String name) boolean
boolean
hasTransientScript
(Class<?> clazz) boolean
boolean
true during the during-game-creation time passing.boolean
boolean
boolean
boolean
boolean
isPaused()
void
layInCourseFor
(SectorEntityToken target) void
registerPlugin
(CampaignPlugin plugin) void
removeListener
(CampaignEventListener listener) void
removeScript
(EveryFrameScript script) void
void
removeStarSystem
(StarSystemAPI system) void
Useful for remove star systems from scripts etc where using removeStarSystem() would cause a ConcurrentModificationException.void
void
void
reportBattleFinished
(CampaignFleetAPI primaryWinner, BattleAPI battle) Called after an autoresolve round that finishes a battle, after reportBattleOccurred.void
reportBattleOccurred
(CampaignFleetAPI primaryWinner, BattleAPI battle) Called once per each autoresolve round of the battle.void
void
reportEconomyTick
(int iterIndex) void
reportEncounterLootGenerated
(FleetEncounterContextPlugin plugin, CargoAPI loot) void
reportEventStage
(CampaignEventPlugin event, String stage, MessagePriority priority) Deprecated.void
reportEventStage
(CampaignEventPlugin event, String stage, SectorEntityToken sendFrom, MessagePriority priority) Deprecated.void
reportEventStage
(CampaignEventPlugin event, String stage, SectorEntityToken sendFrom, MessagePriority priority, OnMessageDeliveryScript onDelivery) Deprecated.void
reportFleetDespawned
(CampaignFleetAPI fleet, CampaignEventListener.FleetDespawnReason reason, Object param) void
reportFleetJumped
(CampaignFleetAPI fleet, SectorEntityToken from, JumpPointAPI.JumpDestination to) void
reportFleetReachedEntity
(CampaignFleetAPI fleet, SectorEntityToken entity) void
reportPlayerActivatedAbility
(AbilityPlugin ability, Object param) void
reportPlayerClosedMarket
(MarketAPI market) void
reportPlayerDeactivatedAbility
(AbilityPlugin ability, Object param) void
void
reportPlayerDumpedCargo
(CargoAPI cargo) void
void
reportPlayerMarketTransaction
(PlayerMarketTransaction transaction) void
reportPlayerOpenedMarket
(MarketAPI market) Player opened the core UI while interacting with an entity that has a market.void
void
reportPlayerReputationChange
(PersonAPI person, float delta) void
reportPlayerReputationChange
(String faction, float delta) void
Shouldn't have to call this as the relevant showInteractionDialog() methods already do.void
setCurrentLocation
(LocationAPI location) void
setCurrentlyOpenMarket
(MarketAPI currentlyOpenMarket) void
setDifficulty
(String difficulty) void
setFastForwardIteration
(boolean isFastForwardIteration) void
setInFastAdvance
(boolean isInNewGameAdvance) void
setInNewGameAdvance
(boolean isInNewGameAdvance) void
setInSectorGen
(boolean isInSectorGen) void
setLastPlayerBattleTimestamp
(long lastPlayerBattleTimestamp) void
setLastPlayerBattleWon
(boolean lastPlayerBattleWon) void
setPaused
(boolean paused) void
setPlayerBattleSeed
(long nextPlayerBattleSeed) void
setPlayerFleet
(CampaignFleetAPI playerFleet) void
setRespawnLocation
(LocationAPI respawnLocation) void
setSeedString
(String seedString) void
unregisterPlugin
(String pluginId)
-
Method Details
-
getPersistentData
Can be used (including by classes that are not part of the savegame - i.e. ModPlugin or transient CampaignPlugin implementations) to save data between sessions.- Returns:
-
registerPlugin
-
unregisterPlugin
-
getStarSystem
-
createStarSystem
-
getStarSystems
List<StarSystemAPI> getStarSystems() -
removeStarSystem
-
setCurrentLocation
-
getHyperspace
LocationAPI getHyperspace() -
doHyperspaceTransition
void doHyperspaceTransition(CampaignFleetAPI fleet, SectorEntityToken jumpLocation, JumpPointAPI.JumpDestination dest) - Parameters:
fleet
-jumpLocation
- can be null. If not, fleet will attempt to reach it before jumping. Failure will result in aborted jump.dest
-
-
getClock
CampaignClockAPI getClock() -
getPlayerFleet
CampaignFleetAPI getPlayerFleet() -
getFaction
-
getAllFactions
List<FactionAPI> getAllFactions() -
getAllWeaponIds
-
getAllEmptyVariantIds
-
getAllFighterWingIds
-
getCampaignUI
CampaignUIAPI getCampaignUI() -
getEventManager
CampaignEventManagerAPI getEventManager() -
setPaused
void setPaused(boolean paused) -
isPaused
boolean isPaused() -
addScript
-
removeScriptsOfClass
-
removeScript
-
addTransientScript
-
removeTransientScript
-
getCurrentLocation
LocationAPI getCurrentLocation() -
getRespawnLocation
LocationAPI getRespawnLocation() -
setRespawnLocation
-
getRespawnCoordinates
org.lwjgl.util.vector.Vector2f getRespawnCoordinates() -
getCharacterData
CharacterDataAPI getCharacterData() -
reportEventStage
@Deprecated void reportEventStage(CampaignEventPlugin event, String stage, MessagePriority priority) Deprecated.Does nothing. Replaced with getIntelManager(). -
reportEventStage
@Deprecated void reportEventStage(CampaignEventPlugin event, String stage, SectorEntityToken sendFrom, MessagePriority priority) Deprecated.Does nothing. Replaced with getIntelManager(). -
reportEventStage
@Deprecated void reportEventStage(CampaignEventPlugin event, String stage, SectorEntityToken sendFrom, MessagePriority priority, OnMessageDeliveryScript onDelivery) Deprecated.Does nothing. Replaced with getIntelManager(). -
getRules
RulesAPI getRules() -
getLastPlayerBattleTimestamp
long getLastPlayerBattleTimestamp() -
isLastPlayerBattleWon
boolean isLastPlayerBattleWon() -
getMemory
MemoryAPI getMemory()"global" memory.- Returns:
-
getMemoryWithoutUpdate
MemoryAPI getMemoryWithoutUpdate() -
getIntel
IntelDataAPI getIntel() -
getEntityById
Will look for the entity in all LocationAPIs.- Parameters:
id
-- Returns:
-
getEntitiesWithTag
Iterates through hyperspace and all star systems.- Parameters:
tag
-- Returns:
-
getEconomy
EconomyAPI getEconomy() -
addListener
-
addTransientListener
-
addListenerWithTimeout
-
removeListener
-
getAllListeners
List<CampaignEventListener> getAllListeners() -
reportPlayerMarketTransaction
-
reportFleetDespawned
void reportFleetDespawned(CampaignFleetAPI fleet, CampaignEventListener.FleetDespawnReason reason, Object param) -
reportFleetJumped
void reportFleetJumped(CampaignFleetAPI fleet, SectorEntityToken from, JumpPointAPI.JumpDestination to) -
reportFleetReachedEntity
-
reportBattleOccurred
Called once per each autoresolve round of the battle. Also called after a player battle occurred. Fleets and their compositons snapshotted right before the autoresolve round.- Parameters:
battle
-primaryWinner
-
-
reportBattleFinished
Called after an autoresolve round that finishes a battle, after reportBattleOccurred. Also called after a player battle occurred. Fleets and their compositons snapshotted right before the autoresolve round.- Parameters:
battle
-primaryWinner
-
-
adjustPlayerReputation
ReputationActionResponsePlugin.ReputationAdjustmentResult adjustPlayerReputation(Object action, String factionId) Adjust the player's reputation with the specified faction, based on the action. This method will pick the highest-priority ReputationActionResponsePlugin and call its handlePlayerReputationAction() method with these parameters. See CoreCampaignPluginImpl.handlePlayerReputationAction() for an implementation example.- Parameters:
action
-faction
-- Returns:
-
adjustPlayerReputation
ReputationActionResponsePlugin.ReputationAdjustmentResult adjustPlayerReputation(Object action, PersonAPI person) Adjust the player's reputation with the specified person, based on the action. This method will pick the highest-priority ReputationActionResponsePlugin and call its handlePlayerReputationAction() method with these parameters. See CoreCampaignPluginImpl.handlePlayerReputationAction() for an implementation example.- Parameters:
action
-person
-- Returns:
-
addPing
See data/campaign/pings.json for ping types.- Parameters:
entity
-pingType
-
-
reportShowInteractionDialog
Shouldn't have to call this as the relevant showInteractionDialog() methods already do.- Parameters:
dialog
-
-
reportPlayerOpenedMarket
Player opened the core UI while interacting with an entity that has a market.- Parameters:
market
-
-
reportPlayerReputationChange
-
reportPlayerReputationChange
-
reportPlayerEngagement
-
isInFastAdvance
boolean isInFastAdvance()true during the during-game-creation time passing.- Returns:
-
getPlayerPerson
PersonAPI getPlayerPerson() -
reportPlayerOpenedMarketAndCargoUpdated
-
reportEncounterLootGenerated
-
reportPlayerClosedMarket
-
reportPlayerActivatedAbility
-
reportPlayerDeactivatedAbility
-
reportPlayerDumpedCargo
-
getImportantPeople
ImportantPeopleAPI getImportantPeople() -
getPlayerFaction
FactionAPI getPlayerFaction() -
addPing
-
getViewport
ViewportAPI getViewport() -
getAllLocations
List<LocationAPI> getAllLocations()All star systems and hyperspace.- Returns:
-
getDifficulty
String getDifficulty() -
setDifficulty
-
isIronMode
boolean isIronMode() -
hasScript
-
getPluginPicker
PluginPickerAPI getPluginPicker() -
getSeedString
String getSeedString() -
setSeedString
-
genUID
String genUID() -
getUIData
PersistentUIDataAPI getUIData() -
setInFastAdvance
void setInFastAdvance(boolean isInNewGameAdvance) -
isInNewGameAdvance
boolean isInNewGameAdvance() -
setInNewGameAdvance
void setInNewGameAdvance(boolean isInNewGameAdvance) -
setPlayerFleet
-
setLastPlayerBattleTimestamp
void setLastPlayerBattleTimestamp(long lastPlayerBattleTimestamp) -
setLastPlayerBattleWon
void setLastPlayerBattleWon(boolean lastPlayerBattleWon) -
reportPlayerDidNotTakeCargo
-
getScripts
List<EveryFrameScript> getScripts() -
getTransientScripts
List<EveryFrameScript> getTransientScripts() -
getGenericPlugins
GenericPluginManagerAPI getGenericPlugins() -
addPing
-
reportEconomyMonthEnd
void reportEconomyMonthEnd() -
reportEconomyTick
void reportEconomyTick(int iterIndex) -
getPlayerStats
MutableCharacterStatsAPI getPlayerStats() -
getAutofitVariants
AutofitVariantsAPI getAutofitVariants() -
getIntelManager
IntelManagerAPI getIntelManager() -
getListenerManager
ListenerManagerAPI getListenerManager() -
removeTransientScriptsOfClass
-
getPlayerBattleSeed
long getPlayerBattleSeed() -
setPlayerBattleSeed
void setPlayerBattleSeed(long nextPlayerBattleSeed) -
createNascentGravityWell
-
hasTransientScript
-
getCustomEntitiesWithTag
-
doHyperspaceTransition
void doHyperspaceTransition(CampaignFleetAPI fleetAPI, SectorEntityToken jumpLocation, JumpPointAPI.JumpDestination dest, float initialDelay) -
layInCourseFor
-
isFastForwardIteration
boolean isFastForwardIteration() -
setFastForwardIteration
void setFastForwardIteration(boolean isFastForwardIteration) -
getPlayerMemoryWithoutUpdate
MemoryAPI getPlayerMemoryWithoutUpdate()Same as getCharacterData().getMemoryWithoutUpdate()- Returns:
-
removeStarSystemNextFrame
Useful for remove star systems from scripts etc where using removeStarSystem() would cause a ConcurrentModificationException.- Parameters:
system
-
-
getMousedOverEntity
SectorEntityToken getMousedOverEntity() -
getCurrentlyOpenMarket
MarketAPI getCurrentlyOpenMarket() -
setCurrentlyOpenMarket
-
isInSectorGen
boolean isInSectorGen() -
setInSectorGen
void setInSectorGen(boolean isInSectorGen)
-