Build system now usable for creative mode.

main
Martin Felis 2024-10-11 13:09:44 +02:00
parent 12a94d73a8
commit 2e6b15e497
11 changed files with 291 additions and 163 deletions

View File

@ -1,18 +1,16 @@
[gd_scene load_steps=3 format=3 uid="uid://cofd468cwkntk"]
[ext_resource type="PackedScene" uid="uid://b8xsr7w5i5mx" path="res://assets/3rdparty/kenney/survival-kit/Models/campfire-pit.glb" id="1_b3jfu"]
[ext_resource type="PackedScene" uid="uid://ei8n2wngiry4" path="res://assets/3rdparty/kenney/survival-kit/Models/campfire.glb" id="1_6jb5g"]
[sub_resource type="CylinderShape3D" id="CylinderShape3D_y4r2i"]
height = 0.2402
radius = 0.225971
[sub_resource type="CylinderShape3D" id="CylinderShape3D_ui8hn"]
height = 0.293308
radius = 0.173108
[node name="campfire-pit2" type="Node3D"]
[node name="Node3D" type="StaticBody3D"]
collision_layer = 33
[node name="campfire-pit2" parent="." instance=ExtResource("1_b3jfu")]
transform = Transform3D(2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0)
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.143022, 0)
shape = SubResource("CylinderShape3D_ui8hn")
[node name="StaticBody3D" type="StaticBody3D" parent="."]
[node name="CollisionShape3D" type="CollisionShape3D" parent="StaticBody3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.113824, 0)
shape = SubResource("CylinderShape3D_y4r2i")
[node name="Geometry" parent="." instance=ExtResource("1_6jb5g")]

View File

@ -1,17 +1,16 @@
[gd_scene load_steps=3 format=3 uid="uid://dv60qx8nqw3vg"]
[ext_resource type="PackedScene" uid="uid://cg5cy35mk8nba" path="res://assets/3rdparty/kenney/survival-kit/Models/fence-fortified.glb" id="1_mg881"]
[ext_resource type="PackedScene" uid="uid://cg5cy35mk8nba" path="res://assets/3rdparty/kenney/survival-kit/Models/fence-fortified.glb" id="1_dy1c1"]
[sub_resource type="BoxShape3D" id="BoxShape3D_hk10f"]
size = Vector3(0.487061, 0.506958, 0.0766602)
[sub_resource type="BoxShape3D" id="BoxShape3D_kha47"]
size = Vector3(0.52, 0.52, 0.1)
[node name="fence_fortified" type="Node3D"]
[node name="Fence" type="StaticBody3D"]
collision_layer = 33
[node name="fence-fortified2" parent="." instance=ExtResource("1_mg881")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0.227905)
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.25949, 0)
shape = SubResource("BoxShape3D_kha47")
[node name="StaticBody3D" type="StaticBody3D" parent="."]
[node name="CollisionShape3D" type="CollisionShape3D" parent="StaticBody3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.00012207, 0.265316, -0.00170898)
shape = SubResource("BoxShape3D_hk10f")
[node name="Geometry" parent="." instance=ExtResource("1_dy1c1")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0.226733)

View File

@ -2,13 +2,14 @@
[ext_resource type="PackedScene" uid="uid://putll6r03s1i" path="res://assets/3rdparty/kenney/survival-kit/Models/floor.glb" id="1_1rqyd"]
[sub_resource type="BoxShape3D" id="BoxShape3D_e5qs0"]
size = Vector3(0.51, 0.05, 0.51)
[sub_resource type="BoxShape3D" id="BoxShape3D_huqhw"]
size = Vector3(0.52, 0.034, 0.52)
[node name="floor2" instance=ExtResource("1_1rqyd")]
[node name="Floor" type="StaticBody3D"]
collision_layer = 33
[node name="StaticBody3D" type="StaticBody3D" parent="." index="1"]
[node name="Geometry" parent="." instance=ExtResource("1_1rqyd")]
[node name="CollisionShape3D" type="CollisionShape3D" parent="StaticBody3D" index="0"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.025, 0.002)
shape = SubResource("BoxShape3D_e5qs0")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.0330566, 0)
shape = SubResource("BoxShape3D_huqhw")

