Global observer, adios patata infinita

This commit is contained in:
2025-09-13 23:35:15 +02:00
parent 365fe26bd1
commit 2d74a87b14
4 changed files with 50 additions and 18 deletions

View File

@@ -0,0 +1,25 @@
extends ESCItemComponent
class_name ESCItemComponentGlobalBooleanObserver
@export var targeted_global_variable: String
@export var inverted: bool
func get_component_type():
return "global-boolean-observer"
func _process(delta: float) -> void:
if "globals_manager" not in escoria:
return
var object = escoria.object_manager.get_object(get_global_id())
if object == null:
return
var global_value = escoria.globals_manager.get_global(targeted_global_variable)
if global_value == null:
return
escoria.object_manager.get_object(get_global_id()).active = !global_value if inverted else global_value

View File

@@ -2,33 +2,33 @@
[ext_resource type="Script" uid="uid://c7fcpp72w3dnj" path="res://addons/escoria-core/game/core-scripts/esc_room.gd" id="1"]
[ext_resource type="PackedScene" uid="uid://cjmsexhyhi4vs" path="res://gymkhana/characters/oier/oier.tscn" id="2"]
[ext_resource type="Texture2D" uid="uid://btinfddpynakn" path="res://gymkhana/rooms/turno_cocina/cocina/assets/background.png" id="3"]
[ext_resource type="Texture2D" uid="uid://djkhsbcohr5vi" path="res://gymkhana/rooms/turno_cocina/cocina/assets/background.png" id="3"]
[ext_resource type="Script" uid="uid://5pbcieq7gpdo" path="res://addons/escoria-core/game/core-scripts/esc_terrain.gd" id="4"]
[ext_resource type="Script" uid="uid://beh3ds4eapldu" path="res://addons/escoria-core/game/core-scripts/esc_location.gd" id="5"]
[ext_resource type="Script" uid="uid://ceym82rf2qnxu" path="res://addons/escoria-ui-return-monkey-island/esc_item_with_tooltip.gd" id="6"]
[ext_resource type="Texture2D" uid="uid://crhfjda62540d" path="res://gymkhana/rooms/turno_cocina/cocina/assets/depth.png" id="7"]
[ext_resource type="Texture2D" uid="uid://bss0jcop7w5cx" path="res://gymkhana/rooms/turno_cocina/cocina/assets/foreground-mesa.png" id="8"]
[ext_resource type="Texture2D" uid="uid://bna12h746ucar" path="res://gymkhana/rooms/turno_cocina/cocina/assets/foreground-silla.png" id="9"]
[ext_resource type="Texture2D" uid="uid://2mw8y41yha5" path="res://gymkhana/rooms/turno_cocina/cocina/assets/depth.png" id="7"]
[ext_resource type="Texture2D" uid="uid://hfsy8yh5msgu" path="res://gymkhana/rooms/turno_cocina/cocina/assets/foreground-mesa.png" id="8"]
[ext_resource type="Texture2D" uid="uid://p7ou513681ag" path="res://gymkhana/rooms/turno_cocina/cocina/assets/foreground-silla.png" id="9"]
[ext_resource type="PackedScene" uid="uid://cwlq5pqwktbul" path="res://gymkhana/items/inventory/turno_cocina_peso.tscn" id="10"]
[ext_resource type="PackedScene" uid="uid://cpeqaymxabewi" path="res://gymkhana/items/inventory/turno_cocina_bol.tscn" id="11"]
[ext_resource type="Texture2D" uid="uid://76sr0us2tmli" path="res://gymkhana/items/inventory/assets/turno_cocina_peso_inventario.png" id="11_fji2i"]
[ext_resource type="Texture2D" uid="uid://bk7lml882oihk" path="res://gymkhana/items/inventory/assets/turno_cocina_peso_inventario.png" id="11_fji2i"]
[ext_resource type="PackedScene" uid="uid://d1ust40cvfjtw" path="res://gymkhana/items/inventory/turno_cocina_olla_llena.tscn" id="12"]
[ext_resource type="Texture2D" uid="uid://djkmw4bj8siok" path="res://gymkhana/items/inventory/assets/turno_cocina_patata.png" id="13"]
[ext_resource type="Texture2D" uid="uid://nktfki1vvj7h" path="res://gymkhana/items/inventory/assets/turno_cocina_bol_inventario.png" id="13_wnoqk"]
[ext_resource type="Texture2D" uid="uid://b8obukr30qnmd" path="res://gymkhana/items/inventory/assets/turno_cocina_patata.png" id="13"]
[ext_resource type="Texture2D" uid="uid://276uevmvuuhp" path="res://gymkhana/items/inventory/assets/turno_cocina_bol_inventario.png" id="13_wnoqk"]
[ext_resource type="PackedScene" uid="uid://bnf0ylqtnajms" path="res://gymkhana/items/inventory/turno_cocina_libro_de_cocina.tscn" id="14"]
[ext_resource type="Texture2D" uid="uid://chy7hyrqi6imp" path="res://gymkhana/rooms/turno_cocina/cocina/assets/gas-apagado.png" id="15"]
[ext_resource type="Texture2D" uid="uid://bebo52w582216" path="res://gymkhana/rooms/turno_cocina/cocina/assets/gas-encendido3.png" id="16"]
[ext_resource type="Texture2D" uid="uid://7hcp3g8e17po" path="res://gymkhana/items/inventory/assets/turno_cocina_libro_de_cocina.png" id="16_8heqv"]
[ext_resource type="Texture2D" uid="uid://c13mgcko6vbd0" path="res://gymkhana/rooms/turno_cocina/cocina/assets/gas-encendido1.png" id="17"]
[ext_resource type="Texture2D" uid="uid://da2sep4pylffj" path="res://gymkhana/rooms/turno_cocina/cocina/assets/gas-encendido2.png" id="18"]
[ext_resource type="Texture2D" uid="uid://xv1xya2lcavx" path="res://gymkhana/rooms/turno_cocina/cocina/assets/gas-apagado.png" id="15"]
[ext_resource type="Script" uid="uid://bh55kesnba2x4" path="res://addons/escoria-ui-return-monkey-island/item_components/ESCItemComponentGlobalObserver.gd" id="15_fji2i"]
[ext_resource type="Texture2D" uid="uid://cwopnwjeljhk5" path="res://gymkhana/rooms/turno_cocina/cocina/assets/gas-encendido3.png" id="16"]
[ext_resource type="Texture2D" uid="uid://yisdxay77l1j" path="res://gymkhana/items/inventory/assets/turno_cocina_libro_de_cocina.png" id="16_8heqv"]
[ext_resource type="Texture2D" uid="uid://5hgjkw372o28" path="res://gymkhana/rooms/turno_cocina/cocina/assets/gas-encendido1.png" id="17"]
[ext_resource type="Texture2D" uid="uid://dh23qb40apphb" path="res://gymkhana/rooms/turno_cocina/cocina/assets/gas-encendido2.png" id="18"]
[ext_resource type="PackedScene" uid="uid://d7l30s558mvd" path="res://gymkhana/particles/SmokeParticles.tscn" id="19"]
[ext_resource type="PackedScene" uid="uid://igj2f3midaad" path="res://gymkhana/items/inventory/turno_cocina_cuerno.tscn" id="20"]
[ext_resource type="Script" uid="uid://uadel3g82io" path="res://gymkhana/items/inventory/scripts/turno_cocina_sin_olla_economica_encendida_observer.gd" id="21"]
[ext_resource type="PackedScene" uid="uid://bthshk88n0ida" path="res://gymkhana/rooms/turno_cocina/cocina/jarra.tscn" id="22"]
[ext_resource type="Texture2D" uid="uid://bfrdglprxc04e" path="res://gymkhana/rooms/turno_cocina/cocina/assets/jarra.png" id="23"]
[ext_resource type="Texture2D" uid="uid://d33c6oen4di3s" path="res://gymkhana/items/inventory/assets/turno_cocina_cuerno.png" id="23_fji2i"]
[ext_resource type="Texture2D" uid="uid://dhh7ya2ab1eax" path="res://gymkhana/items/inventory/assets/turno_cocina_olla_inv_con_agua.png" id="23_td4ig"]
[ext_resource type="Texture2D" uid="uid://d00ocqj5ow3n6" path="res://gymkhana/rooms/turno_cocina/cocina/assets/jarra_volcada.png" id="24"]
[ext_resource type="Texture2D" uid="uid://ch6cix8tilkko" path="res://gymkhana/rooms/turno_cocina/cocina/assets/jarra.png" id="23"]
[ext_resource type="Texture2D" uid="uid://bpgvtgvlo10in" path="res://gymkhana/items/inventory/assets/turno_cocina_cuerno.png" id="23_fji2i"]
[ext_resource type="Texture2D" uid="uid://owlqnagksu55" path="res://gymkhana/rooms/turno_cocina/cocina/assets/jarra_volcada.png" id="24"]
[ext_resource type="PackedScene" uid="uid://byfyg5p0h02br" path="res://gymkhana/rooms/turno_cocina/cocina/jarra_volcada.tscn" id="25"]
[ext_resource type="Script" uid="uid://oaq45tntm70n" path="res://gymkhana/rooms/turno_cocina/cocina/cocina_gas.gd" id="26"]
@@ -326,6 +326,12 @@ polygon = PackedVector2Array(4.29102, 2.70483, 14.7856, 9.76636, 12.1133, 19.402
position = Vector2(93.1357, 65.3632)
script = ExtResource("5")
[node name="ESCItemComponentGlobalBooleanObserver" type="Node" parent="cocina_patata"]
script = ExtResource("15_fji2i")
targeted_global_variable = "cocina_patata_picked"
inverted = true
metadata/_custom_type_script = "uid://bh55kesnba2x4"
[node name="turno_cocina_economica" type="Area2D" parent="."]
process_mode = 1
position = Vector2(1299, 506)

View File

@@ -9,8 +9,8 @@
# Disable cocina_patata if already picked.
# We cannot look in inventory because the countable item is a different item.
if cocina_patata_picked:
set_active($cocina_patata, false)
#if cocina_patata_picked:
# set_active($cocina_patata, false)
# Disable cocina_debajo_sofa if already picked.
# We cannot look in inventory because the countable item is a different item.