spaceship/surface/PlanetSetupEditor.tscn
Loïc Wisniewski 2f161621c3 #84: move 215 root files into a folder hierarchy
Everything lived in one flat directory, so a diff gave no clue what area it
touched and finding the file you wanted meant knowing its exact name. Twelve
folders now, grouped by what a thing IS rather than what type it is - a
vessel's definition, its component scenes and its upgrade resources sit
together, because that is the set you read when you change one of them.

  buildings  core  controllers  enemies  logistics  planets
  resources  shaders  surface  ui  vessels  vfx  world

332 files moved and every res:// reference rewritten - 306 files touched,
including the autoload and main-scene paths in project.godot. Nothing renamed:
this is purely where files sit, so the diff is a pile of pure moves and no
behaviour is buried in it. ui_theme.tres, icon.svg and web_shell.html stay at
the root, where Godot and the export preset expect them.

Verified three ways, because a suite alone would not have caught all of it:
the full 117 pass, the web export builds clean, and the game renders.

The export is why that matters. The FIRST export after the move failed with
"Attempt to open script 'res://GameState.gd'" - the old path - while
project.godot on disk plainly said res://core/GameState.gd. That is this
project's documented Android FUSE mtime trap: Godot served a cached copy of a
file whose content had changed. A `touch` fixed it. Nothing in the test suite
would have found that, because the suite runs from a copy on a native
filesystem - the one place the bug cannot happen.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-21 19:44:14 +02:00

248 lines
5.7 KiB
Text

