Skip to content

API Signal Symbole

Marcel1853 edited this page Oct 21, 2026 · 3 revisions

🇬🇧 English version · ⬅ Für Mod-Autoren

Signal-Symbole (Daten-Stufe)

UTL hat zwei Stile für seine Signale, wählbar in der Start-Einstellung „Signal-Stil“ (utl-signal-style): "classic" (zusammengesetzt aus Vanilla-Bildern) und "flat" (flach wie die Vanilla-Signale).

UTL-Signale mit eigenen Symbolen

Andere Mods dürfen die Symbole der UTL-Signale ersetzen. UTL legt dafür den Prototyp mod-data mit dem Namen utl-signal-icons an. In data.lua oder data-updates.lua der eigenen Mod (mit Abhängigkeit auf UTLogistics) eintragen:

local icons = data.raw["mod-data"]["utl-signal-icons"].data

-- ein Symbol für beide Stile
icons["utl-max-trains"] = { { icon = "__meine-mod__/graphics/max-trains.png", icon_size = 64 } }

-- je Stil ein eigenes (neu in 0.0.20); fehlt einer, bleibt dort UTLs Symbol
icons["utl-loading"] = {
  classic = { { icon = "__meine-mod__/graphics/loading-classic.png", icon_size = 64 } },
  flat    = { { icon = "__meine-mod__/graphics/loading-flat.png", icon_size = 64 } },
}

Schlüssel = Name eines UTL-Signals (utl-…), Wert = icons-Liste wie bei jedem Prototyp oder eine Tabelle mit classic und/oder flat. UTL übernimmt die Einträge in data-final-fixes.lua; unbekannte Signale oder ungültige Listen werden mit Hinweis im Log übergangen. Zur Laufzeit stehen die Einträge in prototypes.mod_data["utl-signal-icons"].

Eigene Signale im passenden Stil

Ein Add-on mit eigenen Signalen (z. B. für eine eigene Rolle) kann den Stil in seiner Daten-Stufe selbst lesen – Start-Einstellungen anderer Mods sind dort lesbar:

local flat = settings.startup["utl-signal-style"] and settings.startup["utl-signal-style"].value == "flat"
data:extend({ {
  type = "virtual-signal",
  name = "meine-mod-abstellgleis",
  icon = flat and "__meine-mod__/graphics/abstellgleis-flat.png" or "__meine-mod__/graphics/abstellgleis.png",
  icon_size = 64,
  subgroup = "virtual-signal",
} })

Das Signal lässt sich dann im Rich-Text der Rollen-Beschriftung zeigen: caption = "[virtual-signal=meine-mod-abstellgleis] Abstellgleis".

Clone this wiki locally