Zum Inhalt

color_util

Quelle: base/tealdef/gui/main/color_util.d.tl

Hinweise

Farbtypen der GUI-Ressourcendateien (*.gres) und Hilfsfunktionen, die daraus Werte vom Typ Vec3f oder Vec4f machen, Transparenz hinzufügen, Farben mischen und hellere Töne für Hover und aktive Zustände ableiten.

GResColor

record global base/tealdef/gui/main/color_util.d.tl:3

global record GResColor is {number}

{number} is expected to have length 3 or 4

GResColorRange

record global base/tealdef/gui/main/color_util.d.tl:4

global record GResColorRange

Hinweise

Ein Paar GUI-Ressourcenfarben (Minimum und Maximum), etwa für einen Farbverlauf.

Felder

Name Typ Beschreibung
min GResColor Farbe am unteren Ende des Bereichs.
max GResColor Farbe am oberen Ende des Bereichs.

GResColorArray

record global base/tealdef/gui/main/color_util.d.tl:8

global record GResColorArray is {GResColor}

Hinweise

Eine Liste von GUI-Ressourcenfarben.

GResTransparency

record global base/tealdef/gui/main/color_util.d.tl:10

global record GResTransparency

Hinweise

Die Standard-Alphawerte der GUI aus der Ressource ::/gui/main/transparency.gres.

Details

Du liest sie mit api.gui.genericRep.get(api.gui.genericRep.find("::/gui/main/transparency.gres")).data und übergibst die Werte als alpha an color_util.withTransparency.

Felder

Name Typ Beschreibung
VeryLow number Alpha 0,9 (fast deckend).
Low number Alpha 0,75.
Medium number Alpha 0,5.
High number Alpha 0,25.
VeryHigh number Alpha 0,1 (fast durchsichtig).

Funktionen

metamethod __index(GResTransparency, string) : number base/tealdef/gui/main/color_util.d.tl:11

Hinweise

Zugriff auf die Alphawerte über den Namen (transparency["Low"]).

Rückgabe number

ColorUtil

record global base/tealdef/gui/main/color_util.d.tl:20

global record ColorUtil

Laden: local color_util = require "::/gui/main/color_util.tl" as ColorUtil

Hinweise

Hilfsfunktionen zum Umwandeln und Mischen von GUI-Ressourcenfarben (GResColor, eine Liste aus 3 oder 4 Zahlen zwischen 0 und 1).

Funktionen

toVec3(color : GResColor) : Vec3f base/tealdef/gui/main/color_util.d.tl:21

Aufruf: color_util.toVec3(…)

Hinweise

Wandelt eine Farbe in einen Vec3f um (Rot, Grün, Blau); Alpha fällt weg.

Rückgabe Vec3f

Im Basisspiel verwendet: 5-mal in 2 Dateien

base/content/gui/gui/main/particle_react_util.tl:19

api.type.ParticleParamCurveVec3f.CurvePoint.new(0.0, color_util.toVec3(colors.LevelUpStars)),
base/content/mission/mission/mission_sim.script.tl:1191
api.gui.byId.setHighlighted(k, true, style, color_util.toVec3(mission_colors.Highlight))

toVec4(color : GResColor) : Vec4f base/tealdef/gui/main/color_util.d.tl:22

Aufruf: color_util.toVec4(…)

Hinweise

Wandelt eine Farbe in einen Vec4f um; fehlt Alpha, wird es 1,0.

Rückgabe Vec4f

Im Basisspiel verwendet: 163-mal in 49 Dateien

base/content/game_mechanics/game_mechanics/finance/finances_charts.tl:199

colors = { color_util.toVec4(defaultColorsRef:get().Positive), color_util.toVec4(defaultColorsRef:get().Negative) },
base/content/game_mechanics/game_mechanics/finance/finances_react_util.tl:141
backgroundColor1 = color_util.toVec4(colorDefault.BaseLightMedium),
base/content/gui/gui/construction/construction_desc_layers.script.tl:19
contour.color = color_util.toVec4(contourConfig.color)
base/content/gui/gui/construction/construction_react_util.tl:43
modifierColor.inProgress = color_util.toVec4(constructionColors.Modifier.InProgress)
base/content/gui/gui/entity_window/double_slip_switch.tl:70
local redPhaseColor = color_util.toVec4(defaultColors.Error)
base/content/gui/gui/entity_window/industry/industry_eow.script.tl:807
color_util.toVec4(defaultColors.Indifferent),
… und 43 weitere Dateien.

toRange3(colorRange : GResColorRange) : {Vec3f, Vec3f} base/tealdef/gui/main/color_util.d.tl:24

Aufruf: color_util.toRange3(…)

