style(ui): the last hand-rolled colours join the theme

Five screen titles in the main menu were white on a black outline and the HUD
used Color.BLACK outlines and a hardcoded grey. That was the old comic theme's
contrast trick, and next to a papaya wordmark it read as a different game's
menu. They take UITheme.PAPAYA, INK and PAPER_DIM now, so every screen —
main menu, pause menu, character picker, settings, HUD and rig lab — is one
palette with one source.

Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
Nicholas Butzke
2026-07-27 14:57:31 -04:00
co-authored by Claude Opus 5
parent 08ae85b286
commit 99a2ee131d
2 changed files with 15 additions and 15 deletions
+11 -11
View File
@@ -97,8 +97,8 @@ func _ready() -> void:
var ls_title = Label.new() var ls_title = Label.new()
ls_title.text = "Select Level" ls_title.text = "Select Level"
ls_title.add_theme_font_size_override("font_size", 64) ls_title.add_theme_font_size_override("font_size", 64)
ls_title.add_theme_color_override("font_color", Color(1, 1, 1)) ls_title.add_theme_color_override("font_color", UITheme.PAPAYA)
ls_title.add_theme_color_override("font_outline_color", Color(0, 0, 0)) ls_title.add_theme_color_override("font_outline_color", UITheme.INK)
ls_title.add_theme_constant_override("outline_size", 8) ls_title.add_theme_constant_override("outline_size", 8)
_level_selector_panel.add_child(ls_title) _level_selector_panel.add_child(ls_title)
@@ -131,8 +131,8 @@ func _ready() -> void:
var mp_title = Label.new() var mp_title = Label.new()
mp_title.text = "Multiplayer" mp_title.text = "Multiplayer"
mp_title.add_theme_font_size_override("font_size", 64) mp_title.add_theme_font_size_override("font_size", 64)
mp_title.add_theme_color_override("font_color", Color(1, 1, 1)) mp_title.add_theme_color_override("font_color", UITheme.PAPAYA)
mp_title.add_theme_color_override("font_outline_color", Color(0, 0, 0)) mp_title.add_theme_color_override("font_outline_color", UITheme.INK)
mp_title.add_theme_constant_override("outline_size", 8) mp_title.add_theme_constant_override("outline_size", 8)
_multiplayer_panel.add_child(mp_title) _multiplayer_panel.add_child(mp_title)
@@ -159,8 +159,8 @@ func _ready() -> void:
var dc_title = Label.new() var dc_title = Label.new()
dc_title.text = "Direct Connect" dc_title.text = "Direct Connect"
dc_title.add_theme_font_size_override("font_size", 64) dc_title.add_theme_font_size_override("font_size", 64)
dc_title.add_theme_color_override("font_color", Color(1, 1, 1)) dc_title.add_theme_color_override("font_color", UITheme.PAPAYA)
dc_title.add_theme_color_override("font_outline_color", Color(0, 0, 0)) dc_title.add_theme_color_override("font_outline_color", UITheme.INK)
dc_title.add_theme_constant_override("outline_size", 8) dc_title.add_theme_constant_override("outline_size", 8)
_direct_connect_panel.add_child(dc_title) _direct_connect_panel.add_child(dc_title)
@@ -226,8 +226,8 @@ func _ready() -> void:
var hl_title = Label.new() var hl_title = Label.new()
hl_title.text = "Host Lobby - Select Level" hl_title.text = "Host Lobby - Select Level"
hl_title.add_theme_font_size_override("font_size", 64) hl_title.add_theme_font_size_override("font_size", 64)
hl_title.add_theme_color_override("font_color", Color(1, 1, 1)) hl_title.add_theme_color_override("font_color", UITheme.PAPAYA)
hl_title.add_theme_color_override("font_outline_color", Color(0, 0, 0)) hl_title.add_theme_color_override("font_outline_color", UITheme.INK)
hl_title.add_theme_constant_override("outline_size", 8) hl_title.add_theme_constant_override("outline_size", 8)
hl_left.add_child(hl_title) hl_left.add_child(hl_title)
@@ -271,7 +271,7 @@ func _ready() -> void:
var pl_title = Label.new() var pl_title = Label.new()
pl_title.text = "Players Connected" pl_title.text = "Players Connected"
pl_title.add_theme_font_size_override("font_size", 48) pl_title.add_theme_font_size_override("font_size", 48)
pl_title.add_theme_color_override("font_outline_color", Color(0, 0, 0)) pl_title.add_theme_color_override("font_outline_color", UITheme.INK)
pl_title.add_theme_constant_override("outline_size", 8) pl_title.add_theme_constant_override("outline_size", 8)
hl_right.add_child(pl_title) hl_right.add_child(pl_title)
@@ -279,7 +279,7 @@ func _ready() -> void:
if get_node_or_null("/root/NetworkManager"): if get_node_or_null("/root/NetworkManager"):
port_label.text = "Port: " + str(get_node("/root/NetworkManager").DEFAULT_PORT) port_label.text = "Port: " + str(get_node("/root/NetworkManager").DEFAULT_PORT)
port_label.add_theme_font_size_override("font_size", 24) port_label.add_theme_font_size_override("font_size", 24)
port_label.add_theme_color_override("font_color", Color(0.7, 0.7, 0.7)) port_label.add_theme_color_override("font_color", UITheme.PAPER_DIM)
hl_right.add_child(port_label) hl_right.add_child(port_label)
_host_lobby_players_list = ItemList.new() _host_lobby_players_list = ItemList.new()
@@ -352,7 +352,7 @@ func _build_level_card(parent: Container, title: String, scene_path: String, gra
var lbl = Label.new() var lbl = Label.new()
lbl.text = title lbl.text = title
lbl.add_theme_font_size_override("font_size", 32) lbl.add_theme_font_size_override("font_size", 32)
lbl.add_theme_color_override("font_color", Color.WHITE) lbl.add_theme_color_override("font_color", UITheme.PAPER)
lbl.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER lbl.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER
lbl.set_anchors_preset(Control.PRESET_FULL_RECT) lbl.set_anchors_preset(Control.PRESET_FULL_RECT)
overlay.add_child(lbl) overlay.add_child(lbl)
+4 -4
View File
@@ -33,7 +33,7 @@ func _ready() -> void:
_time_label = Label.new() _time_label = Label.new()
_time_label.add_theme_font_size_override("font_size", 48) _time_label.add_theme_font_size_override("font_size", 48)
_time_label.add_theme_color_override("font_outline_color", Color.BLACK) _time_label.add_theme_color_override("font_outline_color", UITheme.INK)
_time_label.add_theme_constant_override("outline_size", 8) _time_label.add_theme_constant_override("outline_size", 8)
top_hbox.add_child(_time_label) top_hbox.add_child(_time_label)
@@ -48,7 +48,7 @@ func _ready() -> void:
_leader_label = Label.new() _leader_label = Label.new()
_leader_label.text = "Leader: None" _leader_label.text = "Leader: None"
_leader_label.add_theme_font_size_override("font_size", 32) _leader_label.add_theme_font_size_override("font_size", 32)
_leader_label.add_theme_color_override("font_outline_color", Color.BLACK) _leader_label.add_theme_color_override("font_outline_color", UITheme.INK)
_leader_label.add_theme_constant_override("outline_size", 8) _leader_label.add_theme_constant_override("outline_size", 8)
top_hbox.add_child(_leader_label) top_hbox.add_child(_leader_label)
@@ -131,7 +131,7 @@ func _populate_scoreboard_headers() -> void:
var l = Label.new() var l = Label.new()
l.text = h l.text = h
l.add_theme_font_size_override("font_size", 24) l.add_theme_font_size_override("font_size", 24)
l.add_theme_color_override("font_color", Color(0.7, 0.7, 0.7)) l.add_theme_color_override("font_color", UITheme.PAPER_DIM)
_scoreboard_grid.add_child(l) _scoreboard_grid.add_child(l)
func _update_hud() -> void: func _update_hud() -> void:
@@ -204,7 +204,7 @@ func _on_killfeed_event(victim: String, killer: String, weapon: String, v_color:
l.text = "[color=#%s]%s[/color] [%s] [color=#%s]%s[/color]" % [k_color, killer, weapon, v_color, victim] l.text = "[color=#%s]%s[/color] [%s] [color=#%s]%s[/color]" % [k_color, killer, weapon, v_color, victim]
l.add_theme_font_size_override("normal_font_size", 20) l.add_theme_font_size_override("normal_font_size", 20)
l.add_theme_color_override("font_outline_color", Color.BLACK) l.add_theme_color_override("font_outline_color", UITheme.INK)
l.add_theme_constant_override("outline_size", 4) l.add_theme_constant_override("outline_size", 4)
_killfeed_vbox.add_child(l) _killfeed_vbox.add_child(l)