subvention¶
Source: base/tealdef/game_mechanics/subventions/subvention.d.tl
Notes
Types of the subsidy system, its saved state and the interface each subsidy type script implements.
SubventionBonusMalus¶
record global base/tealdef/game_mechanics/subventions/subvention.d.tl:3
global record SubventionBonusMalus
Notes
One reward or penalty of a subsidy, applied with SubventionUtil.applyBonusMalus on accept, completion or failure.
Details
Create it with SubventionUtil.makeBonusMalusMoney, makeBonusMalusReputation or makeBonusMalusTownExp.
params has the fields of the record named by type.
Fields
| Name | Type | Description |
|---|---|---|
type |
Type |
Kind of this entry. |
params |
Param |
Values of this entry; cast to the record named by type. |
SubventionBonusMalus.Type¶
enum base/tealdef/game_mechanics/subventions/subvention.d.tl:4
enum Type
Notes
Kind of reward or penalty.
Used in the base game: 1 time in 1 file
base/content/game_mechanics/game_mechanics/subventions/subvention_util.tl:177
| Value | Description |
|---|---|
"Money" |
Payment or fine in game currency. |
"Reputation" |
Change of the player's reputation in a town. |
"TownExperience" |
Level progress of a town. |
SubventionBonusMalus.Money¶
record base/tealdef/game_mechanics/subventions/subvention.d.tl:9
record Money
Notes
Params of a Money entry.
Used in the base game: 2 times in 1 file
base/content/game_mechanics/game_mechanics/subventions/subvention_util.tl:127
Fields
| Name | Type | Description |
|---|---|---|
amount |
integer |
Amount in game currency. Paid when the entry is applied as positive, charged otherwise. |
SubventionBonusMalus.Reputation¶
record base/tealdef/game_mechanics/subventions/subvention.d.tl:12
record Reputation
Notes
Params of a Reputation entry.
Used in the base game: 2 times in 1 file
base/content/game_mechanics/game_mechanics/subventions/subvention_util.tl:137
Fields
| Name | Type | Description |
|---|---|---|
townEntity |
EntityUtil.EntityAndRevision |
Town whose reputation changes. |
amount |
number |
Reputation change as a fraction (shown as a percentage). |
SubventionBonusMalus.TownExperience¶
record base/tealdef/game_mechanics/subventions/subvention.d.tl:16
record TownExperience
Notes
Params of a TownExperience entry.
Used in the base game: 2 times in 1 file
base/content/game_mechanics/game_mechanics/subventions/subvention_util.tl:145
Fields
| Name | Type | Description |
|---|---|---|
townEntity |
EntityUtil.EntityAndRevision |
Town that gains level progress. |
amount |
number |
Level progress as a fraction (shown as a percentage). |
SubventionBonusMalus.Param¶
record base/tealdef/game_mechanics/subventions/subvention.d.tl:20
record Param
Notes
Union of the params records, the declared type of params.
Used in the base game: 1 time in 1 file
base/content/game_mechanics/game_mechanics/subventions/subvention_util.tl:177
Fields
| Name | Type | Description |
|---|---|---|
amount |
integer |
Amount; its meaning depends on type. |
townEntity |
EntityUtil.EntityAndRevision |
Town for Reputation and TownExperience entries. |
SubventionBonusMalus.Data¶
record base/tealdef/game_mechanics/subventions/subvention.d.tl:28
record Data
Notes
Display line for a reward or penalty, as made by SubventionUtil.getData.
Used in the base game: 2 times in 2 files
base/content/game_mechanics/game_mechanics/subventions/subvention_util.tl:186
subvention_util.getData = function(upfront : {SubventionBonusMalus}, positive : boolean) : {SubventionBonusMalus.Data}
base/content/game_mechanics/game_mechanics/subventions/subventions_gui.tl:30
Fields
| Name | Type | Description |
|---|---|---|
text |
string |
Translated text, e.g. "$1,000,000 Payment" or "10% Reputation in Davao". |
ISubvention¶
interface global base/tealdef/game_mechanics/subventions/subvention.d.tl:33
global interface ISubvention
Notes
One subsidy instance as stored in SubventionState.
Details
The subsidy game script moves an instance from proposedSubventions to activeSubventions on the
Subvention event onAccept, then to completedSubventions when the type's isComplete returns
true, or to failedSubventions when shouldDespawn returns a reason while it is active.
Fields
| Name | Type | Description |
|---|---|---|
data |
ISubventionData |
Data of the subsidy; cast it to the type's own record. |
id |
string |
Res name of the subsidy type, e.g. ::/game_mechanics/subventions/deliver_cargo/deliver_cargo.res. |
acceptedTime |
number |
Game time (ms) when the player accepted the offer; nil while proposed. |
spawnTime |
number |
Game time (ms) when the offer was created. |
completedTime |
number |
Game time (ms) when the subsidy was fulfilled; nil until then. |
uid |
number |
Unique id of the subsidy within its type. Accept and decline events and notifications refer to it. |
ISubvention.ISubventionData¶
interface base/tealdef/game_mechanics/subventions/subvention.d.tl:34
interface ISubventionData
Notes
Data part of a subsidy. Each subsidy type extends it with its own fields, e.g. the target entity.
Details
Start from SubventionUtil.makeDefaultSubventionTemplate, which sets name and the three durations.
Used in the base game: 20 times in 8 files
base/content/game_mechanics/game_mechanics/subventions/subventions.script.tl:95
local spawnSubvention = function(state : SubventionState, currentGameTime : number, subventionName : string, data : ISubvention.ISubventionData, uid: number) :
base/content/game_mechanics/game_mechanics/subventions/subvention_util.tl:272
subvention_util.defaultTimeout = function<T is ISubvention.ISubventionData>(state : Subvention<T>, currentGameTime : number) : ISubvention.FailReason
base/content/game_mechanics/game_mechanics/subventions/subventions_gui.tl:221
base/content/game_mechanics/game_mechanics/subventions/deliver_cargo/deliver_cargo.script.tl:40
base/content/game_mechanics/game_mechanics/subventions/deliver_workers/deliver_workers.script.tl:40
base/content/game_mechanics/game_mechanics/subventions/deliver_cargo_town/deliver_cargo_town.script.tl:44
… and 2 more files.
Fields
| Name | Type | Description |
|---|---|---|
upfront |
{SubventionBonusMalus} |
Rewards applied when the player accepts the offer. |
complete |
{SubventionBonusMalus} |
Rewards applied when the subsidy is fulfilled. |
failure |
{SubventionBonusMalus} |
Penalties applied when the subsidy fails. The base game types repeat the upfront payment here, so it is paid back. |
name |
string |
Translated title of the subsidy, e.g. "Supply Industry". |
expireDurationProposed |
number |
Time (ms) the offer stays open before it is withdrawn; -1 means it never expires. |
expireDuration |
number |
Time (ms) after acceptance to fulfil the subsidy. |
effectDuration |
integer |
Time (ms) the reward effect lasts after completion; then the subsidy is removed. The cargo and passenger types show the effect as "2x Income". |
toDeliver |
integer |
Amount the player has to deliver, for the cargo subsidies one unit per delivered cargo item. |
delivered |
integer |
Amount delivered so far. |
ISubvention.ISpecificSubventionParam¶
interface base/tealdef/game_mechanics/subventions/subvention.d.tl:46
interface ISpecificSubventionParam
Notes
Parameters for spawning a given subsidy type through the Subvention script event subventionSpawn. The type's spawnSpecific receives them.
Example
-- urbangames_campaign_mission_06
local subvention : DeliverCargoSubventionParam = {
target = entity,
expireDurationProposed = -1,
}
api.cmd.sendCommand(api.cmd.makeScriptingSendEventCmd("", "Subvention", "subventionSpawn", {
name = "::/game_mechanics/subventions/deliver_cargo/deliver_cargo.res",
specific = subvention,
}))
Used in the base game: 31 times in 5 files
base/content/mission/mission/tasks/subsidies/subsidies.tl:34
local spawnSubsidies = function(subsidiesRes: {{ResName, ISubvention.ISpecificSubventionParam}}, guiTimeSeconds : number) : {{number, MissionTaskSubsidies.Statu
base/content/game_mechanics/game_mechanics/subventions/subventions.script.tl:123
local spawnSpecific = function(state: SubventionState, currentGameTime: number, subventionName: string, param: ISubvention.ISpecificSubventionParam) : boolean
mods/release/urbangames_campaign_mission_06/content/subventions/subventions/deliver_visitors/deliver_visitors.script.tl:47
mods/release/urbangames_campaign_mission_06/content/mission/mission/mission_story_cutscene_only.tl:41
mods/release/urbangames_campaign_mission_06/content/mission/mission/mission_story.tl:41
Fields
ISubvention.Status¶
enum base/tealdef/game_mechanics/subventions/subvention.d.tl:58
enum Status
Notes
Stage of a subsidy.
Used in the base game: 15 times in 7 files
base/content/game_mechanics/game_mechanics/subventions/subvention_util.tl:379
subvention_util.makeDefaultNotificationData = function(status : ISubvention.Status, failReason : ISubvention.FailReason, icon : string,
base/content/game_mechanics/game_mechanics/subventions/deliver_cargo/deliver_cargo.script.tl:244
getNotificationData = function(subventionId : string, params : DeliverCargoNotificationParams, status : ISubvention.Status, reason : ISubvention.FailReason, ent
base/content/game_mechanics/game_mechanics/subventions/deliver_workers/deliver_workers.script.tl:200
getNotificationData = function(subventionId : string, params : DeliverWorkersNotificationParams, status : ISubvention.Status, reason : ISubvention.FailReason, e
base/content/game_mechanics/game_mechanics/subventions/deliver_cargo_town/deliver_cargo_town.script.tl:341
getNotificationData = function(subventionId : string, params : DeliverCargoTownNotificationParams, status : ISubvention.Status, reason : ISubvention.FailReason,
base/content/game_mechanics/game_mechanics/subventions/deliver_passengers/deliver_passengers.script.tl:316
getNotificationData = function(subventionId : string, params : DeliverPassengersNotificationParams, status : ISubvention.Status, reason : ISubvention.FailReason
base/content/game_mechanics/game_mechanics/notifications/types/subvention.script.tl:24
… and 1 more files.
| Value | Description |
|---|---|
"Proposed" |
Offered, not yet accepted. |
"Active" |
Accepted and running. |
"Complete" |
Fulfilled; the reward effect is running. |
"Failed" |
Not fulfilled in time. |
ISubvention.FailReason¶
enum base/tealdef/game_mechanics/subventions/subvention.d.tl:65
enum FailReason
Notes
Why a subsidy ended without being fulfilled.
Used in the base game: 23 times in 9 files
base/content/game_mechanics/game_mechanics/subventions/subventions.script.tl:27
base/content/game_mechanics/game_mechanics/subventions/subvention_util.tl:272
subvention_util.defaultTimeout = function<T is ISubvention.ISubventionData>(state : Subvention<T>, currentGameTime : number) : ISubvention.FailReason
base/content/game_mechanics/game_mechanics/subventions/deliver_cargo/deliver_cargo.script.tl:244
getNotificationData = function(subventionId : string, params : DeliverCargoNotificationParams, status : ISubvention.Status, reason : ISubvention.FailReason, ent
base/content/game_mechanics/game_mechanics/subventions/deliver_workers/deliver_workers.script.tl:200
getNotificationData = function(subventionId : string, params : DeliverWorkersNotificationParams, status : ISubvention.Status, reason : ISubvention.FailReason, e
base/content/game_mechanics/game_mechanics/subventions/deliver_cargo_town/deliver_cargo_town.script.tl:341
getNotificationData = function(subventionId : string, params : DeliverCargoTownNotificationParams, status : ISubvention.Status, reason : ISubvention.FailReason,
base/content/game_mechanics/game_mechanics/subventions/deliver_passengers/deliver_passengers.script.tl:316
… and 3 more files.
| Value | Description |
|---|---|
"None" |
No failure. |
"Timeout" |
A deadline passed (see SubventionUtil.defaultTimeout). |
"InvalidEntity" |
A target entity was removed or replaced. |
Subvention¶
record global base/tealdef/game_mechanics/subventions/subvention.d.tl:72
global record Subvention<T is ISubvention.ISubventionData> is ISubvention
Notes
Subsidy instance with its data typed as T.
Fields
| Name | Type | Description |
|---|---|---|
data |
T |
Data of the subsidy. |
SubventionState¶
record global base/tealdef/game_mechanics/subventions/subvention.d.tl:76
global record SubventionState
Notes
Saved state of the subsidy game script ::/game_mechanics/subventions/subventions.gs.
Details
Read it with api.engine.system.gameScriptSystem.getEntityForGameScript("::/game_mechanics/subventions/subventions.gs")
and the GAME_SCRIPT component, as SubventionUtil.getSubventionAndStatusFromGameScript does.
A random offer spawns when the spawn interval has passed since lastSpawnTime and fewer than 5 subsidies are active.
Fields
| Name | Type | Description |
|---|---|---|
lastSpawnTime |
number |
Game time (ms) of the last spawned offer; -1 before the first one. |
proposedSubventions |
{ISubvention} |
Open offers. |
activeSubventions |
{ISubvention} |
Accepted subsidies that are running. |
completedSubventions |
{ISubvention} |
Fulfilled subsidies whose reward effect is still running. |
failedSubventions |
{ISubvention} |
Subsidies that failed while active. |
usedUids |
{string : {string : boolean}} |
Per subsidy type res name, the uids already spawned (key is the uid as string). true while the subsidy exists, false after it ended. |
version |
integer |
State version; SubventionLegacyUtil.updateLegacyState upgrades states older than SubventionLegacyUtil.CurrentVersion. |
spawnIntervalModifier |
number |
1.0 is "neutral" (doing nothing) |
pause |
boolean |
No subsidies spawn or update while true. Set with the Subvention event setPause (param is a boolean). |
SubventionIcons¶
record global base/tealdef/game_mechanics/subventions/subvention.d.tl:88
global record SubventionIcons
Notes
Icon paths of a subsidy type for each status, read by SubventionUtil.getIcon.
Fields
SubventionDesc¶
record global base/tealdef/game_mechanics/subventions/subvention.d.tl:96
global record SubventionDesc
Notes
Data of a generic res of type subvention, one per subsidy type.
Example
-- ::/game_mechanics/subventions/deliver_cargo/deliver_cargo.res.lua
function data()
return {
type = "subvention",
data = {
scriptFile = "::/game_mechanics/subventions/deliver_cargo/deliver_cargo.script@deliver_cargo",
icons = {
fallback = "::/game_mechanics/subventions/deliver_cargo/deliver_cargo.tga",
}
}
}
end
Fields
| Name | Type | Description |
|---|---|---|
scriptFile |
string |
Script table of the type (<script file>@<table name>) that implements SubventionScript. The game script looks up each function as scriptFile .. ".canSpawn" and so on. |
icons |
SubventionIcons |
Icons per status. |
SubventionCardData¶
record global base/tealdef/game_mechanics/subventions/subvention.d.tl:101
global record SubventionCardData
Notes
Content of a subsidy card and window, returned by the type's getCardData.
Details
Start from SubventionUtil.makeDefaultCardData and add location, progress, description and the cargo fields.
Fields
| Name | Type | Description |
|---|---|---|
title |
Entry |
Icon and title of the subsidy. |
deadline |
Entry |
Calendar icon and the formatted time to fulfil the subsidy. Hidden in the window once the deadline has passed. |
description |
string |
Translated description for the current status. |
expireDuration |
Expiration |
Remaining time; set only while the subsidy is active. |
progress |
Progress |
Delivery progress; set by the cargo subsidies while active. |
location |
Location |
Source and target of the subsidy. |
cargoIcons |
{string} |
Icon paths of the cargo types to deliver. |
cargoToDeliver |
integer |
Amount to deliver, shown after the cargo icons. |
upfront |
{SubventionBonusMalus.Data} |
Display lines of the upfront rewards. |
failure |
{SubventionBonusMalus.Data} |
Display lines of the penalties. |
complete |
{SubventionBonusMalus.Data} |
Display lines of the completion rewards. |
status |
ISubvention.Status |
Status the card was made for. |
layerConfig |
LayerConfig |
Map layer shown with the window, e.g. cargo flow arrows from suppliers to the target. |
SubventionCardData.Entry¶
record base/tealdef/game_mechanics/subventions/subvention.d.tl:102
record Entry
Notes
Icon with a text.
Fields
| Name | Type | Description |
|---|---|---|
icon |
string |
Icon path. |
name |
string |
Text next to the icon. |
SubventionCardData.Expiration¶
record base/tealdef/game_mechanics/subventions/subvention.d.tl:110
record Expiration
Notes
Remaining time of a running subsidy.
Used in the base game: 1 time in 1 file
base/content/game_mechanics/game_mechanics/subventions/subventions_gui.tl:76
Fields
| Name | Type | Description |
|---|---|---|
value |
number |
Remaining share of expireDuration, from 1 (just accepted) to 0. |
name |
string |
Remaining time, formatted for the current calendar speed. |
SubventionCardData.Progress¶
record base/tealdef/game_mechanics/subventions/subvention.d.tl:116
record Progress
Notes
Delivery progress.
Fields
| Name | Type | Description |
|---|---|---|
value |
number |
Progress from 0 to 1. |
text |
string |
Progress as text, e.g. "12 / 50". |
SubventionCardData.Location¶
record base/tealdef/game_mechanics/subventions/subvention.d.tl:122
record Location
Notes
Source and target shown in the window, each with a locate and a select button.
Fields
| Name | Type | Description |
|---|---|---|
from |
{Engine.Entity, string} |
Source entity and its display name. |
to |
{Engine.Entity, string} |
Target entity and its display name. |
SubventionScript¶
record global base/tealdef/game_mechanics/subventions/subvention.d.tl:139
global record SubventionScript<T>
Notes
Functions a subsidy type script implements. The subsidy game script calls them through the scriptFile of the type's SubventionDesc.
Details
Most base game types use SubventionUtil.defaultOnAccept, defaultOnFailure and defaultOnComplete directly,
and SubventionUtil.defaultTimeout inside shouldDespawn.
Functions
handleLegacy(state : Subvention<T>) : Subvention<T> base/tealdef/game_mechanics/subventions/subvention.d.tl:140
Notes
Fills fields missing in data from older savegames. The base game types implement it, but the subsidy game script does not call it.
| Parameter | Type | Description |
|---|---|---|
state |
Subvention<T> |
Subsidy to update. |
Returns Subvention<T>: The updated subsidy.
canSpawn() : boolean base/tealdef/game_mechanics/subventions/subvention.d.tl:142
Notes
Whether an offer of this type can be created now (e.g. a suitable industry exists). The game script picks a random type among those that return true.
Returns boolean: True if onSpawn can create an offer.
onSpawn() : T, number base/tealdef/game_mechanics/subventions/subvention.d.tl:143
Notes
Creates the data of a random new offer of this type.
Returns T, number: The subsidy data (or nil if no offer could be made) and its uid.
spawnSpecific(param : ISubvention.ISpecificSubventionParam) : T, number base/tealdef/game_mechanics/subventions/subvention.d.tl:144
Notes
Creates the data of an offer for given parameters. Called for the Subvention event subventionSpawn.
| Parameter | Type | Description |
|---|---|---|
param |
ISubvention.ISpecificSubventionParam |
Type-specific parameters, e.g. DeliverCargoSubventionParam. |
Returns T, number: The subsidy data (or nil if the target does not qualify) and its uid.
isComplete(state : Subvention<T>) : boolean base/tealdef/game_mechanics/subventions/subvention.d.tl:146
Notes
Checks whether an active subsidy is fulfilled. Called on every update.
| Parameter | Type | Description |
|---|---|---|
state |
Subvention<T> |
Active subsidy. |
Returns boolean: True if the subsidy is fulfilled.
onComplete(state : Subvention<T>) base/tealdef/game_mechanics/subventions/subvention.d.tl:147
Notes
Called once when the subsidy is fulfilled, before it moves to the completed list.
| Parameter | Type | Description |
|---|---|---|
state |
Subvention<T> |
Fulfilled subsidy. |
onFailure(state : Subvention<T>) base/tealdef/game_mechanics/subventions/subvention.d.tl:149
Notes
Called once when an active subsidy fails.
| Parameter | Type | Description |
|---|---|---|
state |
Subvention<T> |
Failed subsidy. |
onAccept(state : Subvention<T>) base/tealdef/game_mechanics/subventions/subvention.d.tl:150
Notes
Called once when the player accepts the offer.
| Parameter | Type | Description |
|---|---|---|
state |
Subvention<T> |
Accepted subsidy. |
onUpdate(state : Subvention<T>) base/tealdef/game_mechanics/subventions/subvention.d.tl:152
Notes
Called on every update of the game script for each active subsidy, before the despawn and completion checks.
| Parameter | Type | Description |
|---|---|---|
state |
Subvention<T> |
Active subsidy. |
shouldDespawn(state : Subvention<T>, currentGameTime : number) : string base/tealdef/game_mechanics/subventions/subvention.d.tl:153
Notes
Checks whether a proposed, active or completed subsidy ends. Active ones then fail; proposed ones count as missed; completed ones end their reward effect.
| Parameter | Type | Description |
|---|---|---|
state |
Subvention<T> |
Subsidy to check. |
currentGameTime |
number |
Current game time (ms). |
Returns string: A ISubvention.FailReason value, or nil to keep the subsidy.
onDespawn(state : Subvention<T>) base/tealdef/game_mechanics/subventions/subvention.d.tl:154
Notes
Called when a proposed or completed subsidy is removed.
| Parameter | Type | Description |
|---|---|---|
state |
Subvention<T> |
Removed subsidy. |
eventsToHandle() : {string} base/tealdef/game_mechanics/subventions/subvention.d.tl:156
Notes
Names of extra script events the subsidy game script subscribes to for this type.
Returns {string}: Event names, e.g. { "OnCalcTicketPrice" }.
handleEvent(src : string, id : string, name : string, param : any, state : Subvention<T>) : any base/tealdef/game_mechanics/subventions/subvention.d.tl:157
Notes
Handles a script event for one active or completed subsidy.
| Parameter | Type | Description |
|---|---|---|
src |
string |
Event source. |
id |
string |
Event id. |
name |
string |
Event name. |
param |
any |
Event parameter. |
state |
Subvention<T> |
Active or completed subsidy. |
Returns any: Event result. The game script returns the last non-nil result, e.g. ticket price factors for OnCalcTicketPrice.
getNotificationParams(state : Subvention<T>) : any base/tealdef/game_mechanics/subventions/subvention.d.tl:159
Notes
Data to store in a notification about the subsidy, so the notification can be built later without the subsidy.
| Parameter | Type | Description |
|---|---|---|
state |
Subvention<T> |
Subsidy. |
Returns any: Type-specific table, passed back to getNotificationData and getNotificationMissedData.
getNotificationData(subventionId : string, params : any, status : ISubvention.Status, reason : ISubvention.FailReason, entityNames : {Engine.Entity : string}) : NotificationGuiData base/tealdef/game_mechanics/subventions/subvention.d.tl:160
Notes
Builds the notification for a status change.
| Parameter | Type | Description |
|---|---|---|
subventionId |
string |
Res name of the subsidy type. |
params |
any |
Table from getNotificationParams. |
status |
ISubvention.Status |
Status to report. |
reason |
ISubvention.FailReason |
Fail reason, "None" if there is none. |
entityNames |
{Engine.Entity : string} |
Display names of the relevant entities. |
Returns NotificationGuiData: Title, description and icon of the notification.
getNotificationMissedData(subventionId : string, params : any, reason : ISubvention.FailReason, entityNames : {Engine.Entity : string}) : NotificationGuiData base/tealdef/game_mechanics/subventions/subvention.d.tl:161
Notes
Builds the notification for an offer that was withdrawn before the player accepted it.
| Parameter | Type | Description |
|---|---|---|
subventionId |
string |
Res name of the subsidy type. |
params |
any |
Table from getNotificationParams. |
reason |
ISubvention.FailReason |
Why the offer was withdrawn. |
entityNames |
{Engine.Entity : string} |
Display names of the relevant entities. |
Returns NotificationGuiData: Title, description and icon of the notification.
getCardData(state : Subvention<T>) : SubventionCardData base/tealdef/game_mechanics/subventions/subvention.d.tl:162
Notes
Builds the card and window content of the subsidy.
| Parameter | Type | Description |
|---|---|---|
state |
Subvention<T> |
Subsidy. |
Returns SubventionCardData: Card content.
getRelevantEntities(state : Subvention<T>) : {Engine.Entity}, {CargoTypeId : CargoUtil.StockProperties} base/tealdef/game_mechanics/subventions/subvention.d.tl:163
Notes
Entities and cargo types of the subsidy, used for notifications and for the subsidy icons on the map.
| Parameter | Type | Description |
|---|---|---|
state |
Subvention<T> |
Subsidy. |
Returns {Engine.Entity}, {CargoTypeId : CargoUtil.StockProperties}: Entities (e.g. the target, and for deliver_cargo also the delivering lines and their vehicles) and the cargo types to highlight with their stock properties.
getRelevantEntityNames(state : Subvention<T>) : {Engine.Entity : string} base/tealdef/game_mechanics/subventions/subvention.d.tl:164
Notes
Display names of the relevant entities. Only deliver_cargo_town implements it, and the base game does not call it.
| Parameter | Type | Description |
|---|---|---|
state |
Subvention<T> |
Subsidy. |
Returns {Engine.Entity : string}: Name per entity.