[gd_scene load_steps=4 format=3]
[ext_resource type="Script" path="res://surface/PlanetSetupEditor.gd" id="1"]
[ext_resource type="PackedScene" path="res://surface/SurfaceBackground.tscn" id="3"]
[ext_resource type="Script" path="res://ui/IconButton.gd" id="4"]
[node name="PlanetSetupEditor" type="Node2D"]
script = ExtResource("1")
[node name="BackgroundLayer" parent="." instance=ExtResource("3")]
[node name="Camera2D" type="Camera2D" parent="."]
position = Vector2(0, 0)
zoom = Vector2(1, 1)
[node name="ItemHost" type="Node2D" parent="."]
[node name="UI" type="CanvasLayer" parent="."]
layer = 1
[node name="BackButton" type="Control" parent="UI"]
offset_left = 20
offset_top = 20
offset_right = 92
offset_bottom = 92
script = ExtResource("4")
icon = 1
glow_color = Color(0.9, 0.35, 0.35, 1)
[node name="BackCaption" type="Label" parent="UI"]
mouse_filter = 2
offset_left = 20
offset_top = 96
offset_right = 92
offset_bottom = 122
theme_override_font_sizes/font_size = 18
horizontal_alignment = 1
text = "Back"
[node name="ProfileButton" type="Control" parent="UI"]
offset_left = 110
offset_top = 20
offset_right = 182
offset_bottom = 92
script = ExtResource("4")
icon = 0
glow_color = Color(0.5, 0.75, 1, 1)
[node name="ProfileValueLabel" type="Label" parent="UI"]
mouse_filter = 2
offset_left = 190
offset_top = 36
offset_right = 340
offset_bottom = 76
theme_override_font_sizes/font_size = 26
text = "ROCKY"
[node name="NameInput" type="LineEdit" parent="UI"]
offset_left = 350
offset_top = 36
offset_right = 696
offset_bottom = 76
placeholder_text = "Setup name"
text = "Untitled"
[node name="NewButton" type="Control" parent="UI"]
offset_left = 20
offset_top = 140
offset_right = 92
offset_bottom = 212
script = ExtResource("4")
icon = 5
glow_color = Color(0.45, 0.9, 0.55, 1)
[node name="NewCaption" type="Label" parent="UI"]
mouse_filter = 2
offset_left = 20
offset_top = 216
offset_right = 92
offset_bottom = 242
theme_override_font_sizes/font_size = 18
horizontal_alignment = 1
text = "New"
[node name="SaveButton" type="Control" parent="UI"]
offset_left = 110
offset_top = 140
offset_right = 182
offset_bottom = 212
script = ExtResource("4")
icon = 4
glow_color = Color(0.45, 0.9, 0.55, 1)
[node name="SaveCaption" type="Label" parent="UI"]
mouse_filter = 2
offset_left = 110
offset_top = 216
offset_right = 182
offset_bottom = 242
theme_override_font_sizes/font_size = 18
horizontal_alignment = 1
text = "Save"
[node name="LoadButton" type="Control" parent="UI"]
offset_left = 200
offset_top = 140
offset_right = 272
offset_bottom = 212
script = ExtResource("4")
icon = 3
glow_color = Color(0.5, 0.75, 1, 1)
[node name="LoadCaption" type="Label" parent="UI"]
mouse_filter = 2
offset_left = 200
offset_top = 216
offset_right = 272
offset_bottom = 242
theme_override_font_sizes/font_size = 18
horizontal_alignment = 1
text = "Load"
[node name="DeleteButton" type="Control" parent="UI"]
offset_left = 290
offset_top = 140
offset_right = 362
offset_bottom = 212
script = ExtResource("4")
icon = 28
glow_color = Color(0.9, 0.35, 0.35, 1)
[node name="DeleteCaption" type="Label" parent="UI"]
mouse_filter = 2
offset_left = 290
offset_top = 216
offset_right = 362
offset_bottom = 242
theme_override_font_sizes/font_size = 18
horizontal_alignment = 1
text = "Delete"
[node name="StatusLabel" type="Label" parent="UI"]
mouse_filter = 2
offset_left = 380
offset_top = 140
offset_right = 696
offset_bottom = 242
theme_override_font_sizes/font_size = 20
autowrap_mode = 2
text = ""
[node name="RewardButton" type="Control" parent="UI"]
offset_left = 350
offset_top = 20
offset_right = 422
offset_bottom = 92
script = ExtResource("4")
icon = 29
glow_color = Color(0.55, 0.9, 0.65, 1)
[node name="RewardValueLabel" type="Label" parent="UI"]
mouse_filter = 2
offset_left = 430
offset_top = 36
offset_right = 690
offset_bottom = 76
theme_override_font_sizes/font_size = 26
theme_override_colors/font_color = Color(0.55, 0.9, 0.65, 1)
text = "DEFAULT RP"
[node name="SelectedLabel" type="Label" parent="UI"]
mouse_filter = 2
offset_left = 20
offset_top = 250
offset_right = 696
offset_bottom = 286
theme_override_font_sizes/font_size = 22
theme_override_colors/font_color = Color(1, 0.95, 0.9, 1)
autowrap_mode = 2
text = ""
[node name="PaletteRow" type="Control" parent="UI"]
anchor_top = 1.0
anchor_bottom = 1.0
offset_left = 20
offset_top = -110
offset_right = 696
offset_bottom = -20
[node name="LoadPanel" type="Control" parent="UI"]
visible = false
anchor_right = 1.0
anchor_bottom = 1.0
[node name="Backdrop" type="ColorRect" parent="UI/LoadPanel"]
anchor_right = 1.0
anchor_bottom = 1.0
color = Color(0.03, 0.03, 0.08, 0.94)
[node name="TitleLabel" type="Label" parent="UI/LoadPanel"]
mouse_filter = 2
anchor_right = 1.0
offset_left = 24
offset_top = 36
offset_right = -24
offset_bottom = 90
theme_override_font_sizes/font_size = 34
horizontal_alignment = 1
text = "Load a setup"
[node name="List" type="ItemList" parent="UI/LoadPanel"]
offset_left = 24
offset_top = 110
offset_right = 696
offset_bottom = 1080
theme_override_font_sizes/font_size = 34
theme_override_constants/v_separation = 30
allow_reselect = true
[node name="DeleteMapButton" type="Control" parent="UI/LoadPanel"]
offset_left = 24
offset_top = 1096
offset_right = 96
offset_bottom = 1168
script = ExtResource("4")
icon = 28
glow_color = Color(0.9, 0.35, 0.35, 1)
[node name="DeleteMapCaption" type="Label" parent="UI/LoadPanel"]
mouse_filter = 2
offset_left = 112
offset_top = 1108
offset_right = 690
offset_bottom = 1160
theme_override_font_sizes/font_size = 24
vertical_alignment = 1
text = "Delete a setup"
[node name="CloseButton" type="Control" parent="UI/LoadPanel"]
anchor_left = 1.0
anchor_right = 1.0
offset_left = -92
offset_top = 20
offset_right = -20
offset_bottom = 92
script = ExtResource("4")
icon = 1
glow_color = Color(0.9, 0.35, 0.35, 1)