This commit is contained in:
Tabby 2025-09-03 12:14:08 +10:00
parent 077a53d911
commit 6ce339b430
9 changed files with 252 additions and 21 deletions

108
test.tscn
View file

@ -1,4 +1,4 @@
[gd_scene load_steps=19 format=3 uid="uid://daqqurdrnk61h"]
[gd_scene load_steps=20 format=3 uid="uid://daqqurdrnk61h"]
[ext_resource type="Script" uid="uid://bue4xxejdsmqh" path="res://snakeManager.gd" id="1_6uqi0"]
[ext_resource type="PackedScene" uid="uid://bwoeu7ask0fck" path="res://prefabs/snake_segment.tscn" id="1_8uh7m"]
@ -35,7 +35,12 @@ outline_color = Color(0.87451, 0, 0, 1)
radius = 50.0
[sub_resource type="LabelSettings" id="LabelSettings_5tkv4"]
font_size = 8
[sub_resource type="LabelSettings" id="LabelSettings_0m0f1"]
font_size = 31
font_color = Color(0.84956, 3.29696e-06, 1.54018e-06, 1)
outline_size = 3
outline_color = Color(0, 0, 0, 1)
[node name="Node2D" type="Node2D" node_paths=PackedStringArray("test_area")]
script = ExtResource("1_ehkex")
@ -165,7 +170,8 @@ shape = SubResource("CircleShape2D_ehkex")
[node name="CanvasLayer" type="CanvasLayer" parent="."]
[node name="Control" type="Control" parent="CanvasLayer" node_paths=PackedStringArray("food_bar", "snake_manager", "score_label")]
[node name="Control" type="Control" parent="CanvasLayer" node_paths=PackedStringArray("food_bar", "snake_manager", "score_label", "speed_label", "gameover_score_label", "gameover_screen")]
process_mode = 3
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
@ -175,7 +181,10 @@ grow_vertical = 2
script = ExtResource("9_xersf")
food_bar = NodePath("PanelContainer/HBoxContainer/ProgressBar")
snake_manager = NodePath("../../Snake")
score_label = NodePath("PanelContainer2/VBoxContainer/score_label")
score_label = NodePath("Score Panel/VBoxContainer/score_label")
speed_label = NodePath("Speed Panel/VBoxContainer/speed_label")
gameover_score_label = NodePath("game over screen/PanelContainer/VBoxContainer/gameoverscorelabel")
gameover_screen = NodePath("game over screen")
[node name="PanelContainer" type="PanelContainer" parent="CanvasLayer/Control"]
layout_mode = 1
@ -198,35 +207,102 @@ layout_mode = 2
size_flags_horizontal = 3
step = 0.0
[node name="PanelContainer2" type="PanelContainer" parent="CanvasLayer/Control"]
[node name="Score Panel" type="PanelContainer" parent="CanvasLayer/Control"]
layout_mode = 0
offset_right = 40.0
offset_bottom = 40.0
offset_right = 50.0
offset_bottom = 50.0
[node name="VBoxContainer" type="VBoxContainer" parent="CanvasLayer/Control/PanelContainer2"]
[node name="VBoxContainer" type="VBoxContainer" parent="CanvasLayer/Control/Score Panel"]
layout_mode = 2
[node name="Label" type="Label" parent="CanvasLayer/Control/PanelContainer2/VBoxContainer"]
[node name="Label" type="Label" parent="CanvasLayer/Control/Score Panel/VBoxContainer"]
layout_mode = 2
text = "Score"
horizontal_alignment = 1
[node name="score_label" type="Label" parent="CanvasLayer/Control/PanelContainer2/VBoxContainer"]
[node name="score_label" type="Label" parent="CanvasLayer/Control/Score Panel/VBoxContainer"]
layout_mode = 2
text = "0"
horizontal_alignment = 1
[node name="PanelContainer3" type="PanelContainer" parent="CanvasLayer/Control"]
[node name="Speed Panel" type="PanelContainer" parent="CanvasLayer/Control"]
layout_mode = 1
anchors_preset = 1
anchor_left = 1.0
anchor_right = 1.0
offset_left = -80.0
offset_bottom = 65.0
offset_left = -50.0
offset_bottom = 50.0
grow_horizontal = 0
[node name="Label" type="Label" parent="CanvasLayer/Control/PanelContainer3"]
[node name="VBoxContainer" type="VBoxContainer" parent="CanvasLayer/Control/Speed Panel"]
layout_mode = 2
text = "Press enter to switch between inside and outside view"
[node name="Label2" type="Label" parent="CanvasLayer/Control/Speed Panel/VBoxContainer"]
layout_mode = 2
text = "Speed"
horizontal_alignment = 1
[node name="speed_label" type="Label" parent="CanvasLayer/Control/Speed Panel/VBoxContainer"]
layout_mode = 2
text = "0.3"
label_settings = SubResource("LabelSettings_5tkv4")
horizontal_alignment = 1
autowrap_mode = 2
[node name="game over screen" type="MarginContainer" parent="CanvasLayer/Control"]
visible = false
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_constants/margin_left = 200
theme_override_constants/margin_top = 90
theme_override_constants/margin_right = 200
theme_override_constants/margin_bottom = 90
[node name="PanelContainer" type="PanelContainer" parent="CanvasLayer/Control/game over screen"]
layout_mode = 2
[node name="VBoxContainer" type="VBoxContainer" parent="CanvasLayer/Control/game over screen/PanelContainer"]
layout_mode = 2
[node name="Label" type="Label" parent="CanvasLayer/Control/game over screen/PanelContainer/VBoxContainer"]
layout_mode = 2
text = "Game Over"
label_settings = SubResource("LabelSettings_0m0f1")
horizontal_alignment = 1
[node name="HSeparator" type="HSeparator" parent="CanvasLayer/Control/game over screen/PanelContainer/VBoxContainer"]
layout_mode = 2
[node name="Label2" type="Label" parent="CanvasLayer/Control/game over screen/PanelContainer/VBoxContainer"]
layout_mode = 2
text = "Score:"
horizontal_alignment = 1
[node name="gameoverscorelabel" type="RichTextLabel" parent="CanvasLayer/Control/game over screen/PanelContainer/VBoxContainer"]
layout_mode = 2
size_flags_vertical = 3
theme_override_font_sizes/normal_font_size = 40
bbcode_enabled = true
text = "[wave]200"
fit_content = true
horizontal_alignment = 1
vertical_alignment = 1
[node name="HBoxContainer" type="HBoxContainer" parent="CanvasLayer/Control/game over screen/PanelContainer/VBoxContainer"]
layout_mode = 2
[node name="MenuButton" type="Button" parent="CanvasLayer/Control/game over screen/PanelContainer/VBoxContainer/HBoxContainer"]
layout_mode = 2
size_flags_horizontal = 3
text = "Menu"
[node name="AgainButton" type="Button" parent="CanvasLayer/Control/game over screen/PanelContainer/VBoxContainer/HBoxContainer"]
layout_mode = 2
size_flags_horizontal = 3
text = "Play Again!"
[connection signal="pressed" from="CanvasLayer/Control/game over screen/PanelContainer/VBoxContainer/HBoxContainer/MenuButton" to="CanvasLayer/Control" method="_on_menu_button_pressed"]
[connection signal="pressed" from="CanvasLayer/Control/game over screen/PanelContainer/VBoxContainer/HBoxContainer/AgainButton" to="CanvasLayer/Control" method="_on_again_button_pressed"]