From 0e2e48b7d5e143cd7308e683365a29298337b0d3 Mon Sep 17 00:00:00 2001 From: SyntaX Date: Tue, 28 Jan 2020 17:43:21 +0100 Subject: [PATCH] singleton inventory --- Characters/Player/Player.gd | 1 + Characters/Player/UI/UI.gd | 3 +++ Global/Inventory.gd | 21 +++++++++++++++++++++ Level/Interactables/Keycard/Keycard.tscn | 3 ++- project.godot | 1 + 5 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 Global/Inventory.gd diff --git a/Characters/Player/Player.gd b/Characters/Player/Player.gd index 3883cc0..fd644e8 100644 --- a/Characters/Player/Player.gd +++ b/Characters/Player/Player.gd @@ -196,6 +196,7 @@ func check_interact(): collider.do_interact(self) if collider.is_in_group("Collectibles"): _inventory.add_item(collider) + Inventory.add_item(collider) _prev_look = null # remove after taken _labelInteract.hide() else: diff --git a/Characters/Player/UI/UI.gd b/Characters/Player/UI/UI.gd index 1aa1232..d00d933 100644 --- a/Characters/Player/UI/UI.gd +++ b/Characters/Player/UI/UI.gd @@ -28,6 +28,9 @@ func _ready(): # TODO: may use global values in Inspector? _pillLevel.max_value = Pills.get_max() _dayTime.max_value = Daytime.get_max() + + for object in Inventory.get_items(): + add_item(object) func add_item (object): diff --git a/Global/Inventory.gd b/Global/Inventory.gd new file mode 100644 index 0000000..7efb47d --- /dev/null +++ b/Global/Inventory.gd @@ -0,0 +1,21 @@ +extends Node + +var items: Array + +func _ready(): + pass # Replace with function body. + + +func add_item (item): + if items.has(item): + return + + items.append(item) + + +func contains_item (item): + return items.has(item) + + +func get_items (): + return items \ No newline at end of file diff --git a/Level/Interactables/Keycard/Keycard.tscn b/Level/Interactables/Keycard/Keycard.tscn index 3e9cd35..d8f1d45 100644 --- a/Level/Interactables/Keycard/Keycard.tscn +++ b/Level/Interactables/Keycard/Keycard.tscn @@ -51,10 +51,11 @@ surfaces/0 = { [sub_resource type="BoxShape" id=3] [node name="Keycard" type="StaticBody" groups=[ -"Touchables", "Collectibles", +"Touchables", ]] script = ExtResource( 1 ) +card_lvl = 1 [node name="KeycardMesh" type="MeshInstance" parent="."] transform = Transform( 0.003, 0, 0, 0, 0.06, 0, 0, 0, 0.1, 0, 0, 0 ) diff --git a/project.godot b/project.godot index b7ad24a..3088a2e 100644 --- a/project.godot +++ b/project.godot @@ -84,6 +84,7 @@ Logger="*res://Util/gs-logger-3.1-R3/gs_logger/logger.gd" Pills="*res://Global/Pills.gd" Daytime="*res://Global/Daytime.gd" PillAudioHandler="*res://Global/PillAudioHandler.tscn" +Inventory="*res://Global/Inventory.gd" [display]