Zum Inhalt

line

Quelle: base/tealdef/gui/line_vehicle_mgmt/line.d.tl

Hinweise

Typen für die GUI-seitige Kopie einer Linie. Der Linien-Manager bearbeitet diese Kopie und schickt sie dann mit api.cmd.makeLineCreateCmd oder api.cmd.makeLineUpdateCmd an die Engine.

Line

record global base/tealdef/gui/line_vehicle_mgmt/line.d.tl:3

global record Line

Hinweise

Namensraum für die GUI-seitigen Linientypen des Linien-Managers.

Line.PassThroughStopData

record base/tealdef/gui/line_vehicle_mgmt/line.d.tl:4

record PassThroughStopData

Hinweise

Einstellungen einer Haltestelle, die der Linieneditor selbst nicht ändert, aber behalten muss. So kann der Update-Befehl sie an die Engine-Line.Stop weitergeben.

Felder

Name Typ Beschreibung
minWaitingTime number Minimale Wartezeit an der Haltestelle, übernommen aus und zurückgeschrieben nach Engine.Component.Line.Stop.minWaitingTime.
maxWaitingTime number Maximale Wartezeit an der Haltestelle, übernommen aus und zurückgeschrieben nach Engine.Component.Line.Stop.maxWaitingTime.
maxAdditionalWaitingTime number Maximale zusätzliche Wartezeit an der Haltestelle, übernommen aus und zurückgeschrieben nach Engine.Component.Line.Stop.maxAdditionalWaitingTime.
stopConfig Engine.Component.Line.StopConfig Beladungskonfiguration der Haltestelle (load, maxLoad, forceUnload je Güterart), wie in Engine.Component.Line.Stop.stopConfig.
loadMode Engine.Component.Line.LoadMode Lademodus der Haltestelle, übernommen aus und zurückgeschrieben nach Engine.Component.Line.Stop.loadMode.

Line.ReactTerminal

record base/tealdef/gui/line_vehicle_mgmt/line.d.tl:12

record ReactTerminal

Hinweise

Eine Haltestelle einer Line.ReactLine. Station und Terminal zählen hier ab 1, die Engine zählt ab 0.

Im Basisspiel verwendet: 4-mal in 1 Datei

base/content/gui/gui/line_vehicle_mgmt/line_util.tl:95

local stop : Line.ReactTerminal = {}

Felder

Name Typ Beschreibung
stationGroup Engine.Entity Entität der Stationsgruppe, zu der die Haltestelle gehört.
station1 integer 1-based index in stationGroup
terminal1 integer 1-based index in station
alternativeTerminals {StationTerminal} Weitere Terminals (StationTerminal-Werte, ab 0 gezählt), die das Fahrzeug an dieser Haltestelle nutzen darf.
loadMode Engine.Component.Line.LoadMode Lademodus der Haltestelle. Ist passThroughStopData.loadMode gesetzt, gilt dieser Wert.
passThroughStopData PassThroughStopData not used by line editor, but need to store them so we can create the updateline command

Line.ReactVia

record base/tealdef/gui/line_vehicle_mgmt/line.d.tl:23

record ReactVia

Hinweise

Ein Eintrag im Linienverlauf. Gesetzt ist entweder stop oder waypoint.

Im Basisspiel verwendet: 13-mal in 3 Dateien

base/content/gui/gui/line_vehicle_mgmt/line_manager_panel.tl:36

viaState : ReactStateT<{Line.ReactVia}>
base/content/gui/gui/line_vehicle_mgmt/line_util.tl:93
local path : {Line.ReactVia} = {}
base/content/gui/gui/line_vehicle_mgmt/manager_window.tl:6975
local newPath : {Line.ReactVia} = {}

Felder

Name Typ Beschreibung
waypoint Waypoint nil if not a waypoint
stop ReactTerminal Die Haltestelle, oder nil, wenn der Eintrag ein Wegpunkt ist.

Line.ReactLine

record base/tealdef/gui/line_vehicle_mgmt/line.d.tl:28

record ReactLine

Hinweise

Bearbeitbare Kopie einer Linie, wie der Linien-Manager sie hält. Aus dem Spielzustand erzeugst du sie mit LineUtil.getReactLineFromGameState.

Details

In der Engine-Komponente LINE hängen Wegpunkte an der vorhergehenden Haltestelle. Hier sind sie eigene Einträge in path. LineUtil.autoAssignTerminals wandelt den Verlauf zurück in Einträge vom Typ Engine.Component.Line.Stop.

Im Basisspiel verwendet: 21-mal in 2 Dateien

base/content/gui/gui/line_vehicle_mgmt/line_util.tl:87

line_util.getReactLineFromGameState = function(lineEntity : Engine.Entity) : Line.ReactLine
base/content/gui/gui/line_vehicle_mgmt/manager_window.tl:6435
local reactLineState, reactLineCommit : (ReactStateT<Line.ReactLine>) = engine_react_util.useStepState(

Felder

Name Typ Beschreibung
entityAndRevision EntityUtil.EntityAndRevision Linienentität und die Revision, von der die Kopie stammt; nil bei einer Linie, die noch nicht erstellt ist.
path {ReactVia} Haltestellen und Wegpunkte der Linie in Fahrtrichtung („Haltestellennummer“ = Index in dieser Liste, ab 1 gezählt).
customFilters boolean Gibt an, ob die Beladung der Haltestellen von Hand eingestellt wurde. Bei true lässt LineUtil.autoLoadConfig die Haltestellenkonfiguration unverändert.
reservationPriority number Reservierungspriorität der Linie, wird an Engine.Component.Line.reservationPriority übergeben. Neue Linien bekommen 1.0.
maxWaypointTag integer Höchster Wegpunkt-tag der Linie (-1, wenn es keine Wegpunkte gibt). Neue Wegpunkte bekommen den nächsten Tag.
color Vec3f Farbe einer neuen Linie. Beim Erstellen der Linie füllt LineUtil.makeLineColor sie aus.
carrierFilter {Carrier : boolean} Verkehrsträger, die die Haltestellen der Linie bedienen, berechnet mit LineUtil.getLineCarriers.

Line.DnDLineStop

record base/tealdef/gui/line_vehicle_mgmt/line.d.tl:40

record DnDLineStop

Hinweise

Drag-and-drop-Nutzlast, wenn du im Linienbereich des Linien-Managers eine Haltestelle ziehst (Ressource ::/dnd_line_stop.res).

Im Basisspiel verwendet: 4-mal in 1 Datei

base/content/gui/gui/line_vehicle_mgmt/line_manager_panel.tl:503

local data : Line.DnDLineStop = {

Felder

Name Typ Beschreibung
lineEntity Engine.Entity Linie, zu der die gezogene Haltestelle gehört.
lineRevision Engine.Revision Revision der Linie beim Start des Ziehens.
stopNumber integer Index des gezogenen Eintrags in Line.ReactLine.path, ab 1 gezählt.
apiStopIndex0 integer Index der Haltestelle in der Engine-Komponente LINE, ab 0 gezählt.