Zum Inhalt

vehicle_store_window

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

Hinweise

Das Fenster des Fahrzeugladens und sein Einstiegspunkt, der auf die GUI-Events buyVehicles, replaceVehicles und modifyVehicles hört.

VehicleStoreWindow

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

global record VehicleStoreWindow

Laden: local vehicle_store_window = ug_require "::/gui/line_vehicle_mgmt/vehicle_store_window.tl" as VehicleStoreWindow

Hinweise

Fenster des Fahrzeugladens und sein Einstiegspunkt.

Felder

Name Typ Beschreibung
VehicleStoreEntryPoint Recipe<VehicleStoreEntryPointParam> Unsichtbares Recipe, das die Fahrzeugdaten des Ladens vorberechnet und bei den Events buyVehicles, replaceVehicles und modifyVehicles das Fenster des Ladens öffnet.Im Spiel Fahrzeuge ersetzen · Fahrzeuge modifizierenIm Code: Replace Vehicles · Modify Vehicles 2-mal im Basisspiel verwendet
VehicleStoreWindow Recipe<VehicleStoreWindowParam> Das Fenster-Recipe des Fahrzeugladens (Fenster-ID vehiclestore.window). 17-mal im Basisspiel verwendet

VehicleStoreWindow.LayoutStyle

enum base/tealdef/gui/line_vehicle_mgmt/vehicle_store_window.d.tl:4

enum LayoutStyle

Hinweise

Layout des Ladenfensters. Es wird über eine Schaltfläche umgeschaltet und im Gamepad-Modus auf TwoPaneSplit festgelegt.

Im Basisspiel verwendet: 6-mal in 1 Datei

base/content/gui/gui/line_vehicle_mgmt/vehicle_store_window.tl:1630

layoutStyle : VehicleStoreWindow.LayoutStyle,

Wert Beschreibung
"Table" Fahrzeuge in einer sortierbaren Tabelle.
"TwoPaneSplit" Fahrzeugliste mit Detailbereich (Standard).

VehicleStoreWindow.MuAndId

record base/tealdef/gui/line_vehicle_mgmt/vehicle_store_window.d.tl:9

record MuAndId

Hinweise

Verweis auf eine Fahrzeugvariante.

Im Basisspiel verwendet: 2-mal in 1 Datei

base/content/gui/gui/line_vehicle_mgmt/vehicle_store_window.tl:1843

local muAndIds : {VehicleStoreWindow.MuAndId} = variantGroup2muAndVariants[elemStatic.path]

Felder

Name Typ Beschreibung
multipleUnit boolean True, wenn id eine Triebzug-ID ist, false bei einer Modell-ID.
id integer Modell-ID oder Triebzug-ID.

VehicleStoreWindow.VehiclesStaticData

record base/tealdef/gui/line_vehicle_mgmt/vehicle_store_window.d.tl:14

record VehiclesStaticData

Hinweise

Fahrzeugdaten, die der Einstiegspunkt einmal für alle Modelle mit Metadaten transportVehicle und alle Triebzüge berechnet.

Im Basisspiel verwendet: 5-mal in 1 Datei

base/content/gui/gui/line_vehicle_mgmt/vehicle_store_window.tl:54

vehiclesStaticData : VehicleStoreWindow.VehiclesStaticData

Felder

Name Typ Beschreibung
repId2elementStatic {integer : VehicleStoreUtil.ElementStatic} Statisches Element des Ladens pro Modell-ID oder Triebzug-ID.
variantGroup2muAndVariants {string : {MuAndId}} Varianten pro Variantengruppe (die groupFileName des Transportfahrzeugs oder Triebzugs).

VehicleStoreWindow.VehicleStoreEventParam

record base/tealdef/gui/line_vehicle_mgmt/vehicle_store_window.d.tl:19

record VehicleStoreEventParam

Hinweise

Nutzdaten der GUI-Events buyVehicles, replaceVehicles und modifyVehicles, die das Fenster des Ladens öffnen.

Beispiel

-- aus entity_window/vehicle/vehicle.tl
local tmc = line_util.getLineAndVehicleCompatibleTransportModesAndCarrier({vehicleEntityId})
react.fireEvent(nil, "replaceVehicles", {
    vehicleEntities = {vehicleEntityId},
    carrier = tmc.carrier,
    transportModes = tmc.transportModes,
    filterTags = vehicle_store_util.getVehicleFilterTags({vehicleEntityId}),
    openedFromEOW = true,
    onClose = function() replaceWindowOpen:set(false) end,
})
Im Basisspiel verwendet: 7-mal in 3 Dateien

base/content/gui/gui/entity_window/vehicle/vehicle.tl:452

