From 5d50f3e18883833f10788937b21e20aae12a7354 Mon Sep 17 00:00:00 2001 From: oier Date: Sun, 8 Oct 2023 03:44:21 +0200 Subject: [PATCH] Auto set_active(false) for inventory items component --- .../esc_item_with_tooltip.gd | 3 ++- .../item_components/ESCItemComponentInventoryChecker.gd | 9 +++++++++ gymkhana/rooms/turno_cocina/cocina/esc/cocina.esc | 4 ---- project.godot | 6 ++++++ 4 files changed, 17 insertions(+), 5 deletions(-) create mode 100644 gymkhana/addons/escoria-ui-return-monkey-island/item_components/ESCItemComponentInventoryChecker.gd diff --git a/gymkhana/addons/escoria-ui-return-monkey-island/esc_item_with_tooltip.gd b/gymkhana/addons/escoria-ui-return-monkey-island/esc_item_with_tooltip.gd index 2b939b03..736295a1 100644 --- a/gymkhana/addons/escoria-ui-return-monkey-island/esc_item_with_tooltip.gd +++ b/gymkhana/addons/escoria-ui-return-monkey-island/esc_item_with_tooltip.gd @@ -68,4 +68,5 @@ func register_components(): child.register(custom_data) func autoload_components(): - add_child(ESCItemComponentOutline.new()) \ No newline at end of file + add_child(ESCItemComponentOutline.new()) + add_child(ESCItemComponentInventoryChecker.new()) \ No newline at end of file diff --git a/gymkhana/addons/escoria-ui-return-monkey-island/item_components/ESCItemComponentInventoryChecker.gd b/gymkhana/addons/escoria-ui-return-monkey-island/item_components/ESCItemComponentInventoryChecker.gd new file mode 100644 index 00000000..e2304016 --- /dev/null +++ b/gymkhana/addons/escoria-ui-return-monkey-island/item_components/ESCItemComponentInventoryChecker.gd @@ -0,0 +1,9 @@ +extends ESCItemComponent +class_name ESCItemComponentInventoryChecker + +func get_component_type(): + return "auto-inventory-checker" + +func _enter_tree(): + if escoria.inventory_manager.inventory_has(get_global_id()): + escoria.object_manager.get_object(get_global_id()).active = false \ No newline at end of file diff --git a/gymkhana/rooms/turno_cocina/cocina/esc/cocina.esc b/gymkhana/rooms/turno_cocina/cocina/esc/cocina.esc index 42de8ec9..d00cc437 100644 --- a/gymkhana/rooms/turno_cocina/cocina/esc/cocina.esc +++ b/gymkhana/rooms/turno_cocina/cocina/esc/cocina.esc @@ -1,9 +1,5 @@ :setup -# Disable turno_cocina_peso if already in inventory -> [i/turno_cocina_peso] - set_active turno_cocina_peso false - # Disable cocina_patata if already picked. # We cannot look in inventory because the countable item is a different item. > [cocina_patata_picked] diff --git a/project.godot b/project.godot index aa607a9b..f91ef62b 100644 --- a/project.godot +++ b/project.godot @@ -290,6 +290,11 @@ _global_script_classes=[ { "path": "res://gymkhana/addons/escoria-ui-return-monkey-island/item_components/ESCItemComponent.gd" }, { "base": "ESCItemComponent", +"class": "ESCItemComponentInventoryChecker", +"language": "GDScript", +"path": "res://gymkhana/addons/escoria-ui-return-monkey-island/item_components/ESCItemComponentInventoryChecker.gd" +}, { +"base": "ESCItemComponent", "class": "ESCItemComponentOutline", "language": "GDScript", "path": "res://gymkhana/addons/escoria-ui-return-monkey-island/item_components/ESCItemComponentOutline.gd" @@ -796,6 +801,7 @@ _global_script_class_icons={ "ESCInventoryManager": "", "ESCItem": "res://addons/escoria-core/design/esc_item.svg", "ESCItemComponent": "", +"ESCItemComponentInventoryChecker": "", "ESCItemComponentOutline": "", "ESCItemCountManager": "", "ESCItemWithTooltip": "res://addons/escoria-core/design/esc_item.svg",