@tool class_name TurnActionNode extends "res://addons/cutscene_editor/editor/nodes/BaseGraphNode.gd" # Node for TurnAction func _init() -> void: node_type = "turn" node_id = "turn_" + str(randi()) title = "Turn" modulate = Color(0.5, 1.0, 0.5) # Green # One input and one output connection var slot = 0 set_slot(slot, true, 0, Color(0, 0, 0), true, 0, Color(0, 0, 0)) action_parameters["character"] = "" action_parameters["target"] = "" action_parameters["turn_speed"] = 2.0 func _ready() -> void: super._ready() # Initialize default parameters func _parameters_to_view() -> void: $VBoxContainer/character.text = action_parameters["character"] $VBoxContainer/target.text = action_parameters["target"] $VBoxContainer/turn_speed.text = str(action_parameters["turn_speed"]) func _on_character_changed(new_text: String) -> void: set_parameter("character", new_text) func _on_target_changed(new_text: String) -> void: set_parameter("target", new_text) func _on_turn_speed_changed(new_text: String) -> void: var value = float(new_text) if new_text.is_valid_float() else 2.0 set_parameter("turn_speed", value)