class_name SpookManager extends Resource ## A strategy for handling horror elements through the level. var debug_set_alert_level: int: set = _on_alert_raised func _init() -> void: Game.manager.alert_raised.connect(_on_alert_raised) Game.manager.alert_cleared.connect(_on_alert_cleared) func _on_alert_raised(new_level: int) -> void: match new_level: 0: # LEVEL 0: UNAWARE pass 1: # LEVEL 1: PASSIVE # Beast avoids the player. # Set up meet-spook. print_debug("Preparing meet-spook...") # Get closest MeetSpook point to player. if Player.instance: var closest := SceneTools.closest_in_group(Player.instance, MeetSpook.GROUP) (closest as MeetSpook).prepare() 2: # LEVEL 2: AGGRESSIVE # Beast pursues player on sight. pass # TODO 3: # LEVEL 3: PREDATORY # Beast pursues player relentlessly. pass # TODO 4: # LEVEL 4: SWARMING # Many beasts spawn, overwhelming the player. pass # TODO 5: # LEVEL 5: FUN # Just kill that fool! pass # TODO func _on_alert_cleared() -> void: pass # TODO