{min, max}

Rückgabe {Vec3f, Vec3f}

toRange4(colorRange : GResColorRange) : {Vec4f, Vec4f} base/tealdef/gui/main/color_util.d.tl:25

Aufruf: color_util.toRange4(…)

{min, max}

Rückgabe {Vec4f, Vec4f}

Im Basisspiel verwendet: 11-mal in 5 Dateien

base/content/gui/gui/entity_window/town/town.tl:54

local passengerTransportColor = color_util.toRange4(layerColors.PassengerFlow.PublicTransport)
base/content/gui/gui/layers/layer_cargo_flow.tl:37
local playerTransportColor = color_util.toRange4(layerColors.CargoFlow.PlayerTransport)
base/content/gui/gui/layers/layer_noise.tl:20
local impactMinMaxColor = color_util.toRange4(layerColors.Noise.Impact)
base/content/gui/gui/layers/layer_passenger_flow.tl:16
local originColor = color_util.toRange4(layerColors.PassengerFlow.Origin)
base/content/gui/gui/layers/layer_pollution.tl:19
local emitterMinMaxColor = color_util.toRange4(layerColors.Pollution.Emission)

toArray3(colorArray : GResColorArray) : {Vec3f} base/tealdef/gui/main/color_util.d.tl:27

Aufruf: color_util.toArray3(…)

Hinweise

Wandelt jede Farbe der Liste mit toVec3 um.

Rückgabe {Vec3f}

Im Basisspiel verwendet: 7-mal in 6 Dateien

base/content/gui/gui/construction/construction_react_util.tl:3326