View File

@ -1,17 +1,15 @@
[gd_scene load_steps=3 format=3 uid="uid://da8vh0auq4p3l"]
[ext_resource type="PackedScene" uid="uid://b80niojlha8e" path="res://assets/3rdparty/kenney/survival-kit/Models/workbench.glb" id="1_78bfl"]
[ext_resource type="PackedScene" uid="uid://b80niojlha8e" path="res://assets/3rdparty/kenney/survival-kit/Models/workbench.glb" id="1_nfc4u"]
[sub_resource type="BoxShape3D" id="BoxShape3D_dqnub"]
size = Vector3(0.4, 0.35, 0.35)
[sub_resource type="BoxShape3D" id="BoxShape3D_lq0et"]
size = Vector3(0.3, 0.25, 0.3)
[node name="workbench" instance=ExtResource("1_78bfl")]
[node name="Workbench" type="StaticBody3D"]
collision_layer = 33
[node name="workbench2" parent="." index="0"]
transform = Transform3D(1.2, 0, 0, 0, 1.2, 0, 0, 0, 1.2, 0, 0, 0)
[node name="workbench" parent="." instance=ExtResource("1_nfc4u")]
[node name="StaticBody3D" type="StaticBody3D" parent="." index="1"]
[node name="CollisionShape3D" type="CollisionShape3D" parent="StaticBody3D" index="0"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.172299, 0)
shape = SubResource("BoxShape3D_dqnub")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.128124, 0)
shape = SubResource("BoxShape3D_lq0et")

View File

@ -6,6 +6,7 @@ extends Control
@onready var game_menu_ui = %GameMenuUI
@onready var inventory_dialog = %InventoryDialog
@onready var build_dialog = %BuildDialog
@onready var debug_panel: Panel = %DebugPanel
var picked_up_level_items:Array[NodePath] = []
@ -26,6 +27,8 @@ func activate_game_scene(game_scene:Node3D) -> void:
_game_scene = game_scene as Game
if _game_scene != null:
debug_panel.build_system = game_scene.build_system
picked_up_level_items = []
if _player != null:

View File

