feat: Implement touch controls and a settings menu.

This commit is contained in:
Yogi Wiguna
2026-03-24 11:11:14 +08:00
parent 878e331b6e
commit 82fdbf91d1
10 changed files with 121 additions and 145 deletions
+39 -45
View File
@@ -19,8 +19,7 @@
[ext_resource type="Texture2D" uid="uid://pwxo4lb87yi" path="res://assets/graphics/touch_control/put_tile.png" id="26_5q0nq"]
[ext_resource type="Texture2D" uid="uid://umw3e8nfe3vr" path="res://assets/graphics/touch_control/attack_mode.png" id="27_dgi5k"]
[ext_resource type="Texture2D" uid="uid://cupfmb5m15kmf" path="res://assets/graphics/touch_control/wall.png" id="27_yq6so"]
[ext_resource type="Texture2D" uid="uid://3up2su2e0lfa" path="res://assets/graphics/touch_control/freeze_area.png" id="28_fv21b"]
[ext_resource type="Texture2D" uid="uid://ckhdyxnho6sjp" path="res://assets/graphics/touch_control/spawn_tile.png" id="28_j8jky"]
[ext_resource type="Texture2D" uid="uid://dcwdbeqla0ooi" path="res://assets/graphics/touch_control/freeze_area.png" id="28_fv21b"]
[ext_resource type="Texture2D" uid="uid://b2vhatfmufn3d" path="res://assets/graphics/touch_control/ghost.png" id="33_5q0nq"]
[ext_resource type="Texture2D" uid="uid://biun2yvglxgij" path="res://assets/graphics/touch_control/grab_tekton.png" id="36_pibwh"]
[ext_resource type="Script" uid="uid://86ikh0wuqk7v" path="res://scripts/ui/powerup_inventory_ui.gd" id="powerup_ui_script"]
@@ -1397,6 +1396,17 @@ theme_override_font_sizes/font_size = 28
text = "3:00"
horizontal_alignment = 1
[node name="SettingsBtn" type="Button" parent="." unique_id=1964422444]
anchors_preset = 1
anchor_left = 1.0
anchor_right = 1.0
offset_left = -78.0
offset_top = 8.0
offset_right = -30.0
offset_bottom = 56.0
grow_horizontal = 0
text = "⚙"
[node name="TouchControls" type="CanvasLayer" parent="." unique_id=1390485948]
script = ExtResource("touch_manager")
@@ -1423,27 +1433,15 @@ offset_bottom = -120.0
grow_vertical = 0
script = ExtResource("virtual_joystick")
[node name="ActionsBtn" type="VBoxContainer" parent="TouchControls/TouchControls" unique_id=278736451]
[node name="PowerBarBtn" type="VBoxContainer" parent="TouchControls/TouchControls" unique_id=278736451]
layout_mode = 0
offset_left = 48.000004
offset_top = 82.00001
offset_right = 114.71878
offset_bottom = 350.68915
offset_left = 47.858246
offset_top = 98.014656
offset_right = 129.85825
offset_bottom = 265.01465
rotation = -0.10297442
theme_override_constants/separation = 15
[node name="PutBtn" type="Button" parent="TouchControls/TouchControls/ActionsBtn" unique_id=1027790362]
visible = false
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
focus_mode = 0
icon = ExtResource("26_5q0nq")
flat = true
icon_alignment = 1
expand_icon = true
[node name="AttackModeBtn" type="Button" parent="TouchControls/TouchControls/ActionsBtn" unique_id=1380511463]
[node name="AttackModeBtn" type="Button" parent="TouchControls/TouchControls/PowerBarBtn" unique_id=1380511463]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
@@ -1453,16 +1451,7 @@ flat = true
icon_alignment = 1
expand_icon = true
[node name="SpawnBoostBtn" type="Button" parent="TouchControls/TouchControls/ActionsBtn" unique_id=1566173505]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
icon = ExtResource("28_j8jky")
flat = true
icon_alignment = 1
expand_icon = true
[node name="TektonGrabBtn" type="Button" parent="TouchControls/TouchControls/ActionsBtn" unique_id=2097928368]
[node name="TektonGrabBtn" type="Button" parent="TouchControls/TouchControls/PowerBarBtn" unique_id=2097928368]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
@@ -1471,8 +1460,15 @@ flat = true
icon_alignment = 1
expand_icon = true
[node name="GrabBtn" type="Button" parent="TouchControls/TouchControls/ActionsBtn" unique_id=914810452]
visible = false
[node name="InteractionBtn" type="VBoxContainer" parent="TouchControls/TouchControls" unique_id=1738242916]
layout_mode = 0
offset_left = 134.0
offset_top = 86.999985
offset_right = 216.0
offset_bottom = 254.0
rotation = -0.10297442
[node name="GrabBtn" type="Button" parent="TouchControls/TouchControls/InteractionBtn" unique_id=914810452]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
@@ -1482,17 +1478,15 @@ flat = true
icon_alignment = 1
expand_icon = true
[node name="SettingsBtn" type="Button" parent="TouchControls/TouchControls" unique_id=1964422444]
layout_mode = 1
anchors_preset = 1
anchor_left = 1.0
anchor_right = 1.0
offset_left = -78.0
offset_top = -302.0
offset_right = -30.0
offset_bottom = -254.0
grow_horizontal = 0
text = "⚙"
[node name="PutBtn" type="Button" parent="TouchControls/TouchControls/InteractionBtn" unique_id=1027790362]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
focus_mode = 0
icon = ExtResource("26_5q0nq")
flat = true
icon_alignment = 1
expand_icon = true
[node name="PauseMenu" type="CanvasLayer" parent="." unique_id=181131829]
process_mode = 3
@@ -1701,7 +1695,7 @@ text = "[b]Basic Controls[/b]
• [b]Interact:[/b] Click or tap on game elements.
• [b]GRAB TILE:[/b] Spacebar (in some modes) or Click to pick up a tile.
• [b]GRAB TEKTON (G):[/b] Grab a nearby Tekton to carry it.
• [b]SPAWN TILES (E):[/b] While carrying a Tekton, spawn 5 common tiles around you.
• [b]SPAWN TILES (G):[/b] While carrying a Tekton, spawn 5 common tiles around you.
• [b]ARRANGE:[/b] Insert a carried tile into your 3x3 Player Board."
[node name="The Grid" type="MarginContainer" parent="HowToPlayPanel/Panel/VBox/TabContainer" unique_id=123456807]
@@ -1739,7 +1733,7 @@ text = "[b]Tektons[/b]
• [b]Dynamic Tektons:[/b] Roaming metallic entities. Grab them to gain special benefits!
• [b]Grab & Hold (G):[/b] While holding a Tekton, you are [color=green][b]IMMUNE[/b][/color] to being knocked or staggered by others.
• [b]Tile Generation (E):[/b] Use your boost to force a carried Tekton to spawn 5 [b]Common Tiles[/b] instantly. The Tekton is released after spawning.
• [b]Tile Generation (G):[/b] Use your boost to force a carried Tekton to spawn 5 [b]Common Tiles[/b] instantly. The Tekton is released after spawning.
• [b]Static Tektons:[/b] Stationary sentry turrets that occupy a 3x3 space. They periodically throw tiles and obstacles around themselves. Stay alert!"
[node name="Skills" type="MarginContainer" parent="HowToPlayPanel/Panel/VBox/TabContainer" unique_id=123456811]