Skip to content

industry_eow

Source: base/tealdef/gui/entity_window/industry/industry_eow.d.tl

Notes

Plugin types of the industry window (industry_eow.script.tl).

IndustryEow

record global base/tealdef/gui/entity_window/industry/industry_eow.d.tl:3

global record IndustryEow

Load: local industry_eow = ug_require "/gui/entity_window/industry/industry_eow.script.tl"

Notes

Plugin types of the industry window.

Fields

Name Type Description
IndustryEowExtensionPoint ExtensionPoint<IndustryWidgetPluginParams> Extension point of the industry window; register plugins with a resource of type "react-plugin ::IndustryEowExtensionPoint". used 1× in the base game
NotificationPlugin Recipe<IndustryWidgetPluginParams> Notification cards of the industry; registered with order 0.
IndustryProductionRulesPlugin Recipe<IndustryWidgetPluginParams> "Production" card with the production rules (IndustryReactUtil.ProductionRulesWidget); registered with order 10 and condition conditionProductionRules.
IndustryBoostersPlugin Recipe<IndustryWidgetPluginParams> "Booster(s)" card with cargo booster rules and the workers boost, with the workers table as collapsible part; registered with order 20 and condition conditionBoosters.
IndustryCombinedStockGroupedCountsPlugin Recipe<IndustryWidgetPluginParams> Input and output stock cards with suppliers and consumers tables as collapsible parts; registered with order 30 and condition conditionPlayerOwnedOrNotOwned.
IndustryBalanceChartPlugin Recipe<IndustryWidgetPluginParams> "Cargo Flow" chart of consumed, produced and destroyed cargo; registered with order 40 and condition conditionPlayerOwnedOrNotOwned.

Functions

conditionProductionRules(params : IndustryEow.IndustryWidgetPluginParams) : boolean base/tealdef/gui/entity_window/industry/industry_eow.d.tl:36

Call as industry_eow.conditionProductionRules

Notes

Plugin condition; true if the industry has non-booster production rules.

Returns boolean: params.state.addProductionRules.

conditionBoosters(params : IndustryEow.IndustryWidgetPluginParams) : boolean base/tealdef/gui/entity_window/industry/industry_eow.d.tl:37

Call as industry_eow.conditionBoosters

Notes

Plugin condition; true if the industry is not owned by another player and has production rules.

Returns boolean

conditionPlayerOwnedOrNotOwned(params : IndustryEow.IndustryWidgetPluginParams) : boolean base/tealdef/gui/entity_window/industry/industry_eow.d.tl:38

Call as industry_eow.conditionPlayerOwnedOrNotOwned

Notes

Plugin condition; true unless the industry's construction is owned by another player.

Returns boolean

IndustryEow.IndustryEowState

record base/tealdef/gui/entity_window/industry/industry_eow.d.tl:4

record IndustryEowState

Notes

State of the industry window, recomputed every step and passed to the plugins.

Used in the base game: 1 time in 1 file

base/content/gui/gui/entity_window/industry/industry.tl:146

local makeState = function() : IndustryEow.IndustryEowState

Fields

Name Type Description
addProductionRules boolean True if the stock list has at least one production rule that is not a booster.
addBoosters boolean True if there are booster rules or workplaces.
numBoosters integer Number of booster rules, plus one if the industry has workplaces.
addWorkplaces boolean True if the industry has workplaces (PERSON_CAPACITY with capacity above 0).
editConstructionEntity Engine.Entity Construction to configure, set when it is owned by the player and modifiable.
cargoTypes {CargoTypeId : CargoUtil.StockProperties} Cargo types of the industry's stock list with input/output flags.
modifiers {string : integer} Modifiers of the industry; currently only ecoLevel from the emissions game script, or nil.
hadConsumed boolean True if a production rule consumes input or the logbook has an itemsConsumed log; adds "Consumed" to the cargo flow chart.
maxLevel boolean True if the industry has reached its maximum level.
failedExpansion boolean True if the last expansion attempt was blocked (there are colliding areas).
cargoFlowData CargoFlowData Data for the cargo flow arrows.

IndustryEow.IndustryEowState.CargoFlowData

record base/tealdef/gui/entity_window/industry/industry_eow.d.tl:16

record CargoFlowData

Notes

Data for the cargo flow arrows drawn while the window is open.

Fields

Name Type Description
this Vec3f Position of the industry (top centre of its bounding box).
suppliers {CargoUtil.CargoFlowData} Industries supplying this industry, with position, cargo type and amount.
consumers {CargoUtil.CargoFlowData} Industries and towns consuming this industry's output, with position, cargo type and amount.

IndustryEow.IndustryWidgetPluginParams

record base/tealdef/gui/entity_window/industry/industry_eow.d.tl:24

record IndustryWidgetPluginParams is EowExtensionUtil.IEowWidgetsExtensionParams

Notes

Parameters passed to the plugins of the industry window.

Used in the base game: 9 times in 2 files

base/content/gui/gui/entity_window/industry/industry_eow.script.tl:25

industry_eow.NotificationPlugin = react.RegisterPluginRecipe(industry_eow.IndustryEowExtensionPoint, "NotificationPlugin", function(params : IndustryEow.Industr
base/content/gui/gui/entity_window/industry/industry.tl:289
local extensionParams : IndustryEow.IndustryWidgetPluginParams = {

Fields

Name Type Description
state IndustryEowState Window state.