@ -173,3 +173,4 @@ locale/translations_pot_files=PackedStringArray("res://dialogue/bridge_builder_m
3d_physics/layer_1="World"
3d_physics/layer_5="Actionables"
3d_physics/layer_6="Structures"

View File

@ -84,7 +84,7 @@ func load_game():
push_error("Cannot load game: no player found!")
return
print("main.gd:load_game() Player = " + str(player))
print("main.gd:load_gameq() Player = " + str(player))
player.global_transform = save_game.player_transform
# Quest state

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=34 format=3 uid="uid://c73t0nbuqp68e"]
[gd_scene load_steps=37 format=3 uid="uid://c73t0nbuqp68e"]
[ext_resource type="Script" path="res://root_ui.gd" id="1_7fnkg"]
[ext_resource type="PackedScene" uid="uid://bo788o53t4rbq" path="res://scenes/startup_scene.tscn" id="2_1untt"]
@ -17,6 +17,7 @@
[ext_resource type="Texture2D" uid="uid://beaqo323661rh" path="res://assets/3rdparty/kenney/ui-pack-rpg-expansion/PNG/panel_blue.png" id="11_jrvnp"]
[ext_resource type="Texture2D" uid="uid://bi6q381bmdonq" path="res://assets/3rdparty/kenney/ui-pack-rpg-expansion/PNG/buttonSquare_grey.png" id="12_033wf"]
[ext_resource type="Script" path="res://ui/build_dialog.gd" id="15_x7ovi"]
[ext_resource type="Script" path="res://ui/debug_panel.gd" id="18_h04qg"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_1ume3"]
content_margin_left = 4.0
@ -196,6 +197,13 @@ PanelContainer/styles/panel = SubResource("StyleBoxEmpty_xw22e")
RedButton/styles/panel = SubResource("StyleBoxFlat_tyjme")
Tree/styles/panel = SubResource("StyleBoxTexture_22g74")
[sub_resource type="SystemFont" id="SystemFont_bfvxh"]
[sub_resource type="Theme" id="Theme_pxwo4"]
default_base_scale = 0.3
default_font = SubResource("SystemFont_bfvxh")
default_font_size = 15
[node name="RootUI" type="CanvasLayer"]
unique_name_in_owner = true
script = ExtResource("1_7fnkg")
@ -761,6 +769,63 @@ slot_scene = ExtResource("7_pv315")
allow_selection = true
rows = 1
[node name="DebugPanel" type="Panel" parent="GameUI"]
unique_name_in_owner = true
visible = false
layout_mode = 1
anchors_preset = 10
anchor_right = 1.0
offset_top = 16.0
offset_bottom = 116.0
grow_horizontal = 2
theme = SubResource("Theme_pxwo4")
script = ExtResource("18_h04qg")
[node name="MarginContainer" type="MarginContainer" parent="GameUI/DebugPanel"]
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 = 16
theme_override_constants/margin_top = 16
theme_override_constants/margin_right = 16
theme_override_constants/margin_bottom = 16
metadata/_edit_use_anchors_ = true
[node name="VBoxContainer" type="VBoxContainer" parent="GameUI/DebugPanel/MarginContainer"]
layout_mode = 2
[node name="Label" type="Label" parent="GameUI/DebugPanel/MarginContainer/VBoxContainer"]
layout_mode = 2
text = "BuildSystem"
[node name="GridContainer" type="GridContainer" parent="GameUI/DebugPanel/MarginContainer/VBoxContainer"]
layout_mode = 2
size_flags_vertical = 3
theme_override_constants/h_separation = 35
columns = 2
[node name="Label" type="Label" parent="GameUI/DebugPanel/MarginContainer/VBoxContainer/GridContainer"]
layout_mode = 2
text = "Active"
[node name="BuildSystemActiveLabel" type="Label" parent="GameUI/DebugPanel/MarginContainer/VBoxContainer/GridContainer"]
unique_name_in_owner = true
layout_mode = 2
text = "0
"
[node name="Label3" type="Label" parent="GameUI/DebugPanel/MarginContainer/VBoxContainer/GridContainer"]
layout_mode = 2
text = "Hover"
[node name="BuildSystemHoverObject" type="Label" parent="GameUI/DebugPanel/MarginContainer/VBoxContainer/GridContainer"]
unique_name_in_owner = true
layout_mode = 2
text = "Active"
[node name="Scene" type="Node3D" parent="."]
unique_name_in_owner = true
@ -774,27 +839,59 @@ unique_name_in_owner = true
[connection signal="item_selected" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/Recipes/RecipeList" to="GameUI/InventoryDialog" method="_on_recipe_list_item_selected"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/ItemSlot" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/ItemSlot" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/ItemSlot" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/ItemSlot" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18039" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18039" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18039" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18039" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18040" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18040" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18040" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18040" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18041" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18041" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18041" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18041" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18042" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18042" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18042" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18042" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18043" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18043" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18043" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18043" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18044" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18044" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18044" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18044" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18045" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18045" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18045" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18045" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18046" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18046" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18046" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18046" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18023" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18023" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18023" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18023" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18024" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18024" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18024" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18024" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18025" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18025" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18025" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18025" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18026" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18026" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18026" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18026" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18027" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18027" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18027" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18027" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18028" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18028" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18028" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18028" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18029" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18029" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18029" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18029" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18030" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18030" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18030" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftIngredients/Panel/CenterContainer/IngredientsContainer/@Panel@18030" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftResult/Panel/CenterContainer/ResultsContainer/ItemSlot" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftResult/Panel/CenterContainer/ResultsContainer/ItemSlot" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftResult/Panel/CenterContainer/ResultsContainer/ItemSlot" to="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftResult/Panel/CenterContainer/ResultsContainer/ItemSlot" method="_on_mouse_entered"]
[connection signal="pressed" from="GameUI/InventoryDialog/Panel/PanelContainer/CraftingUI/HBoxContainer/CraftResult/HBoxContainer/CraftButton" to="GameUI/InventoryDialog" method="_on_craft_button_pressed"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/ItemSlot" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/ItemSlot" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/ItemSlot" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/ItemSlot" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18031" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18031" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18031" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18031" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18032" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18032" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18032" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18032" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18033" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18033" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18033" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18033" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18034" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18034" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18034" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18034" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18035" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18035" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18035" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18035" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18036" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18036" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18036" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18036" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18037" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18037" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18037" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18037" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18038" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18038" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18038" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18038" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18039" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18039" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18039" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18039" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18040" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18040" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18040" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18040" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18041" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18041" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18041" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18041" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18042" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18042" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18042" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18042" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18043" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18043" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18043" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18043" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18044" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18044" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18044" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18044" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18045" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18045" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18045" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18045" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18046" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18046" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18046" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18046" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18047" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18047" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18047" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18047" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18048" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18048" method="_on_gui_input"]
@ -833,38 +930,6 @@ unique_name_in_owner = true
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18064" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18064" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18065" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18065" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18065" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18065" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18066" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18066" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18066" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18066" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18067" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18067" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18067" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18067" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18068" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18068" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18068" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18068" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18069" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18069" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18069" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18069" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18070" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18070" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18070" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18070" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18071" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18071" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18071" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18071" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18072" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18072" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18072" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18072" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18073" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18073" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18073" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18073" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18074" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18074" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18074" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18074" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18075" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18075" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18075" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18075" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18076" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18076" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18076" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18076" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18077" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18077" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18077" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18077" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18078" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18078" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18078" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18078" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18079" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18079" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18079" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18079" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18080" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18080" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18080" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18080" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18081" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18081" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18081" to="GameUI/InventoryDialog/Panel/PanelContainer/BackpackUI/VBoxContainer/InventoryContainer/@Panel@18081" method="_on_mouse_entered"]
[connection signal="visibility_changed" from="GameUI/GameMenuUI" to="GameUI" method="_on_game_menu_ui_visibility_changed"]
[connection signal="pressed" from="GameUI/GameMenuUI/MarginContainer/VBoxContainer/MarginContainer4/SaveGameButton" to="." method="save_game"]
[connection signal="pressed" from="GameUI/GameMenuUI/MarginContainer/VBoxContainer/MarginContainer6/LoadGameButton" to="." method="load_game"]
@ -874,67 +939,67 @@ unique_name_in_owner = true
[connection signal="item_selected" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer" to="GameUI/BuildDialog" method="_on_build_items_container_item_selected"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/ItemSlot" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/ItemSlot" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/ItemSlot" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/ItemSlot" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18082" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18082" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18082" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18082" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18083" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18083" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18083" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18083" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18084" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18084" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18084" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18084" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18085" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18085" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18085" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18085" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18086" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18086" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18086" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18086" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18087" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18087" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18087" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18087" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18088" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18088" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18088" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18088" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18089" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18089" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18089" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18089" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18090" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18090" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18090" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18090" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18091" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18091" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18091" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18091" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18092" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18092" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18092" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18092" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18093" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18093" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18093" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18093" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18094" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18094" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18094" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18094" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18095" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18095" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18095" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18095" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18096" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18096" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18096" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18096" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18066" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18066" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18066" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18066" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18067" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18067" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18067" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18067" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18068" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18068" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18068" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18068" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18069" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18069" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18069" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18069" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18070" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18070" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18070" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18070" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18071" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18071" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18071" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18071" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18072" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18072" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18072" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18072" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18073" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18073" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18073" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18073" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18074" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18074" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18074" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18074" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18075" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18075" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18075" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18075" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18076" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18076" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18076" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18076" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18077" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18077" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18077" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18077" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18078" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18078" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18078" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18078" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18079" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18079" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18079" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18079" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18080" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18080" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18080" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemsContainer/@Panel@18080" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/ItemSlot" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/ItemSlot" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/ItemSlot" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/ItemSlot" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18097" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18097" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18097" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18097" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18098" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18098" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18098" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18098" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18099" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18099" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18099" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18099" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18100" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18100" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18100" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18100" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18101" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18101" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18101" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18101" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18102" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18102" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18102" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18102" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18103" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18103" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18103" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18103" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18081" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18081" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18081" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18081" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18082" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18082" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18082" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18082" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18083" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18083" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18083" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18083" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18084" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18084" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18084" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18084" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18085" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18085" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18085" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18085" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18086" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18086" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18086" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18086" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18087" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18087" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18087" to="GameUI/BuildDialog/Panel/MarginContainer/VBoxContainer/BuildItemResourcesContainer/@Panel@18087" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/ToolSlots/PanelContainer/ToolContainer/ItemSlot" to="GameUI/ToolSlots/PanelContainer/ToolContainer/ItemSlot" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/ToolSlots/PanelContainer/ToolContainer/ItemSlot" to="GameUI/ToolSlots/PanelContainer/ToolContainer/ItemSlot" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18104" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18104" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18104" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18104" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18105" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18105" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18105" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18105" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18106" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18106" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18106" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18106" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18107" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18107" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18107" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18107" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18108" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18108" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18108" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18108" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18109" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18109" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18109" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18109" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18110" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18110" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18110" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18110" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18111" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18111" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18111" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18111" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18088" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18088" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18088" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18088" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18089" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18089" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18089" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18089" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18090" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18090" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18090" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18090" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18091" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18091" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18091" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18091" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18092" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18092" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18092" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18092" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18093" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18093" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18093" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18093" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18094" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18094" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18094" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18094" method="_on_mouse_entered"]
[connection signal="gui_input" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18095" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18095" method="_on_gui_input"]
[connection signal="mouse_entered" from="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18095" to="GameUI/ToolSlots/PanelContainer/ToolContainer/@Panel@18095" method="_on_mouse_entered"]

View File

@ -2,6 +2,8 @@ class_name BuildSystem
extends Node
const CAMERA_SPEED = 4.0
const COLLISION_MASK_WORLD = 1
const COLLISION_MASK_STRUCTURES = 32
@onready var build_preview = %BuildPreview
@onready var player = %Player
@ -13,20 +15,25 @@ const CAMERA_SPEED = 4.0
var camera_velocity:Vector3 = Vector3.ZERO
var is_active:bool = false
# Called when the node enters the scene tree for the first time.
func _ready():
pass # Replace with function body.
var hovered_existing_structure:StaticBody3D = null
func update_build_preview_item() -> void:
hovered_existing_structure = null
for child in build_preview.get_children():
if build_item == null or child.scene_file_path != build_item.scene.resource_path:
child.get_parent().remove_child(child)
child.queue_free()
if build_preview.get_child_count() == 0 and build_item != null:
build_preview.add_child(build_item.scene.instantiate())
var build_preview_scene = build_item.scene.instantiate() as StaticBody3D
if build_preview_scene == null:
push_error("Cannot create build preview: item scene not derived from StaticBody3D for item: ", build_item)
return
# ensure we do not detect the preview object when querying for destroyable structures
build_preview_scene.collision_layer = 0
build_preview.add_child(build_preview_scene)
func move_build_camera(delta):
@ -51,14 +58,31 @@ func update_build_preview():
var world_space_state = camera.get_world_3d().direct_space_state
var ray_query:PhysicsRayQueryParameters3D = PhysicsRayQueryParameters3D.create(mouse_ray_origin, mouse_ray_origin + mouse_ray_normal * 100)
ray_query.collision_mask = COLLISION_MASK_WORLD | COLLISION_MASK_STRUCTURES
var ray_result:Dictionary = world_space_state.intersect_ray(ray_query)
if not ray_result.is_empty() and Vector3.UP.dot(ray_result["normal"]) > 0.9:
if not ray_result.is_empty():
var grid_map_object = ray_result.collider as GridMap
var collision_body_3d = ray_result.collider as CollisionObject3D
if not collision_body_3d and not grid_map_object:
print ("Invalid collision object found. Object has no collision object: ", ray_result.collider)
return
if collision_body_3d:
if collision_body_3d.collision_layer & COLLISION_MASK_STRUCTURES != 0:
hovered_existing_structure = collision_body_3d as StaticBody3D
if hovered_existing_structure == null:
print ("Invalid structure found. Object is not derived from StaticBody3D: ", ray_result.collider)
return
else:
hovered_existing_structure = null
if grid_map_object != null and Vector3.UP.dot(ray_result["normal"]) > 0.9:
var build_location:Vector3 = ray_result["position"]
build_location = Vector3(roundf(build_location.x * 4), build_location.y, roundf(build_location.z * 4)) * 0.25
build_preview.global_position = build_location
func _physics_process(_delta):
if not is_active:
return
@ -79,12 +103,23 @@ func _unhandled_input(event: InputEvent) -> void:
if event.is_action_pressed("rotate_clockwise"):
build_preview.global_basis = build_preview.basis.rotated(Vector3.UP, deg_to_rad(45))
get_viewport().set_input_as_handled()
return
if event.is_action_pressed("rotate_counter_clockwise"):
build_preview.global_basis = build_preview.basis.rotated(Vector3.UP, -deg_to_rad(45))
get_viewport().set_input_as_handled()
return
if build_item != null and event.is_action_pressed("interaction"):
var new_structure:Node3D = build_item.scene.instantiate()
new_structure.transform = build_preview.transform
built_structures.add_child(new_structure)
get_viewport().set_input_as_handled()
return
var mouse_button_event = event as InputEventMouseButton
if hovered_existing_structure and mouse_button_event and mouse_button_event.pressed and mouse_button_event.button_index == MOUSE_BUTTON_MIDDLE:
hovered_existing_structure.get_parent().remove_child(hovered_existing_structure)
hovered_existing_structure.queue_free()
get_viewport().set_input_as_handled()
return

28
ui/debug_panel.gd Normal file
View File

@ -0,0 +1,28 @@
extends Panel
var build_system:BuildSystem = null
@onready var build_system_active_label: Label = %BuildSystemActiveLabel
@onready var build_system_hover_object: Label = %BuildSystemHoverObject
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
pass # Replace with function body.
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
if build_system == null:
build_system_active_label.text = "Not found"
build_system_hover_object.text = ""
return
if build_system.is_active:
build_system_active_label.text = "true"
else:
build_system_active_label.text = "false"
if build_system.hovered_existing_structure and not build_system.hovered_existing_structure.is_queued_for_deletion():
build_system_hover_object.text = build_system.hovered_existing_structure.get_path()
else:
build_system_hover_object.text = ""

View File

@ -90,7 +90,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.309352, -5.00679e-06, -1.0
item = ExtResource("9_xhfx0")
[node name="Item10" parent="Objects" instance=ExtResource("2_ccr0r")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.24405, -4.76837e-06, -10.5962)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.581866, -4.76837e-06, 1.16087)
item = ExtResource("10_wch4q")
[node name="Vegetation" type="Node3D" parent="."]