laneModifier.lineColors = color_util.toArray3(api.gui.genericRep.get(api.gui.genericRep.find("::/gui/line_vehicle_mgmt/line_colors.gres")).data as GResColorArra
base/content/gui/gui/entity_window/vehicle/vehicle_eow.script.tl:139
local colorPalette = color_util.toArray3(table_util.concatenate((api.gui.genericRep.get(api.gui.genericRep.find("::/gui/line_vehicle_mgmt/line_colors.gres")).da
base/content/gui/gui/line_vehicle_mgmt/line_react_util.tl:601
local colorPalette = color_util.toArray3(table_util.concatenate((api.gui.genericRep.get(api.gui.genericRep.find("::/gui/line_vehicle_mgmt/line_colors.gres")).da
base/content/gui/gui/line_vehicle_mgmt/line_util.tl:40
local lineColors = color_util.toArray3(api.gui.genericRep.get(api.gui.genericRep.find("::/gui/line_vehicle_mgmt/line_colors.gres")).data as GResColorArray)
base/content/gui/gui/line_vehicle_mgmt/manager_window.tl:3600
local colorPalette = color_util.toArray3(table_util.concatenate((api.gui.genericRep.get(api.gui.genericRep.find("::/gui/line_vehicle_mgmt/line_colors.gres")).da
base/content/gui/gui/line_vehicle_mgmt/vehicle_store_window.tl:4866
local colorChooserColorsStaticData = color_util.toArray3(table_util.concatenate((api.gui.genericRep.get(api.gui.genericRep.find("::/gui/line_vehicle_mgmt/line_c

toArray4(colorArray : GResColorArray) : {Vec4f} base/tealdef/gui/main/color_util.d.tl:28

Aufruf: color_util.toArray4(…)

Hinweise

Wandelt jede Farbe der Liste mit toVec4 um.

Rückgabe {Vec4f}

Im Basisspiel verwendet: 16-mal in 14 Dateien

base/content/game_mechanics/game_mechanics/finance/finances_charts.tl:233

local chartColorsRef = react.useRef(color_util.toArray4(api.gui.genericRep.get(api.gui.genericRep.find("::/gui/main/chart_colors.gres")).data as GResColorArray)
base/content/game_mechanics/game_mechanics/subventions/deliver_cargo/deliver_cargo.script.tl:408
local actualColors = color_util.toArray4(layerColors.CargoFlow.Consumers3D.Actual)
base/content/game_mechanics/game_mechanics/subventions/deliver_cargo_town/deliver_cargo_town.script.tl:506
local actualColors = color_util.toArray4(layerColors.CargoFlow.Consumers3D.Actual)
base/content/game_mechanics/game_mechanics/subventions/deliver_passengers/deliver_passengers.script.tl:461
local actualColors = color_util.toArray4(layerColors.CargoFlow.Consumers3D.Actual)
base/content/game_mechanics/game_mechanics/subventions/deliver_workers/deliver_workers.script.tl:295
local actualColors = color_util.toArray4(layerColors.CargoFlow.Consumers3D.Actual)
base/content/gui/gui/construction/construction_react_util.tl:549
layerConfig.voronoiRenderableConfig.colors = color_util.toArray4(layerColors.Construction.Voronoi)
… und 8 weitere Dateien.

toArray4WithTransparency(colorArray : GResColorArray, alpha : number) : {Vec4f} base/tealdef/gui/main/color_util.d.tl:29

Aufruf: color_util.toArray4WithTransparency(…)

Hinweise

Wandelt jede Farbe der Liste in einen Vec4f mit dem angegebenen Alpha um (das Alpha der Farbe selbst wird ersetzt).

Rückgabe {Vec4f}

Im Basisspiel verwendet: 6-mal in 3 Dateien

base/content/gui/gui/entity_window/industry/industry.tl:332

local potentialColors = color_util.toArray4WithTransparency(layerColors.CargoFlow.Suppliers3D.Potential, transparency.VeryLow)
base/content/gui/gui/entity_window/town/town.tl:1024
local actualColors = color_util.toArray4WithTransparency(layerColors.CargoFlow.Suppliers3D.Actual, transparency.VeryLow)
base/content/gui/gui/layers/layer_infrastructure.tl:37
edgeRenderableConfig.speedColor = color_util.toArray4WithTransparency(layerColors.Infrastructure.Speed, transparency.Low)

withTransparency(gResColor : GResColor, alpha : number) : Vec4f base/tealdef/gui/main/color_util.d.tl:31

Aufruf: color_util.withTransparency(…)

Hinweise

Gibt die Farbe als Vec4f zurück, mit alpha anstelle ihres Alphawerts.

Rückgabe Vec4f

Im Basisspiel verwendet: 30-mal in 8 Dateien

base/content/gui/gui/construction/construction_desc_layers.script.tl:38

mapColors.water = color_util.withTransparency(layerColors.Terrain.Water, transparency.Low)
base/content/gui/gui/construction/construction_react_util.tl:37
modifierColor.validSubtle = color_util.withTransparency(constructionColors.Modifier.Valid, transparency.Medium)
base/content/gui/gui/entity_window/double_slip_switch.tl:76
color_util.withTransparency(defaultColors.Error, transparency.VeryHigh)
base/content/gui/gui/layers/layer_infrastructure.tl:39
edgeRenderableConfig.tunnelOutlineColor = color_util.withTransparency(layerColors.Infrastructure.Tunnel, transparency.Low)
base/content/gui/gui/layers/layer_terrain.tl:20
local waterColor = color_util.withTransparency(layerColors.Terrain.Water, transparency.Low)
base/content/gui/gui/layers/layer_traffic.tl:34
color_util.withTransparency(layerColors.Traffic.Jammed, transparency.Medium),
… und 2 weitere Dateien.

withTransparencyRaw(gResColor : GResColor, alpha : number) : GResColor base/tealdef/gui/main/color_util.d.tl:32

Aufruf: color_util.withTransparencyRaw(…)

Hinweise

Gibt eine neue GResColor zurück, mit alpha anstelle ihres Alphawerts.

Rückgabe GResColor

Im Basisspiel verwendet: 323-mal in 37 Dateien

base/content/game_mechanics/game_mechanics/achievements/achievements.css.lua:103

backgroundColor1 = color_util.withTransparencyRaw(
base/content/game_mechanics/game_mechanics/company/company.css.lua:14
local cardColor = color_util.withTransparencyRaw(colorDefault.BaseVeryLight, transparency.Medium)
base/content/game_mechanics/game_mechanics/finance/finances.css.lua:28
local financesTableHoverColor = color_util.withTransparencyRaw(colorDefault.AccentLight, transparency.Medium)
base/content/game_mechanics/game_mechanics/notifications/gui/notifications.css.lua:16
local notificationCautionTransparent = color_util.withTransparencyRaw(notificationCautionSolid, transparency.High)
base/content/game_mechanics/game_mechanics/towns/town_react_util.css.lua:23
backgroundColor1 = color_util.withTransparencyRaw(
base/content/gui/gui/camera_tool/camera_tool.css.lua:12
local borderColor = color_util.withTransparencyRaw(colorDefault.BaseVeryLight, transparency.Medium)
… und 31 weitere Dateien.

mixColors(colorA : GResColor, colorB : GResColor, amount : number) : Vec4f base/tealdef/gui/main/color_util.d.tl:34

Aufruf: color_util.mixColors(…)

Hinweise

Interpoliert linear zwischen zwei Farben (Alpha eingeschlossen) und gibt einen Vec4f zurück.

Parameter Typ Beschreibung
colorA GResColor
colorB GResColor
amount number Bei 0 kommt colorA heraus, bei 1 colorB.

Rückgabe Vec4f

mixColorsRaw(colorA : GResColor, colorB : GResColor, amount : number) : GResColor base/tealdef/gui/main/color_util.d.tl:35

Aufruf: color_util.mixColorsRaw(…)

Hinweise

Wie mixColors, gibt aber eine GResColor zurück.

Rückgabe GResColor

Im Basisspiel verwendet: 3-mal in 2 Dateien

base/content/gui/gui/line_vehicle_mgmt/line_vehicle_mgmt.css.lua:37

color = color_util.mixColorsRaw(
base/content/gui/gui/main/internal.css.lua:22
backgroundColor1 = color_util.mixColorsRaw(

getHoverFrom(enabledColor : GResColor) : Vec4f base/tealdef/gui/main/color_util.d.tl:37

Aufruf: color_util.getHoverFrom(…)

Hinweise

Leitet den Hover-Ton einer Farbe ab (im HSV-Raum Helligkeit +0,2, etwas weniger Sättigung) und gibt ihn als Vec4f zurück.

Rückgabe Vec4f

Im Basisspiel verwendet: 1-mal in 1 Datei

base/content/game_mechanics/game_mechanics/finance/finances_react_util.tl:133

backgroundColor1 = color_util.getHoverFrom({color.x, color.y, color.z, color.w}),

getHoverFromRaw(enabledColor : GResColor) : GResColor base/tealdef/gui/main/color_util.d.tl:38

Aufruf: color_util.getHoverFromRaw(…)

Hinweise

Wie getHoverFrom, gibt aber eine GResColor zurück.

Rückgabe GResColor

Im Basisspiel verwendet: 54-mal in 8 Dateien

base/content/game_mechanics/game_mechanics/company/company.css.lua:139

color_util.getHoverFromRaw(colorDefault.AccentLight),
base/content/game_mechanics/game_mechanics/notifications/gui/notifications.css.lua:130
backgroundColor1 = color_util.getHoverFromRaw(notificationProblemSolid),
base/content/gui/gui/game_bar/game_bar.css.lua:132
borderColor = color_util.getHoverFromRaw(colorDefault.AccentDark),
base/content/gui/gui/line_vehicle_mgmt/line_vehicle_mgmt.css.lua:1930
backgroundColor1 = color_util.getHoverFromRaw(colorDefault.NeutralDark),
base/content/gui/gui/main/builtin.css.lua:207
borderColor = color_util.getHoverFromRaw(colorDefault.AccentMedium),
base/content/gui/gui/main/default.css.lua:84
backgroundColor1 = color_util.getHoverFromRaw(colorDefault.AccentDark),
… und 2 weitere Dateien.

getActiveFrom(enabledColor : GResColor) : Vec4f base/tealdef/gui/main/color_util.d.tl:40

Aufruf: color_util.getActiveFrom(…)

Hinweise

Leitet den Ton einer Farbe für gedrückt oder aktiv ab (im HSV-Raum Helligkeit +0,1, etwas weniger Sättigung) und gibt ihn als Vec4f zurück.

Rückgabe Vec4f

Im Basisspiel verwendet: 2-mal in 1 Datei

base/content/game_mechanics/game_mechanics/finance/finances_react_util.tl:125

backgroundColor1 = color_util.getActiveFrom({color.x, color.y, color.z, color.w}),

getActiveFromRaw(enabledColor : GResColor) : GResColor base/tealdef/gui/main/color_util.d.tl:41

Aufruf: color_util.getActiveFromRaw(…)

Hinweise

Wie getActiveFrom, gibt aber eine GResColor zurück.

Rückgabe GResColor

Im Basisspiel verwendet: 57-mal in 9 Dateien

base/content/game_mechanics/game_mechanics/company/company.css.lua:146

color_util.getActiveFromRaw(colorDefault.AccentLight),
base/content/game_mechanics/game_mechanics/notifications/gui/notifications.css.lua:134
backgroundColor1 = color_util.getActiveFromRaw(notificationProblemSolid),
base/content/gui/gui/game_bar/game_bar.css.lua:137
borderColor = color_util.getActiveFromRaw(colorDefault.AccentDark),
base/content/gui/gui/line_vehicle_mgmt/line_vehicle_mgmt.css.lua:409
backgroundColor1 = color_util.getActiveFromRaw(colorDefault.BaseVeryLight),
base/content/gui/gui/main/builtin.css.lua:224
borderColor = color_util.getActiveFromRaw(colorDefault.AccentMedium),
base/content/gui/gui/main/content_card.css.lua:80
backgroundColor1 = color_util.getActiveFromRaw(colorDefault.BaseDark),
… und 3 weitere Dateien.