Browse Source

Creating InventoryManagement and moving QuickSlots MOSTLY to signals

pull/1/head
Ryan Reed 3 months ago
parent
commit
297913d4f7
8 changed files with 23 additions and 11 deletions
  1. +7
    -0
      autoloads/inventory_manager.gd
  2. +1
    -0
      autoloads/inventory_manager.gd.uid
  3. +0
    -6
      autoloads/quick_slots.tscn
  4. +1
    -0
      project.godot
  5. +1
    -4
      root.tscn
  6. +10
    -0
      scenes/ui/quick_slots.gd
  7. +0
    -0
      scenes/ui/quick_slots.gd.uid
  8. +3
    -1
      scenes/ui/quick_slots.tscn

+ 7
- 0
autoloads/inventory_manager.gd View File

@ -0,0 +1,7 @@
extends Node
# QuickSlot related signals
signal next_quick_slot
signal previous_quick_slot
signal select_quick_slot(slot_index: int)
signal quick_slot_item_changed(item_id: String)

+ 1
- 0
autoloads/inventory_manager.gd.uid View File

@ -0,0 +1 @@
uid://d1yg7dtie83ry

+ 0
- 6
autoloads/quick_slots.tscn View File

@ -1,6 +0,0 @@
[gd_scene load_steps=2 format=3 uid="uid://ctxl46pkm0ac5"]
[ext_resource type="Script" uid="uid://bcq6vexsmyeol" path="res://autoloads/quick_slots.gd" id="1_5cv54"]
[node name="QuickSlots" type="Node"]
script = ExtResource("1_5cv54")

+ 1
- 0
project.godot View File

@ -19,6 +19,7 @@ config/icon="res://icon.svg"
Global="*res://autoloads/global.gd"
EntityManager="*res://autoloads/entity_manager.gd"
InventoryManager="*res://autoloads/inventory_manager.gd"
[debug]


+ 1
- 4
root.tscn View File

@ -1,7 +1,6 @@
[gd_scene load_steps=5 format=3 uid="uid://cgx0nawwjjj7g"]
[gd_scene load_steps=4 format=3 uid="uid://cgx0nawwjjj7g"]
[ext_resource type="PackedScene" uid="uid://c0epfh4sqjcjq" path="res://data_structure/db_items.tscn" id="1_pyidc"]
[ext_resource type="PackedScene" uid="uid://ctxl46pkm0ac5" path="res://autoloads/quick_slots.tscn" id="2_28aoi"]
[ext_resource type="PackedScene" uid="uid://mkfitwqnerku" path="res://scenes/world/world.tscn" id="2_vvh5c"]
[ext_resource type="PackedScene" uid="uid://c7fj7wla8bd70" path="res://scenes/ui/ui.tscn" id="3_vvh5c"]
@ -9,8 +8,6 @@
[node name="DBItems" parent="." instance=ExtResource("1_pyidc")]
[node name="QuickSlots" parent="." instance=ExtResource("2_28aoi")]
[node name="World" parent="." instance=ExtResource("2_vvh5c")]
[node name="UI" parent="." instance=ExtResource("3_vvh5c")]

autoloads/quick_slots.gd → scenes/ui/quick_slots.gd View File

@ -9,6 +9,10 @@ func _init() -> void:
ref = self
else:
queue_free()
InventoryManager.next_quick_slot.connect(select_next_item.bind())
InventoryManager.previous_quick_slot.connect(select_previous_item.bind())
InventoryManager.select_quick_slot.connect(select_item_index.bind())
#endregion
@ -37,8 +41,14 @@ func get_quickslot_index() -> int:
func get_selected_item() -> String:
return _items[_selected_item]
func select_item_index(slot_index: int) -> void:
_selected_item = slot_index
InventoryManager.quick_slot_item_changed.emit(get_selected_item())
func select_previous_item() -> void:
_selected_item = clampi(_selected_item - 1, 0, _items.size() - 1)
InventoryManager.quick_slot_item_changed.emit(get_selected_item())
func select_next_item() -> void:
_selected_item = clampi(_selected_item + 1, 0, _items.size() - 1)
InventoryManager.quick_slot_item_changed.emit(get_selected_item())

autoloads/quick_slots.gd.uid → scenes/ui/quick_slots.gd.uid View File


+ 3
- 1
scenes/ui/quick_slots.tscn View File

@ -1,5 +1,6 @@
[gd_scene load_steps=5 format=3 uid="uid://cbiygbgpfk220"]
[gd_scene load_steps=6 format=3 uid="uid://cbiygbgpfk220"]
[ext_resource type="Script" uid="uid://bcq6vexsmyeol" path="res://scenes/ui/quick_slots.gd" id="1_cqw2g"]
[ext_resource type="Texture2D" uid="uid://li36txj7oweq" path="res://assets/textures/dirt.png" id="2_kotkb"]
[ext_resource type="Texture2D" uid="uid://ct1iawpfkdf5l" path="res://assets/textures/stone.png" id="3_cqw2g"]
[ext_resource type="Texture2D" uid="uid://0mw651622h01" path="res://assets/textures/wood-side.png" id="4_yyyxx"]
@ -20,6 +21,7 @@ theme_override_constants/margin_left = 8
theme_override_constants/margin_top = 8
theme_override_constants/margin_right = 8
theme_override_constants/margin_bottom = 8
script = ExtResource("1_cqw2g")
[node name="GridContainer" type="GridContainer" parent="."]
layout_mode = 2


Loading…
Cancel
Save