Replace Color Game with pod number reaction game on the API WebSocket.

Players match a displayed digit to the correct pod via tap, with round timing and adjustable LED brightness.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-05-29 22:04:20 +02:00
co-authored by Cursor
parent 4f3435ba37
commit 440b49c889
2 changed files with 342 additions and 81 deletions
+97 -45
View File
@@ -11,7 +11,7 @@ grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_color")
[node name="ColorRect" type="ColorRect" parent="."]
[node name="Background" type="ColorRect" parent="."]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
@@ -19,55 +19,108 @@ anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
color = Color(0.5, 0.3, 0.7, 1)
color = Color(0.08, 0.09, 0.14, 1)
[node name="UiLayer" type="CanvasLayer" parent="."]
[node name="BackButton" type="Button" parent="UiLayer"]
[node name="TopBar" type="HBoxContainer" parent="UiLayer"]
anchors_preset = 10
anchor_right = 1.0
offset_left = 16.0
offset_top = 12.0
offset_right = 120.0
offset_bottom = 44.0
offset_right = -16.0
offset_bottom = 52.0
grow_horizontal = 2
theme_override_constants/separation = 16
[node name="BackButton" type="Button" parent="UiLayer/TopBar"]
custom_minimum_size = Vector2(100, 0)
layout_mode = 2
text = "Menü"
[node name="Title" type="Label" parent="UiLayer"]
anchors_preset = 5
anchor_left = 0.5
anchor_right = 0.5
offset_left = -200.0
[node name="Title" type="Label" parent="UiLayer/TopBar"]
layout_mode = 2
theme_override_colors/font_color = Color(0.9, 0.92, 0.98, 1)
theme_override_font_sizes/font_size = 22
text = "Zahlen-Spiel"
[node name="StatusLabel" type="Label" parent="UiLayer/TopBar"]
layout_mode = 2
size_flags_horizontal = 3
theme_override_colors/font_color = Color(0.55, 0.6, 0.7, 1)
theme_override_font_sizes/font_size = 13
horizontal_alignment = 2
text = "Verbinde…"
[node name="SettingsPanel" type="HBoxContainer" parent="UiLayer"]
anchors_preset = 1
anchor_left = 1.0
anchor_right = 1.0
offset_left = -320.0
offset_top = 60.0
offset_right = -16.0
offset_bottom = 96.0
grow_horizontal = 0
theme_override_constants/separation = 10
[node name="IntensityCaption" type="Label" parent="UiLayer/SettingsPanel"]
layout_mode = 2
theme_override_colors/font_color = Color(0.75, 0.8, 0.9, 1)
theme_override_font_sizes/font_size = 13
text = "Helligkeit:"
[node name="IntensitySlider" type="HSlider" parent="UiLayer/SettingsPanel"]
custom_minimum_size = Vector2(180, 0)
layout_mode = 2
size_flags_horizontal = 3
min_value = 0.0
max_value = 255.0
step = 1.0
value = 180.0
tick_count = 0
[node name="IntensityValueLabel" type="Label" parent="UiLayer/SettingsPanel"]
custom_minimum_size = Vector2(36, 0)
layout_mode = 2
theme_override_colors/font_color = Color(0.9, 0.92, 0.98, 1)
theme_override_font_sizes/font_size = 13
horizontal_alignment = 2
text = "180"
[node name="Center" type="VBoxContainer" parent="UiLayer"]
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -200.0
offset_top = -160.0
offset_right = 200.0
offset_bottom = 100.0
offset_bottom = 120.0
grow_horizontal = 2
theme_override_colors/font_color = Color(1, 1, 1, 1)
theme_override_font_sizes/font_size = 28
horizontal_alignment = 1
text = "Color Game"
grow_vertical = 2
theme_override_constants/separation = 16
[node name="TargetRect" type="ColorRect" parent="UiLayer"]
anchors_preset = 5
anchor_left = 0.5
anchor_right = 0.5
offset_left = -60.0
offset_top = 120.0
offset_right = 60.0
offset_bottom = 240.0
grow_horizontal = 2
color = Color(0.85, 0.2, 0.3, 1)
[node name="TargetLabel" type="Label" parent="UiLayer"]
anchors_preset = 5
anchor_left = 0.5
anchor_right = 0.5
offset_left = -100.0
offset_top = 250.0
offset_right = 100.0
offset_bottom = 280.0
grow_horizontal = 2
theme_override_colors/font_color = Color(1, 1, 1, 0.9)
theme_override_font_sizes/font_size = 14
[node name="SubtitleLabel" type="Label" parent="UiLayer/Center"]
layout_mode = 2
theme_override_colors/font_color = Color(0.75, 0.8, 0.9, 1)
theme_override_font_sizes/font_size = 18
horizontal_alignment = 1
text = "Zielfarbe"
text = "Warte auf Pods…"
[node name="TargetLabel" type="Label" parent="UiLayer/Center"]
layout_mode = 2
theme_override_colors/font_color = Color(0.35, 0.92, 1, 1)
theme_override_font_sizes/font_size = 140
horizontal_alignment = 1
text = "—"
[node name="TimerLabel" type="Label" parent="UiLayer/Center"]
layout_mode = 2
theme_override_colors/font_color = Color(1, 0.88, 0.4, 1)
theme_override_font_sizes/font_size = 36
horizontal_alignment = 1
text = ""
[node name="HintLabel" type="Label" parent="UiLayer"]
anchors_preset = 7
@@ -75,14 +128,13 @@ anchor_left = 0.5
anchor_top = 1.0
anchor_right = 0.5
anchor_bottom = 1.0
offset_left = -320.0
offset_top = -80.0
offset_right = 320.0
offset_bottom = -40.0
offset_left = -360.0
offset_top = -72.0
offset_right = 360.0
offset_bottom = -24.0
grow_horizontal = 2
grow_vertical = 0
theme_override_colors/font_color = Color(1, 1, 1, 0.85)
theme_override_font_sizes/font_size = 14
theme_override_colors/font_color = Color(1, 0.55, 0.5, 1)
theme_override_font_sizes/font_size = 16
horizontal_alignment = 1
autowrap_mode = 3
text = "Neige das Gerät, um die Farbe anzupassen"