extends Node # Test script for the new dependency-based cutscene system func _ready(): # Create a simple test cutscene _test_dependency_system() func _test_dependency_system(): print("Testing dependency-based cutscene system") # Create cutscene manager var cutscene_manager = CutsceneManager.new() add_child(cutscene_manager) # Create some test actions var wait1 = preload("res://cutscene/actions/WaitAction.gd").new(1.0) wait1.name = "Wait1" var wait2 = preload("res://cutscene/actions/WaitAction.gd").new(2.0) wait2.name = "Wait2" var wait3 = preload("res://cutscene/actions/WaitAction.gd").new(1.5) wait3.name = "Wait3" # Add actions with dependencies # wait1 and wait2 can run in parallel (no dependencies) # wait3 depends on wait1 cutscene_manager.add_action("wait1", wait1, []) cutscene_manager.add_action("wait2", wait2, []) cutscene_manager.add_action("wait3", wait3, ["wait1"]) # Connect to signals cutscene_manager.connect("cutscene_completed", _on_cutscene_completed) cutscene_manager.connect("action_started", _on_action_started) cutscene_manager.connect("action_completed", _on_action_completed) # Start the cutscene cutscene_manager.start() print("Cutscene started with dependency-based execution") func _on_cutscene_completed(): print("Cutscene completed successfully!") func _on_action_started(action): print("Action started: %s" % action.name) func _on_action_completed(action): print("Action completed: %s" % action.name)