local replaceParam : VehicleStoreWindow.VehicleStoreEventParam = {
base/content/gui/gui/line_vehicle_mgmt/manager_window.tl:4855
vehicleStoreEventParamState : ReactStateT<VehicleStoreWindow.VehicleStoreEventParam>
base/content/gui/gui/line_vehicle_mgmt/vehicle_store_window.tl:4868
react.onEvent("buyVehicles", function(__ : string, param : VehicleStoreWindow.VehicleStoreEventParam)

Felder

Name Typ Beschreibung
title string Fenstertitel (verwendet von buyVehicles; Ersetzen und Anpassen haben feste Titel).
vehicleEntities {Engine.Entity} Fahrzeuge, die ersetzt oder angepasst werden.
depot Engine.Entity Depot, in dem neue Fahrzeuge gekauft werden (Modus Buy).
carrier Carrier Verkehrsträger der angebotenen Fahrzeuge.
transportModes {TransportMode : boolean} Transportmodi, die die angebotenen Fahrzeuge unterstützen müssen.
filterTags {string} Filter-Tags, zu denen die angebotenen Fahrzeuge passen müssen.
openedFromEOW boolean True, wenn das Fenster aus einem Infofenster geöffnet wurde. Das ändert den Fensterstil und die Anfangsposition.

Funktionen

getFirstStopToSendTo(vehicleToSendToLine : Engine.Entity, lineToSendTo : Engine.Entity) : integer base/tealdef/gui/line_vehicle_mgmt/vehicle_store_window.d.tl:29

Hinweise

Gibt den Index der Haltestelle zurück, zu der ein neu gekauftes Fahrzeug auf seiner Linie fährt.

Rückgabe integer

onLocate() base/tealdef/gui/line_vehicle_mgmt/vehicle_store_window.d.tl:33

Hinweise

Wird von der Anpeilen-Schaltfläche des Fensters aufgerufen (nur im Modus Buy).

onClose() base/tealdef/gui/line_vehicle_mgmt/vehicle_store_window.d.tl:34

Hinweise

Wird aufgerufen, wenn das Fenster geschlossen wird.

buyCallback(resultEntities : {{Engine.Entity, Engine.Revision}}) base/tealdef/gui/line_vehicle_mgmt/vehicle_store_window.d.tl:35

Hinweise

Wird mit {{entity, revision}} der gekauften Fahrzeuge aufgerufen (nur im Modus Buy).

VehicleStoreWindow.VehicleStoreWindowParam

record base/tealdef/gui/line_vehicle_mgmt/vehicle_store_window.d.tl:38

record VehicleStoreWindowParam

Hinweise

Parameter des Recipes VehicleStoreWindow. Der Einstiegspunkt baut sie aus einem VehicleStoreEventParam.

Im Basisspiel verwendet: 4-mal in 1 Datei

base/content/gui/gui/line_vehicle_mgmt/vehicle_store_window.tl:4482

vehicle_store_window.VehicleStoreWindow = react.RegisterWrapperRecipe("VehicleStoreWindow", builtin.Window, function(params : VehicleStoreWindow.VehicleStoreWin

Felder

Name Typ Beschreibung
gameCtx GameContext Spielkontext.
layoutStyleRef ReactRefT<VehicleStoreWindow.LayoutStyle> Gemeinsame Ref mit dem aktuellen Layout.
vehiclesStaticData VehiclesStaticData Vorberechnete Fahrzeugdaten.
colorChooserColorsStaticData {Vec3f} Farben, die die Farbauswahl anbietet (Linienfarben und Graustufen).
title string Fenstertitel.
vehicleEntities {Engine.Entity} Fahrzeuge, die ersetzt oder angepasst werden. Das Fenster schließt sich, wenn keines davon mehr existiert.
depot Engine.Entity Depot für neue Fahrzeuge. Bei nil wählt api.engine.util.vehicle.findBestLineAndDepotForVehicle eines aus.
carrier Carrier Verkehrsträger der angebotenen Fahrzeuge. Bei Schiene und Tram lassen sich im Warenkorb mehrteilige Zugverbände bilden, bei anderen Verkehrsträgern wird sofort gekauft.
transportModes {TransportMode : boolean} Transportmodi, die die angebotenen Fahrzeuge unterstützen müssen.
filterTags {string} Filter-Tags, zu denen die angebotenen Fahrzeuge passen müssen.
vehicleStoreMode VehicleStore.VehicleStoreMode Buy, Replace oder Modify.
locateVisible boolean Zeigt die Anpeilen-Schaltfläche des Fensters.
openedFromEOW boolean True, wenn das Fenster aus einem Infofenster geöffnet wurde.

Funktionen

getFirstStopToSendTo(vehicleToSendToLine : Engine.Entity, lineToSendTo : Engine.Entity) : integer base/tealdef/gui/line_vehicle_mgmt/vehicle_store_window.d.tl:57

Hinweise

Gibt den Index der Haltestelle zurück, zu der ein neu gekauftes Fahrzeug auf seiner Linie fährt.

Rückgabe integer

onLocate() base/tealdef/gui/line_vehicle_mgmt/vehicle_store_window.d.tl:61

Hinweise

Wird von der Anpeilen-Schaltfläche aufgerufen.

onClose() base/tealdef/gui/line_vehicle_mgmt/vehicle_store_window.d.tl:62

Hinweise

Wird aufgerufen, wenn das Fenster geschlossen wird.

onAccepted({VehicleReactUtil.VehicleChange}) base/tealdef/gui/line_vehicle_mgmt/vehicle_store_window.d.tl:63

Hinweise

Wird mit den übernommenen Änderungen aufgerufen, nachdem sie an VehicleReactUtil.HandleVehicleChanges gegangen sind.

buyCallback(resultEntities : {{Engine.Entity, Engine.Revision}}) base/tealdef/gui/line_vehicle_mgmt/vehicle_store_window.d.tl:64

Hinweise

Wird mit {{entity, revision}} der gekauften Fahrzeuge aufgerufen.

VehicleStoreWindow.VehicleStoreEntryPointParam

record base/tealdef/gui/line_vehicle_mgmt/vehicle_store_window.d.tl:67

record VehicleStoreEntryPointParam

Hinweise

Parameter von VehicleStoreEntryPoint.

Im Basisspiel verwendet: 1-mal in 1 Datei

base/content/gui/gui/line_vehicle_mgmt/vehicle_store_window.tl:4678

vehicle_store_window.VehicleStoreEntryPoint = react.RegisterRecipe("VehicleStoreEntryPoint", function(entryPointParam : VehicleStoreWindow.VehicleStoreEntryPoin

Felder

Name Typ Beschreibung
gameCtx GameContext Spielkontext. Sein Fenster-Container nimmt das Fenster des Ladens auf.