public interface FactionAPI extends HasMemory
| Modifier and Type | Interface and Description |
|---|---|
static class |
FactionAPI.ShipPickMode |
static class |
FactionAPI.ShipPickParams |
| Modifier and Type | Method and Description |
|---|---|
void |
addKnownFighter(java.lang.String wingId,
boolean setTimestamp) |
void |
addKnownHullMod(java.lang.String modId) |
void |
addKnownIndustry(java.lang.String industryId) |
void |
addKnownShip(java.lang.String hullId,
boolean setTimestamp) |
void |
addKnownWeapon(java.lang.String weaponId,
boolean setTimestamp) |
void |
addPriorityFighter(java.lang.String wingId) |
void |
addPriorityHullMod(java.lang.String modId) |
void |
addPriorityShip(java.lang.String hullId) |
void |
addPriorityWeapon(java.lang.String weaponId) |
void |
addUseWhenImportingShip(java.lang.String hullId) |
void |
adjustRelationship(java.lang.String id,
float delta) |
boolean |
adjustRelationship(java.lang.String id,
float delta,
RepLevel limit) |
void |
clearShipRoleCache()
Should be called after direct manipulation of the faction's known/always known/priority ship hulls.
|
PersonAPI |
createRandomPerson() |
PersonAPI |
createRandomPerson(FullName.Gender gender) |
PersonAPI |
createRandomPerson(FullName.Gender gender,
java.util.Random random) |
PersonAPI |
createRandomPerson(java.util.Random random) |
boolean |
ensureAtBest(java.lang.String id,
RepLevel level) |
boolean |
ensureAtWorst(java.lang.String id,
RepLevel level) |
java.util.Set<java.lang.String> |
getAlwaysKnownShips()
Hulls that will be in fleets even when the market's ship & weapons supply is from another faction.
|
float |
getApproximateMaxFPPerFleet(FactionAPI.ShipPickMode mode)
Used to figure out how many fleet points raids/expeditions etc divide out for each "large" fleet.
|
java.lang.String |
getBarSound() |
java.awt.Color |
getBaseUIColor() |
java.awt.Color |
getBrightUIColor()
Brighter/slightly cyan version of getBaseUIColor()
|
java.awt.Color |
getColor() |
java.lang.String |
getCrest() |
org.json.JSONObject |
getCustom() |
boolean |
getCustomBoolean(java.lang.String key) |
float |
getCustomFloat(java.lang.String key) |
org.json.JSONObject |
getCustomJSONObject(java.lang.String key) |
java.lang.String |
getCustomString(java.lang.String key) |
java.awt.Color |
getDarkUIColor() |
java.lang.String |
getDisplayIsOrAreOverride() |
java.lang.String |
getDisplayName() |
java.lang.String |
getDisplayNameHasOrHave() |
java.lang.String |
getDisplayNameIsOrAre() |
java.lang.String |
getDisplayNameLong() |
java.lang.String |
getDisplayNameLongWithArticle() |
java.lang.String |
getDisplayNameOverride() |
java.lang.String |
getDisplayNameWithArticle() |
java.lang.String |
getDisplayNameWithArticleOverride() |
java.lang.String |
getDisplayNameWithArticleWithoutArticle() |
FactionDoctrineAPI |
getDoctrine() |
java.lang.String |
getEntityNamePrefix() |
java.lang.String |
getFactionCrestOverride() |
java.lang.String |
getFactionLogoOverride() |
FactionSpecAPI |
getFactionSpec() |
java.util.Map<java.lang.String,java.lang.Float> |
getFighterSellFrequency() |
java.util.Map<java.lang.String,java.lang.Long> |
getFighterTimestamps() |
float |
getFineFraction() |
java.lang.String |
getFleetTypeName(java.lang.String type) |
java.awt.Color |
getGridUIColor() |
java.util.Map<java.lang.String,java.lang.Float> |
getHullFrequency() |
java.util.Map<java.lang.String,java.lang.Float> |
getHullmodSellFrequency() |
java.lang.String |
getId() |
java.util.Set<java.lang.String> |
getIllegalCommodities() |
java.lang.String |
getInternalCommsChannel() |
java.util.Set<java.lang.String> |
getKnownFighters() |
java.util.Set<java.lang.String> |
getKnownHullMods() |
java.util.Set<java.lang.String> |
getKnownIndustries() |
java.util.Set<java.lang.String> |
getKnownShips() |
java.util.Set<java.lang.String> |
getKnownWeapons() |
java.lang.String |
getLogo() |
MemoryAPI |
getMemory() |
MemoryAPI |
getMemoryWithoutUpdate() |
java.util.Map<java.lang.String,java.lang.String> |
getMusicMap() |
int |
getNumAvailableForRole(java.lang.String roleId,
FactionAPI.ShipPickMode mode) |
java.util.LinkedHashSet<java.lang.String> |
getOverriddenHulls()
Hulls that are restricted to specific variants, defined in "variantOverrides" section of the .faction file.
|
WeightedRandomPicker<java.lang.String> |
getPersonalityPicker() |
java.lang.String |
getPersonNamePrefix() |
java.lang.String |
getPersonNamePrefixAOrAn() |
java.lang.String |
getPersonNamePrefixAOrAnOverride() |
WeightedRandomPicker<java.lang.String> |
getPortraits(FullName.Gender gender) |
java.lang.String |
getPost(java.lang.String id) |
java.util.Set<java.lang.String> |
getPriorityFighters() |
java.util.Set<java.lang.String> |
getPriorityHullMods() |
java.util.Set<java.lang.String> |
getPriorityShips() |
java.util.Set<java.lang.String> |
getPriorityWeapons() |
FactionProductionAPI |
getProduction() |
java.lang.String |
getRank(java.lang.String id) |
float |
getRelationship(java.lang.String id) |
RepLevel |
getRelationshipLevel(FactionAPI faction) |
RepLevel |
getRelationshipLevel(java.lang.String id) |
java.awt.Color |
getRelColor(RepLevel level) |
java.awt.Color |
getRelColor(java.lang.String otherFactionId) |
RelationshipAPI |
getRelToPlayer() |
int |
getRepInt(java.lang.String id) |
java.util.LinkedHashSet<java.lang.String> |
getRestrictToVariants() |
java.awt.Color |
getSecondaryColorOverride() |
int |
getSecondaryColorSegmentsOverride() |
int |
getSecondarySegments() |
java.awt.Color |
getSecondaryUIColor() |
java.lang.String |
getShipNamePrefix() |
java.lang.String |
getShipNamePrefixOverride() |
java.util.Map<java.lang.String,java.lang.Long> |
getShipTimestamps() |
java.util.List<java.lang.String> |
getStockFleetIds() |
float |
getTariffFraction() |
float |
getTollFraction() |
java.util.Map<java.lang.String,java.lang.Float> |
getVariantOverrides() |
java.util.Set<java.lang.String> |
getVariantsForRole(java.lang.String roleId) |
float |
getVariantWeightForRole(java.lang.String roleId,
FactionAPI.ShipPickMode mode) |
java.util.Map<java.lang.String,java.lang.Float> |
getWeaponSellFrequency() |
java.util.Map<java.lang.String,java.lang.Long> |
getWeaponTimestamps() |
void |
initSpecIfNeeded() |
boolean |
isAtBest(FactionAPI other,
RepLevel level)
True if the faction (identified by other) is equal to or more hostile than the given level.
|
boolean |
isAtBest(java.lang.String id,
RepLevel level)
True if the faction (identified by id) is equal to or more hostile than the given level.
|
boolean |
isAtWorst(FactionAPI other,
RepLevel level)
True if the faction (identified by other) is equal to or friendlier than the given level.
|
boolean |
isAtWorst(java.lang.String id,
RepLevel level)
True if the faction (identified by id) is equal to or friendlier than the given level.
|
boolean |
isAutoEnableKnownFighters() |
boolean |
isAutoEnableKnownHullmods() |
boolean |
isAutoEnableKnownShips() |
boolean |
isAutoEnableKnownWeapons() |
boolean |
isFighterKnownAt(java.lang.String wing,
java.lang.Long timestamp) |
boolean |
isFighterPriority(java.lang.String wingId) |
boolean |
isHostileTo(FactionAPI other)
True if the faction is hostile to the given faction.
|
boolean |
isHostileTo(java.lang.String other)
True if the faction is hostile to the given faction id.
|
boolean |
isHullModPriority(java.lang.String modId) |
boolean |
isIllegal(CargoStackAPI stack) |
boolean |
isIllegal(java.lang.String commodityId) |
boolean |
isNeutralFaction() |
boolean |
isPlayerFaction() |
boolean |
isShipKnownAt(java.lang.String hullId,
java.lang.Long timestamp) |
boolean |
isShipPriority(java.lang.String hullId) |
boolean |
isShowInIntelTab() |
boolean |
isWeaponKnownAt(java.lang.String weaponId,
java.lang.Long timestamp) |
boolean |
isWeaponPriority(java.lang.String weaponId) |
boolean |
knowsFighter(java.lang.String wingId) |
boolean |
knowsHullMod(java.lang.String modId) |
boolean |
knowsIndustry(java.lang.String industryId) |
boolean |
knowsShip(java.lang.String hullId) |
boolean |
knowsWeapon(java.lang.String weaponId) |
void |
makeCommodityIllegal(java.lang.String commodityId) |
void |
makeCommodityLegal(java.lang.String commodityId) |
java.lang.String |
pickPersonality() |
java.lang.String |
pickRandomShipName() |
java.lang.String |
pickRandomShipName(java.util.Random random) |
java.lang.String |
pickRandomShipName(java.lang.String prefix) |
java.util.List<ShipRolePick> |
pickShip(java.lang.String role,
FactionAPI.ShipPickParams params) |
java.util.List<ShipRolePick> |
pickShip(java.lang.String role,
FactionAPI.ShipPickParams params,
ShipFilter filter,
java.util.Random random) |
float |
pickShipAndAddToFleet(java.lang.String role,
FactionAPI.ShipPickParams params,
CampaignFleetAPI fleet)
May add more than one ship if a fallback specifies to add multiple ships.
|
float |
pickShipAndAddToFleet(java.lang.String role,
FactionAPI.ShipPickParams params,
CampaignFleetAPI fleet,
java.util.Random random) |
java.lang.String |
pickVoice(PersonImportance importance,
java.util.Random random) |
void |
removeKnownFighter(java.lang.String wingId)
All of the blueprints specified in the .faction file are re-added to the faction
every time a savegame is loaded.
|
void |
removeKnownHullMod(java.lang.String modId) |
void |
removeKnownIndustry(java.lang.String industryId) |
void |
removeKnownShip(java.lang.String hullId)
All of the blueprints specified in the .faction file are re-added to the faction
every time a savegame is loaded.
|
void |
removeKnownWeapon(java.lang.String weaponId)
All of the blueprints specified in the .faction file are re-added to the faction
every time a savegame is loaded.
|
void |
removePriorityFighter(java.lang.String wingId) |
void |
removePriorityHullMod(java.lang.String modId) |
void |
removePriorityShip(java.lang.String hullId) |
void |
removePriorityWeapon(java.lang.String weaponId) |
void |
removeUseWhenImportingShip(java.lang.String hullId) |
void |
setAutoEnableKnownFighters(boolean autoEnableKnownFighters) |
void |
setAutoEnableKnownHullmods(boolean autoEnableKnownHullmods) |
void |
setAutoEnableKnownShips(boolean autoEnableKnownShips) |
void |
setAutoEnableKnownWeapons(boolean autoEnableKnownWeapons) |
void |
setDisplayIsOrAreOverride(java.lang.String displayIsOrAreOverride) |
void |
setDisplayNameOverride(java.lang.String displayNameOverride) |
void |
setDisplayNameWithArticleOverride(java.lang.String displayNameWithArticleOverride) |
void |
setFactionCrestOverride(java.lang.String factionCrestOverride) |
void |
setFactionLogoOverride(java.lang.String factionLogoOverride) |
void |
setFighterTimestampToNow(java.lang.String wingId) |
void |
setPersonNamePrefixAOrAnOverride(java.lang.String personNamePrefixAOrAnOverride) |
void |
setRelationship(java.lang.String id,
float newValue) |
void |
setRelationship(java.lang.String id,
RepLevel level) |
void |
setSecondaryColorOverride(java.awt.Color secondaryOverride) |
void |
setSecondaryColorSegmentsOverride(int secondaryColorSegmentsOverride) |
void |
setShipNamePrefixOverride(java.lang.String shipNamePrefixOverride) |
void |
setShipTimestampToNow(java.lang.String hullId) |
void |
setShowInIntelTab(boolean isShowInIntelTab) |
void |
setWeaponTimestampToNow(java.lang.String weaponId) |
boolean |
useWhenImportingShip(java.lang.String hullId) |
void adjustRelationship(java.lang.String id, float delta)
boolean adjustRelationship(java.lang.String id, float delta, RepLevel limit)
void setRelationship(java.lang.String id, float newValue)
void setRelationship(java.lang.String id, RepLevel level)
boolean ensureAtBest(java.lang.String id, RepLevel level)
boolean ensureAtWorst(java.lang.String id, RepLevel level)
RepLevel getRelationshipLevel(FactionAPI faction)
RepLevel getRelationshipLevel(java.lang.String id)
boolean isAtWorst(java.lang.String id, RepLevel level)
id - faction idlevel - the least friendly the faction can beboolean isAtWorst(FactionAPI other, RepLevel level)
other - factionlevel - the least friendly the faction can beboolean isAtBest(java.lang.String id, RepLevel level)
id - faction idlevel - the least hostile the faction can beboolean isAtBest(FactionAPI other, RepLevel level)
other - factionlevel - the least hostile the faction can beboolean isHostileTo(FactionAPI other)
boolean isHostileTo(java.lang.String other)
other - faction idfloat getRelationship(java.lang.String id)
java.lang.String getId()
java.lang.String getDisplayName()
java.lang.String getDisplayNameWithArticle()
java.awt.Color getColor()
java.awt.Color getBaseUIColor()
java.awt.Color getGridUIColor()
java.awt.Color getDarkUIColor()
java.awt.Color getSecondaryUIColor()
java.awt.Color getBrightUIColor()
boolean isNeutralFaction()
boolean isPlayerFaction()
java.util.List<java.lang.String> getStockFleetIds()
float pickShipAndAddToFleet(java.lang.String role, FactionAPI.ShipPickParams params, CampaignFleetAPI fleet)
role - maxFP - fleet - java.lang.String getFleetTypeName(java.lang.String type)
java.lang.String getDisplayNameLong()
java.lang.String getDisplayNameLongWithArticle()
java.lang.String getEntityNamePrefix()
java.awt.Color getRelColor(java.lang.String otherFactionId)
java.util.Set<java.lang.String> getIllegalCommodities()
boolean isIllegal(java.lang.String commodityId)
boolean isIllegal(CargoStackAPI stack)
java.util.List<ShipRolePick> pickShip(java.lang.String role, FactionAPI.ShipPickParams params)
java.util.List<ShipRolePick> pickShip(java.lang.String role, FactionAPI.ShipPickParams params, ShipFilter filter, java.util.Random random)
void makeCommodityIllegal(java.lang.String commodityId)
void makeCommodityLegal(java.lang.String commodityId)
float getTariffFraction()
float getTollFraction()
float getFineFraction()
java.lang.String getInternalCommsChannel()
PersonAPI createRandomPerson()
PersonAPI createRandomPerson(FullName.Gender gender)
java.lang.String getLogo()
org.json.JSONObject getCustom()
MemoryAPI getMemoryWithoutUpdate()
getMemoryWithoutUpdate in interface HasMemoryjava.awt.Color getRelColor(RepLevel level)
RelationshipAPI getRelToPlayer()
java.lang.String getRank(java.lang.String id)
java.lang.String getPost(java.lang.String id)
java.lang.String getDisplayNameIsOrAre()
java.lang.String pickPersonality()
boolean getCustomBoolean(java.lang.String key)
java.lang.String getCustomString(java.lang.String key)
boolean isShowInIntelTab()
void setShowInIntelTab(boolean isShowInIntelTab)
java.lang.String getCrest()
java.lang.String getPersonNamePrefix()
java.lang.String getPersonNamePrefixAOrAn()
java.lang.String pickRandomShipName()
float pickShipAndAddToFleet(java.lang.String role, FactionAPI.ShipPickParams params, CampaignFleetAPI fleet, java.util.Random random)
java.util.Set<java.lang.String> getVariantsForRole(java.lang.String roleId)
PersonAPI createRandomPerson(FullName.Gender gender, java.util.Random random)
PersonAPI createRandomPerson(java.util.Random random)
float getCustomFloat(java.lang.String key)
int getSecondarySegments()
java.lang.String getDisplayNameOverride()
void setDisplayNameOverride(java.lang.String displayNameOverride)
java.lang.String getDisplayNameWithArticleOverride()
void setDisplayNameWithArticleOverride(java.lang.String displayNameWithArticleOverride)
java.lang.String getDisplayIsOrAreOverride()
void setDisplayIsOrAreOverride(java.lang.String displayIsOrAreOverride)
java.lang.String getShipNamePrefixOverride()
void setShipNamePrefixOverride(java.lang.String shipNamePrefixOverride)
java.lang.String getPersonNamePrefixAOrAnOverride()
void setPersonNamePrefixAOrAnOverride(java.lang.String personNamePrefixAOrAnOverride)
java.lang.String getFactionLogoOverride()
void setFactionLogoOverride(java.lang.String factionLogoOverride)
java.lang.String getFactionCrestOverride()
void setFactionCrestOverride(java.lang.String factionCrestOverride)
WeightedRandomPicker<java.lang.String> getPortraits(FullName.Gender gender)
java.util.Set<java.lang.String> getKnownShips()
void addKnownShip(java.lang.String hullId, boolean setTimestamp)
void removeKnownShip(java.lang.String hullId)
java.util.Set<java.lang.String> getKnownWeapons()
void addKnownWeapon(java.lang.String weaponId, boolean setTimestamp)
void removeKnownWeapon(java.lang.String weaponId)
java.util.Set<java.lang.String> getKnownFighters()
void addKnownFighter(java.lang.String wingId, boolean setTimestamp)
void removeKnownFighter(java.lang.String wingId)
java.util.Set<java.lang.String> getKnownIndustries()
void addKnownIndustry(java.lang.String industryId)
void removeKnownIndustry(java.lang.String industryId)
boolean knowsShip(java.lang.String hullId)
boolean knowsWeapon(java.lang.String weaponId)
boolean knowsFighter(java.lang.String wingId)
boolean knowsIndustry(java.lang.String industryId)
java.util.Set<java.lang.String> getPriorityShips()
void addPriorityShip(java.lang.String hullId)
void removePriorityShip(java.lang.String hullId)
boolean isShipPriority(java.lang.String hullId)
java.util.Set<java.lang.String> getPriorityWeapons()
void addPriorityWeapon(java.lang.String weaponId)
void removePriorityWeapon(java.lang.String weaponId)
boolean isWeaponPriority(java.lang.String weaponId)
java.util.Set<java.lang.String> getPriorityFighters()
void addPriorityFighter(java.lang.String wingId)
void removePriorityFighter(java.lang.String wingId)
boolean isFighterPriority(java.lang.String wingId)
boolean isAutoEnableKnownWeapons()
void setAutoEnableKnownWeapons(boolean autoEnableKnownWeapons)
boolean isAutoEnableKnownShips()
void setAutoEnableKnownShips(boolean autoEnableKnownShips)
boolean isAutoEnableKnownFighters()
void setAutoEnableKnownFighters(boolean autoEnableKnownFighters)
boolean isAutoEnableKnownHullmods()
void setAutoEnableKnownHullmods(boolean autoEnableKnownHullmods)
void addKnownHullMod(java.lang.String modId)
void removeKnownHullMod(java.lang.String modId)
boolean knowsHullMod(java.lang.String modId)
java.util.Set<java.lang.String> getKnownHullMods()
void addPriorityHullMod(java.lang.String modId)
void removePriorityHullMod(java.lang.String modId)
boolean isHullModPriority(java.lang.String modId)
java.util.Set<java.lang.String> getPriorityHullMods()
FactionDoctrineAPI getDoctrine()
java.util.Map<java.lang.String,java.lang.Float> getVariantOverrides()
java.util.LinkedHashSet<java.lang.String> getOverriddenHulls()
java.util.Map<java.lang.String,java.lang.Float> getHullFrequency()
java.util.Set<java.lang.String> getAlwaysKnownShips()
void addUseWhenImportingShip(java.lang.String hullId)
void removeUseWhenImportingShip(java.lang.String hullId)
boolean useWhenImportingShip(java.lang.String hullId)
void clearShipRoleCache()
WeightedRandomPicker<java.lang.String> getPersonalityPicker()
FactionProductionAPI getProduction()
java.util.Map<java.lang.String,java.lang.Long> getWeaponTimestamps()
java.util.Map<java.lang.String,java.lang.Long> getFighterTimestamps()
java.util.Map<java.lang.String,java.lang.Long> getShipTimestamps()
void setShipTimestampToNow(java.lang.String hullId)
void setWeaponTimestampToNow(java.lang.String weaponId)
void setFighterTimestampToNow(java.lang.String wingId)
boolean isShipKnownAt(java.lang.String hullId, java.lang.Long timestamp)
boolean isWeaponKnownAt(java.lang.String weaponId, java.lang.Long timestamp)
boolean isFighterKnownAt(java.lang.String wing, java.lang.Long timestamp)
int getNumAvailableForRole(java.lang.String roleId, FactionAPI.ShipPickMode mode)
java.lang.String getDisplayNameHasOrHave()
java.lang.String getDisplayNameWithArticleWithoutArticle()
java.lang.String pickRandomShipName(java.util.Random random)
float getApproximateMaxFPPerFleet(FactionAPI.ShipPickMode mode)
java.util.Map<java.lang.String,java.lang.String> getMusicMap()
java.lang.String getBarSound()
int getRepInt(java.lang.String id)
java.lang.String pickVoice(PersonImportance importance, java.util.Random random)
java.lang.String getShipNamePrefix()
java.util.Map<java.lang.String,java.lang.Float> getWeaponSellFrequency()
java.util.Map<java.lang.String,java.lang.Float> getFighterSellFrequency()
java.util.Map<java.lang.String,java.lang.Float> getHullmodSellFrequency()
FactionSpecAPI getFactionSpec()
void initSpecIfNeeded()
org.json.JSONObject getCustomJSONObject(java.lang.String key)
float getVariantWeightForRole(java.lang.String roleId, FactionAPI.ShipPickMode mode)
java.awt.Color getSecondaryColorOverride()
void setSecondaryColorOverride(java.awt.Color secondaryOverride)
int getSecondaryColorSegmentsOverride()
void setSecondaryColorSegmentsOverride(int secondaryColorSegmentsOverride)
java.lang.String pickRandomShipName(java.lang.String prefix)
java.util.LinkedHashSet<java.lang.String> getRestrictToVariants()