construction_util_serialized¶
Quelle: base/tealdef/scripts/construction/construction_util_serialized.d.tl
Plain lua table type definitions for construction resource scripts. These types describe the format of lua tables produced by construction scripts and read by C++ via converters. They must NOT reference C++ userdata types.
Beispiel
-- ein Update-Skript eines Moduls (base/content/landmarks/hq/hq/headquarter_addon.script.tl, gekürzt)
local constructionutil = ug_require "::/scripts/construction/constructionutil.lua" as ConstructionUtilSerialized
function data.updateFn(captureParams : table, result : HeadquarterUtilSerialized.HeadquarterConstructionResult, _transform : Mat4Serialized.Mat4,
tag : string, slotId : integer, _addModelFnInvalid : function(), params : ConstructionUtilSerialized.ModuleUpdateFnParams)
local transf2 = result.slots[result.slotIds[slotId]].transf
local generatedData = captureParams.generatedData as ConstructionUtilSerialized.GeneratedData
constructionutil.addModelsAndGroups(params, generatedData as ConstructionUtilSerialized.GeneratedDataGroup, result.subconstructions[1], tag, transf2)
end
ConstructionUtilSerialized¶
record global base/tealdef/scripts/construction/construction_util_serialized.d.tl:3
global record ConstructionUtilSerialized
Hinweise
Typen der einfachen Tabellen, die Konstruktionsskripte (updateFn, Modul-updateFn, getModelsFn,
createTemplateFn) zurückgeben; die Engine wandelt diese Tabellen um. Der ältere Helfer
/scripts/construction/constructionutil.lua wird mit diesem Typ geladen, damit addModelsAndGroups
verfügbar ist.
Typen
| Name | Definition | Beschreibung |
|---|---|---|
GeneratedData |
{string : GeneratedDataGroup} |
Generierte Daten nach Gruppenname (z. B. "static", "base", "variant_0"). |
ConstructionTemplateResult |
{integer : string} |
Ergebnis einer createTemplateFn: Moduldatei pro Slot-ID, also die Module, mit denen eine neue Konstruktion startet. Das Hauptquartier verwendet { [rootSlotId] = "::/landmarks/hq/modules/hq_main.module" }. |
ModelsFnData |
{TransformedModel} |
Rückgabewert der getModelsFn eines Moduls, die Modelle des Moduls mit ihren Transformationen. |
Funktionen
addModelsAndGroups(params : any, group : GeneratedDataGroup, subconstruction : SubConstruction, tag? : string, transf2? : Mat4Serialized.Mat4) base/tealdef/scripts/construction/construction_util_serialized.d.tl:265
Hinweise
Fügt einer Unterkonstruktion alles hinzu, was eine Gruppe generierter Daten beschreibt: ihre Modelle, zufällige Modelle aus Asset-Gruppen, Bodenflächen, Geländeanpassung und Collider.
| Parameter | Typ | Beschreibung |
|---|---|---|
params |
any |
Die Konstruktionsparameter. params.seed ist Pflicht (er steuert die zufällige Auswahl aus den Gruppen). |
group |
GeneratedDataGroup |
Die Gruppe generierter Daten. |
subconstruction |
SubConstruction |
Hier werden Modelle, Bodenflächen, Anpassungslisten und Collider angehängt. |
tag? |
string |
Optionales Tag für die hinzugefügten Modelle. |
transf2? |
Mat4Serialized.Mat4 |
Optionale Transformation, die auf alles Hinzugefügte angewendet wird. |
Details
Implementiert in /scripts/construction/constructionutil.lua. Lade diese Datei mit
ug_require "::/scripts/construction/constructionutil.lua" as ConstructionUtilSerialized.
Asset-Gruppen werden zuerst in params.state.groups gesucht, dann in AssetUtil.assets. Fehlt eine
Gruppe, schreibt die Funktion eine Warnung ins Log und verwendet ein Platzhaltermodell.
ConstructionUtilSerialized.ScriptRef¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:8
record ScriptRef
Hinweise
Verweis auf eine Skriptfunktion als "file.script@function" und die Parameter, die sie bekommt.
Im Basisspiel verwendet: 1-mal in 1 Datei
base/content/scripts/scripts/construction/construction.script.tl:16
Felder
| Name | Typ | Beschreibung |
|---|---|---|
fileName |
string |
Verweis auf die Skriptfunktion, z. B. "small_stops.script@updateFn". |
params |
table |
Tabelle, die die Funktion als erstes Argument bekommt (captureParams). |
ConstructionUtilSerialized.TransportMode¶
enum base/tealdef/scripts/construction/construction_util_serialized.d.tl:13
enum TransportMode
Hinweise
Namen der Transportmodi in Spurlisten, Depots, Snap-Punkten und Terminals; dieselbe Menge wie api.type.TransportMode.
ConstructionUtilSerialized.BaseEdgeType¶
enum base/tealdef/scripts/construction/construction_util_serialized.d.tl:32
enum BaseEdgeType
Hinweise
Art der Kanten einer Kantenliste.
| Wert | Beschreibung |
|---|---|
"NORMAL" |
Gewöhnliche Kante auf dem Boden. |
"BRIDGE" |
Brücke; der Brückentyp kommt in edgeTypeName. |
"TUNNEL" |
Tunnel; der Tunneltyp kommt in edgeTypeName. |
ConstructionUtilSerialized.CatchmentArea¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:38
record CatchmentArea
Hinweise
Zylinder mit einem Radius um eine Position. Er ist das Einzugsgebiet einer Station, Haltestelle oder eines Depots.
Felder
| Name | Typ | Beschreibung |
|---|---|---|
position |
Vec3Serialized.Vec3 |
Mittelpunkt in lokalen Koordinaten der Konstruktion (das Basisspiel schreibt {0, 0, 0}). |
radius |
number |
Radius in Metern. |
ConstructionUtilSerialized.CargoTypeSet¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:43
record CargoTypeSet
Hinweise
Wählt Güterarten nach Klasse und Art aus, mit Listen zum Ein- und Ausschließen.
Felder
ConstructionUtilSerialized.SlotConfig¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:50
record SlotConfig
Hinweise
Zusätzliche Einstellungen für alle Slots eines Slot-Typs (Schlüssel von slotConfig).
Felder
ConstructionUtilSerialized.StreetTerminal¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:56
record StreetTerminal
Hinweise
Terminal einer Haltestelle am Straßenrand (ein Kantenobjekt wie die kleinen Bus- und Lkw-Haltestellen).
Felder
| Name | Typ | Beschreibung |
|---|---|---|
capacity |
integer |
Wie viele Passagiere oder Gütereinheiten warten können. |
cargo |
boolean |
Ob die Haltestelle Güter abfertigt. |
passengers |
boolean |
Ob die Haltestelle Passagiere abfertigt. |
cargoLoad |
boolean |
Ob Güter geladen werden können. |
passengersLoad |
boolean |
Ob Passagiere einsteigen können. |
cargoUnload |
boolean |
Ob Güter entladen werden können. |
passengersUnload |
boolean |
Ob Passagiere aussteigen können. |
comfortFactor |
number |
Wie schnell die Zufriedenheit wartender Passagiere sinkt. |
wantSymmetric |
boolean |
Bei Haltestellen auf beiden Straßenseiten true (die kleinen Haltestellen setzen es aus ihrem Parameter twoSided). |
catchmentArea |
CatchmentArea |
Einzugsgebiet der Haltestelle. |
cargoTransferSpeeds |
{TerminalDef.CargoTransferSpeed} |
Einstellungen der Ladegeschwindigkeit pro Gruppe von Güterarten. |
ConstructionUtilSerialized.GeneratedDataGroup¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:70
record GeneratedDataGroup
Hinweise
Eine Gruppe von Daten, die der Model Editor exportiert (die Tabellen generatedData in Konstruktionsskripten):
benannte Kurven und Modellplatzierungen.
Im Basisspiel verwendet: 6-mal in 3 Dateien
base/content/landmarks/hq/hq/headquarter_addon.script.tl:59
constructionutil.addModelsAndGroups(params, generatedData as ConstructionUtilSerialized.GeneratedDataGroup, result.subconstructions[1], tag, transf2)
base/content/landmarks/landmark_util_serialized.tl:10
local function addTerminals(params, generatedData : ConstructionUtilSerialized.GeneratedDataGroup, terminals, mainSubconstruction : ConstructionUtilSerialized.S
base/content/stations/air/air/heliport/modules.script.tl:59
Typen
Felder
| Name | Typ | Beschreibung |
|---|---|---|
curves |
GeneratedCurve |
Benannte Kurven der Gruppe. |
models |
{string : {Mat4Serialized.Mat4}} |
Modellplatzierungen. Jeder Schlüssel ist eine Modelldatei und verweist auf die Liste ihrer Transformationen. |
ConstructionUtilSerialized.ModuleUpdateFnParams¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:78
record ModuleUpdateFnParams
Hinweise
Parameter, die das Update-Skript einer modularen Konstruktion und das Update-Skript jedes Moduls bekommen.
Im Basisspiel verwendet: 5-mal in 3 Dateien
base/content/landmarks/hq/hq/headquarter_addon.script.tl:8
base/content/scripts/scripts/construction/construction.script.tl:17
base/content/stations/air/air/heliport/modules.script.tl:8
Felder
| Name | Typ | Beschreibung |
|---|---|---|
seed |
integer |
Zufallsstartwert. Während ein Modulskript läuft, ist er der Startwert der Konstruktion plus die Slot-ID. |
modules |
{integer : Module} |
Platzierte Module nach Slot-ID. Die Module werden in aufsteigender Reihenfolge der Slot-IDs verarbeitet. |
ConstructionUtilSerialized.ModuleUpdateFnParams.Module¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:79
record Module
Hinweise
Ein Modul, das in einem Slot steht.
Felder
| Name | Typ | Beschreibung |
|---|---|---|
updateScript |
ScriptRef |
Das Update-Skript des Moduls. Es wird mit den params des Moduls, dem Konstruktionsergebnis, der Slot-Transformation, einem Tag, der Slot-ID, einer Funktion zum Hinzufügen von Modellen und diesen Parametern aufgerufen. |
metadata |
any |
Die Metadaten des Moduls, z. B. price, maintenanceCost, bulldozePrice. |
name |
string |
Der Ressourcenname des Moduls. |
variant |
integer |
Wird beim Platzieren des Moduls mit M/N geändert. Kann negativ sein, Standard ist 0. Das Hauptquartier nutzt den Wert als Drehung in Vierteldrehungen. |
ConstructionUtilSerialized.ModuleGetModelsFnParams¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:89
record ModuleGetModelsFnParams
Hinweise
Parameter der getModelsFn eines Moduls (es sind keine Felder definiert).
Im Basisspiel verwendet: 2-mal in 2 Dateien
base/content/landmarks/hq/hq/headquarter_addon.script.tl:100
function data.getModelsFn(captureParams : table, _params : ConstructionUtilSerialized.ModuleGetModelsFnParams) : ConstructionUtilSerialized.ModelsFnData
base/content/stations/air/air/heliport/modules.script.tl:58
ConstructionUtilSerialized.TransformedModel¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:92
record TransformedModel
Hinweise
Ein Modell, das eine Konstruktion platziert.
Im Basisspiel verwendet: 4-mal in 1 Datei
base/content/scripts/scripts/construction/construction.script.tl:85
Felder
| Name | Typ | Beschreibung |
|---|---|---|
id |
string |
Modelldatei, z. B. "station/rail/platform.mdl". |
transf |
Mat4Serialized.Mat4 |
Platzierungstransformation (16 Zahlen, spaltenweise) relativ zur Konstruktion. |
tag |
string |
Tag des Modells. Modelle, die ein Modul hinzufügt, bekommen "__module_<slotId>" und gehören damit zu diesem Modul. |
ConstructionUtilSerialized.GroundFace¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:98
record GroundFace
Hinweise
Eine Bodentexturfläche (Punkte in face und Textur-modes); die Definition deklariert keine Felder.
ConstructionUtilSerialized.TerrainAlignmentList¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:101
record TerrainAlignmentList
Hinweise
Eine Menge von Flächen, an die das Gelände angepasst wird.
Im Basisspiel verwendet: 1-mal in 1 Datei
base/content/landmarks/hq/hq/headquarter.script.tl:352
Felder
| Name | Typ | Beschreibung |
|---|---|---|
type |
AlignmentType |
Art der Anpassung. |
faces |
{{{number, number, number}}} |
Polygone, jedes eine Liste von {x, y, z}-Punkten. |
slopeLow |
number |
Böschungsneigung am Rand der Fläche (das Basisspiel verwendet z. B. 0,275). |
slopeHigh |
number |
Größte Böschungsneigung (das Basisspiel verwendet z. B. 0,6). |
ConstructionUtilSerialized.TerrainAlignmentList.AlignmentType¶
enum base/tealdef/scripts/construction/construction_util_serialized.d.tl:102
enum AlignmentType
Hinweise
Wie das Gelände an die Flächen angepasst wird.
ConstructionUtilSerialized.Slot¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:113
record Slot
Hinweise
Ein Slot einer modularen Konstruktion, in den Module desselben type passen.
Felder
| Name | Typ | Beschreibung |
|---|---|---|
id |
integer |
Eindeutige Slot-ID; params.modules verwendet sie als Schlüssel für die Module. Sie kann die Koordinaten des Slots enthalten. |
transf |
Mat4Serialized.Mat4 |
Transformation relativ zum Ursprung der Konstruktion; die Modelle der Module werden relativ dazu platziert. |
type |
string |
Slot-Typ; nur Module desselben Typs können hier gebaut werden. |
spacing |
{number, number, number, number} |
Ausdehnung des Slots um seinen Ursprung, {left, right, south, north}: Abstände entlang -X, +X, -Y und +Y in Slot-Koordinaten. |
height |
number |
Höhe des Slots für die Kollision. |
shape |
integer |
0 = Quadrat, 1 = Dreieck, 2 = Rechteck quer, 3 = Rechteck längs. |
autoFill |
boolean |
Füllt den Slot automatisch, wenn die Konstruktion entsteht (Felder fügen so ihre Satelliten hinzu). |
alignToTerrain |
boolean |
Verschiebt den Slot senkrecht auf die Geländehöhe (z. B. für Felder). |
replaceable |
boolean |
Module in diesem Slot lassen sich durch andere Module desselben Typs ersetzen, ohne sie vorher abzureißen. |
ConstructionUtilSerialized.Depot¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:127
record Depot
Hinweise
Depot-Teil einer Unterkonstruktion.
Felder
| Name | Typ | Beschreibung |
|---|---|---|
catchmentArea |
CatchmentArea |
Bereich um das Depot, in dem Fahrzeuge gewartet werden. |
transportModes |
{TransportMode} |
Transportmodi der Fahrzeuge, die das Depot abfertigt. |
maintenancePool |
integer |
Wie viele Fahrzeuge gleichzeitig gewartet werden können. |
ConstructionUtilSerialized.Industry¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:133
record Industry
Hinweise
Industrie-Teil einer Unterkonstruktion.
Felder
| Name | Typ | Beschreibung |
|---|---|---|
productionLevel |
integer |
Aktuelle Produktionsstufe. |
maxLevel |
integer |
Höchste Produktionsstufe. |
ConstructionUtilSerialized.EdgeListType¶
enum base/tealdef/scripts/construction/construction_util_serialized.d.tl:138
enum EdgeListType
Hinweise
Netztyp einer Kantenliste.
| Wert | Beschreibung |
|---|---|
"STREET" |
Straßenkanten. |
"TRACK" |
Gleiskanten. |
ConstructionUtilSerialized.EdgeList¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:143
record EdgeList
Hinweise
Straßen- oder Gleiskanten, die eine Konstruktion im Verkehrsnetz anlegt.
Felder
| Name | Typ | Beschreibung |
|---|---|---|
edgeType |
BaseEdgeType |
Normal, Brücke oder Tunnel. |
edgeTypeName |
string |
Brücken- oder Tunneltyp, wenn edgeType den Wert BRIDGE oder TUNNEL hat. |
type |
EdgeListType |
Straße oder Gleis. |
edges |
{{Vec3Serialized.Vec3, Vec3Serialized.Vec3}} |
Knoten als Paare {position, tangent}; je zwei aufeinanderfolgende Einträge bilden eine Kante. Du baust sie mit StreetUtilSerialized.addStraightEdge, addEdge und den verwandten Funktionen. |
snapNodes |
{integer} |
Indizes (ab 0) der Knoten in edges, die an vorhandenen Straßen oder Gleisen einrasten. |
freeNodes |
{integer} |
Indizes (ab 0) der Knoten in edges, die nicht fest zur Konstruktion gehören (siehe StreetUtilSerialized.freeAllNodes). |
trafficLightYes |
{integer} |
|
trafficLightNo |
{integer} |
|
tag2nodes |
{string : {integer}} |
Benannte Gruppen von Knotenindizes (ab 0), auf die man später verweisen kann. |
alignTerrain |
boolean |
ConstructionUtilSerialized.LaneList¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:156
record LaneList
Hinweise
Spuren innerhalb einer Konstruktion (Wege für Personen, Güter und Fahrzeuge, die keine Straßen oder Gleise sind).
Felder
| Name | Typ | Beschreibung |
|---|---|---|
transf |
Mat4Serialized.Mat4 |
Transformation, die auf die Spurknoten angewendet wird. |
transportModes |
{TransportMode} |
Transportmodi, die auf den Spuren erlaubt sind. |
speedLimit |
number |
Geschwindigkeitsbegrenzung der Spuren in m/s (laut offiziellem Wiki). |
nodes |
{{Vec3Serialized.Vec3, Vec3Serialized.Vec3, number}} |
Knoten als {position, tangent, width}; je zwei aufeinanderfolgende Einträge bilden eine Spurkante (siehe LaneUtilSerialized.createLane). |
linkable |
boolean |
Ob sich die automatisch erzeugten kurzen Fußwegverbindungen an diese Spuren anschließen können. |
pedestrianWalkPenalty |
number |
Strafwert für Fußgänger, die auf diesen Spuren gehen. |
forwardOnly |
boolean |
Die Spuren dürfen nur in Vorwärtsrichtung befahren werden. |
needsReservation |
boolean |
Fahrzeuge müssen die Spuren reservieren, bevor sie einfahren dürfen. |
ConstructionUtilSerialized.RunwayDef¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:167
record RunwayDef
Hinweise
Ein Lande- oder Startweg für Flugzeuge und Schiffe, definiert auf Spurknoten.
Felder
ConstructionUtilSerialized.TerminalDef¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:173
record TerminalDef
Hinweise
Ein Stationsterminal, definiert auf den Spuren seiner Unterkonstruktion.
Felder
| Name | Typ | Beschreibung |
|---|---|---|
comfortFactor |
number |
Wie schnell die Zufriedenheit wartender Passagiere sinkt. |
personEdges |
{{integer, integer}} |
Kanten des Wartebereichs als Paare {laneListIndex, edgeIndex} (ab 0). |
capacity |
integer |
Wie viele Passagiere oder Gütereinheiten in das Terminal passen. |
cargoTransferSpeeds |
{CargoTransferSpeed} |
Einstellungen der Ladegeschwindigkeit. |
ConstructionUtilSerialized.TerminalDef.CargoTransferSpeed¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:174
record CargoTransferSpeed
Hinweise
Einstellung der Ladegeschwindigkeit für eine Gruppe von Güterarten.
Felder
| Name | Typ | Beschreibung |
|---|---|---|
cargoTypeSet |
CargoTypeSet |
Güterarten, für die die Einstellung gilt. |
loadSpeedModifier |
number |
Faktor auf die Ladegeschwindigkeit. |
length |
number |
Länge des Terminalabschnitts. |
ConstructionUtilSerialized.StationDef¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:186
record StationDef
Hinweise
Die Station einer Unterkonstruktion.
Felder
| Name | Typ | Beschreibung |
|---|---|---|
pool |
Pool |
Gemeinsamer Wartebereich. |
terminals |
{TerminalDef} |
Die Terminals der Station. |
ConstructionUtilSerialized.StationDef.Pool¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:187
record Pool
Hinweise
Gemeinsamer Wartebereich, der überzählige Terminalkapazität aufnimmt.
Felder
| Name | Typ | Beschreibung |
|---|---|---|
capacity |
integer |
Größe des gemeinsamen Bereichs. |
edges |
{{integer, integer}} |
Kanten des gemeinsamen Wartebereichs als Paare {laneListIndex, edgeIndex}. |
ConstructionUtilSerialized.StockRules¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:196
record StockRules
Hinweise
Eine Produktionsregel einer industrieähnlichen Unterkonstruktion.
Felder
| Name | Typ | Beschreibung |
|---|---|---|
input |
{{integer}} |
orRule to stock to amount |
output |
{string : integer} |
Produzierte Mengen nach Ausgangsbestand. |
capacity |
integer |
Produktionskapazität der Regel. |
ConstructionUtilSerialized.Stocks¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:202
record Stocks
Hinweise
Ein Güterbestand einer Unterkonstruktion.
Felder
| Name | Typ | Beschreibung |
|---|---|---|
type |
StockType |
Rolle des Bestands. |
cargoType |
string |
Ressource der gelagerten Güterart. |
capacity |
integer |
Kapazität des Bestands. |
ConstructionUtilSerialized.Stocks.StockType¶
enum base/tealdef/scripts/construction/construction_util_serialized.d.tl:203
enum StockType
Hinweise
Rolle des Bestands.
| Wert | Beschreibung |
|---|---|
"INPUT_STOCK" |
Nimmt gelieferte Güter auf. |
"OUTPUT_STOCK" |
Hält produzierte Güter zur Abholung bereit. |
"STORAGE_STOCK" |
Lagert Güter. |
ConstructionUtilSerialized.SubConstruction¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:213
record SubConstruction
Hinweise
Ein Teil eines Konstruktionsergebnisses: seine Modelle, Bodenflächen, Collider, Geländeanpassung, Spuren
und optional eine Station, ein Depot oder eine Industrie. Die meisten Konstruktionen haben nur eine
Unterkonstruktion (result.subconstructions[1]).
Im Basisspiel verwendet: 3-mal in 2 Dateien
base/content/landmarks/hq/hq/headquarter.script.tl:493
base/content/landmarks/landmark_util_serialized.tl:10
Felder
| Name | Typ | Beschreibung |
|---|---|---|
models |
{TransformedModel} |
Platzierte Modelle. |
groundFaces |
{GroundFace} |
Bodentexturflächen. |
colliders |
{ColliderUtilSerialized.Collider} |
Kollisionsformen. |
depot |
Depot |
Depotdaten, wenn die Unterkonstruktion ein Depot ist. |
terrainAlignmentLists |
{TerrainAlignmentList} |
Geländeanpassung. |
laneLists |
{LaneList} |
Spuren; Terminals und Landebahnen verweisen über einen Index (ab 0) auf sie. |
runways |
{RunwayDef} |
Lande- und Startwege. |
station |
StationDef |
Stationsdaten, wenn die Unterkonstruktion eine Station ist. |
industry |
Industry |
Industriedaten, wenn die Unterkonstruktion eine Industrie ist. |
rules |
{StockRules} |
Produktionsregeln. |
stocks |
{Stocks} |
Güterbestände. |
tag |
integer |
Tag, das die Unterkonstruktion kennzeichnet (z. B. über Ausbauten hinweg). |
metadata |
table |
Metadaten, die mit der Instanz der Unterkonstruktion gespeichert werden. |
ConstructionUtilSerialized.SnapPoint¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:229
record SnapPoint
Hinweise
Wo und woran die Konstruktion beim Platzieren einrastet.
Felder
| Name | Typ | Beschreibung |
|---|---|---|
snapToBaseEdgeTypes |
{EdgeListType} |
Netztypen, an denen sie einrastet, z. B. {"STREET"}. |
allowSnapToBaseEdgeEnds |
boolean |
Erlaubt auch das Einrasten am Ende einer Straße oder eines Gleises. |
alignWithCoast |
boolean |
Richtet die Konstruktion an der Küstenlinie aus (Häfen, Schiffsdepots). |
placeAtTerrainHeight |
boolean |
|
transf |
Mat4Serialized.Mat4 |
Transformation des Snap-Punkts relativ zur Konstruktion. |
transportModes |
{TransportMode} |
Transportmodi, für die der Snap-Punkt gilt. |
ConstructionUtilSerialized.IConstructionResult¶
interface base/tealdef/scripts/construction/construction_util_serialized.d.tl:238
interface IConstructionResult
Hinweise
Was die updateFn einer Konstruktion zurückgibt.
Details
Kosten sind in Spielwährung angegeben. Ist maintenanceCost nil oder 0, setzt das Konstruktionsskript
den Wert auf cost / 6. cost und bulldozeCost werden mit dem Infrastrukturkosten-Faktor des Spiels
skaliert.
Beispiel
Im Basisspiel verwendet: 1-mal in 1 Datei
base/content/landmarks/hq/hq/headquarter.script.tl:133
Felder
| Name | Typ | Beschreibung |
|---|---|---|
subconstructions |
{SubConstruction} |
Die Teile der Konstruktion. |
metadata |
table |
Metadaten, die mit der gebauten Konstruktion gespeichert werden (ihre persistenten Metadaten). |
snapPoint |
SnapPoint |
Snap-Punkt beim Platzieren der Konstruktion. |
slots |
{Slot} |
Modul-Slots einer modularen Konstruktion. |
slotConfig |
{string : SlotConfig} |
Zusätzliche Einstellungen pro Slot-Typ. |
cost |
number |
Baukosten in Spielwährung; die Modulpreise kommen hinzu. |
maintenanceCost |
number |
Unterhaltskosten pro Jahr in Spielwährung; Standard ist cost / 6. |
streetTerminal |
StreetTerminal |
Terminaldaten für Haltestellen am Straßenrand. |
bulldozeCost |
number |
Kosten für das Abreißen der Konstruktion in Spielwährung. |
noCostAtAll |
boolean |
disable all cost for the entire proposal |
callInvalidModules |
boolean |
Führt auch die Update-Skripte von Modulen aus, deren Slot-ID nicht in slots steht. |
Funktionen
Only used within constructWithModules
terminateConstructionHook() base/tealdef/scripts/construction/construction_util_serialized.d.tl:256
Die Spieldateien enthalten hierzu noch keine Beschreibung.
ConstructionUtilSerialized.ConstructionResult¶
record base/tealdef/scripts/construction/construction_util_serialized.d.tl:260
record ConstructionResult is IConstructionResult
Hinweise
Konkreter Typ des Konstruktionsergebnisses (siehe IConstructionResult).
Im Basisspiel verwendet: 8-mal in 2 Dateien
base/content/landmarks/landmark_util_serialized.tl:102
landmark_util_serialized.makeLandmarksUpdateFn = function(generatedData : ConstructionUtilSerialized.GeneratedDataGroup) : function(captureParams : table, param
base/content/scripts/scripts/construction/construction.script.tl:23