Zum Inhalt

view_manager_util

Quelle: base/tealdef/gui/entity_window/view_manager_util.d.tl

Hinweise

Hilfsfunktionen, die entscheiden, ob und für welche Entität sich ein Fenster öffnet, wenn eine Entität ausgewählt wird.

ViewManagerUtil

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

global record ViewManagerUtil

Laden: local view_manager_util = ug_require "::/gui/entity_window/view_manager_util.tl" as ViewManagerUtil

Hinweise

Hilfsfunktionen, die entscheiden, ob und für welche Entität sich ein Infofenster öffnet.

Funktionen

baseNodeCanToggleDoubleSlipSwitch(Engine.Entity) : boolean base/tealdef/gui/entity_window/view_manager_util.d.tl:4

Aufruf: view_manager_util.baseNodeCanToggleDoubleSlipSwitch(…)

Hinweise

Liefert, ob ein Gleisknoten eine umschaltbare Doppelkreuzungsweiche ist.

Parameter Typ Beschreibung
#1 Engine.Entity Knoten-Entität.

Rückgabe boolean: True, wenn sich am Knoten genau vier Gleissegmente treffen und genau zwei Paare davon fast gerade verlaufen (Winkel zwischen etwa 3 und 22 Grad).

Im Basisspiel verwendet: 4-mal in 3 Dateien

base/content/gui/gui/entity_window/make_entity_window.tl:651

meta = { tag = tag .. (view_manager_util.baseNodeCanToggleDoubleSlipSwitch(entity) and "doubleSlipSwitch" or "crossing")},
base/content/gui/gui/main/game_tooltips.tl:33
if view_manager_util.baseNodeCanToggleDoubleSlipSwitch(entity) then
base/content/gui/gui/main/selector_react_util.tl:140
if not view_manager_util.baseNodeCanToggleDoubleSlipSwitch(entity)

baseNodeCanConfigTrafficLight(Engine.Entity) : boolean base/tealdef/gui/entity_window/view_manager_util.d.tl:6

Aufruf: view_manager_util.baseNodeCanConfigTrafficLight(…)

Hinweise

Liefert, ob sich an einem Straßenknoten Ampeln einrichten lassen.

Parameter Typ Beschreibung
#1 Engine.Entity Knoten-Entität.

Rückgabe boolean: True, wenn sich am Knoten mehr als zwei Straßensegmente treffen.

Im Basisspiel verwendet: 2-mal in 2 Dateien

base/content/gui/gui/entity_window/double_slip_switch.tl:629

if view_manager_util.baseNodeCanConfigTrafficLight(param.keyEntity) then
base/content/gui/gui/main/selector_react_util.tl:141
and not view_manager_util.baseNodeCanConfigTrafficLight(entity) then

wouldCreateView(entity : Engine.Entity, componentFilter? : {Engine.ComponentType : boolean}, withSoundEffect? : boolean) : Engine.Entity, {string}, boolean, Engine.Entity base/tealdef/gui/entity_window/view_manager_util.d.tl:8

Aufruf: view_manager_util.wouldCreateView(…)

Hinweise

Ermittelt, das Fenster welcher Entität sich öffnet, wenn eine Entität ausgewählt wird.

Parameter Typ Beschreibung
entity Engine.Entity Ausgewählte Entität (z. B. die Entität unter dem Mauszeiger).
componentFilter? {Engine.ComponentType : boolean} Optionale Menge von Komponententypen. Nur diese Arten von Fenstern kommen in Frage.
withSoundEffect? boolean Sucht zusätzlich den Klangeffekt select der Entität.

Rückgabe Engine.Entity, {string}, boolean, Engine.Entity: Die Entität, deren Fenster erscheint (z. B. das Fahrzeug, zu dem ein Waggon gehört, die Stationsgruppe einer Station, die Konstruktion einer Unterkonstruktion), oder nil, wenn es kein Fenster gibt. Dazu die Dateiliste des Auswahlklangs, ob der Titel die Konstruktion statt der Unterkonstruktion umbenennt, und bei Unterkonstruktionen die ursprüngliche Entität.

Details

Die Fensterverwaltung öffnet damit Fenster, und das HUD entscheidet damit, über welchen Entitäten der Mauszeiger reagiert.

Im Basisspiel verwendet: 6-mal in 3 Dateien

base/content/gui/gui/entity_window/entity_window_hud.tl:873

local entity = view_manager_util.wouldCreateView(hoveredEntity, hudIconFilterSetRef:get(), false)
base/content/gui/gui/entity_window/view_manager.tl:464
local _, _, doForceRename, _ = view_manager_util.wouldCreateView(keyEntity, nil, false)
base/content/gui/gui/statistics/statistics.tl:416
local entity = view_manager_util.wouldCreateView(hoveredEntity, hudIconFilterSet, false)

makeEntityReplaceAndComponentTypeFilter(componentTypes : {Engine.ComponentType}) : function(Engine.Entity) : boolean base/tealdef/gui/entity_window/view_manager_util.d.tl:11

Aufruf: view_manager_util.makeEntityReplaceAndComponentTypeFilter(…)

Hinweise

Erzeugt einen Filter, der Entitäten annimmt, für die sich ein Fenster eines der angegebenen Komponententypen öffnen würde.

Parameter Typ Beschreibung
componentTypes {Engine.ComponentType} Komponententypen, die angenommen werden.

Rückgabe function(Engine.Entity) : boolean: Funktion, die true liefert, wenn wouldCreateView(entity, componentTypes) ein Fenster findet.

Im Basisspiel verwendet: 4-mal in 4 Dateien

base/content/gui/gui/layers/layer_noise.tl:210

filter = view_manager_util.makeEntityReplaceAndComponentTypeFilter(layer_noise.getHudIconPreFilter()),
base/content/gui/gui/layers/layer_pollution.tl:218
filter = view_manager_util.makeEntityReplaceAndComponentTypeFilter(layer_pollution.getHudIconPreFilter()),
base/content/gui/gui/layers/layer_react_util.tl:215
filter = view_manager_util.makeEntityReplaceAndComponentTypeFilter(preFilter),
base/content/gui/gui/layers/layer_terrain.tl:215
filter = view_manager_util.makeEntityReplaceAndComponentTypeFilter(filter),