cutscene progress.
This commit is contained in:
19
addons/cutscene_editor/editor/CutsceneGraphEdit.gd
Executable file → Normal file
19
addons/cutscene_editor/editor/CutsceneGraphEdit.gd
Executable file → Normal file
@@ -85,7 +85,6 @@ func add_node(node_type: String, position: Vector2) -> BaseGraphNode:
|
||||
# Emit signal
|
||||
emit_signal("node_added", new_node)
|
||||
emit_signal("graph_changed")
|
||||
|
||||
return new_node
|
||||
|
||||
# Handle connection requests
|
||||
@@ -349,6 +348,7 @@ func load_from_cutscene(cutscene: CutsceneResource) -> void:
|
||||
# Set node parameters
|
||||
for param_name in node_data["parameters"]:
|
||||
node.set_parameter(param_name, node_data["parameters"][param_name])
|
||||
node._parameters_to_view()
|
||||
|
||||
# Create connections from cutscene data
|
||||
for connection_data in cutscene.connections:
|
||||
@@ -356,6 +356,7 @@ func load_from_cutscene(cutscene: CutsceneResource) -> void:
|
||||
connect_node(connection_data["from_node"], connection_data["from_port"],
|
||||
connection_data["to_node"], connection_data["to_port"])
|
||||
|
||||
|
||||
# Emit signal
|
||||
emit_signal("graph_changed")
|
||||
|
||||
@@ -372,7 +373,7 @@ func save_to_cutscene() -> CutsceneResource:
|
||||
for child in get_children():
|
||||
if child is BaseGraphNode:
|
||||
var node_data = {
|
||||
"id": str(child.name),
|
||||
"id": str(child.node_id),
|
||||
"type": child.node_type,
|
||||
"position": {
|
||||
"x": child.position_offset.x,
|
||||
@@ -380,15 +381,25 @@ func save_to_cutscene() -> CutsceneResource:
|
||||
},
|
||||
"parameters": child.action_parameters
|
||||
}
|
||||
print(node_data)
|
||||
current_cutscene.nodes.append(node_data)
|
||||
|
||||
# Save connections
|
||||
for connection in get_connection_list():
|
||||
|
||||
# Get actual node instances from node names to access node_id
|
||||
var from_node_instance = get_node_or_null(str(connection["from_node"]))
|
||||
var to_node_instance = get_node_or_null(str(connection["to_node"]))
|
||||
|
||||
# Skip if nodes don't exist (shouldn't happen, but safety check)
|
||||
if not from_node_instance or not to_node_instance:
|
||||
continue
|
||||
|
||||
var connection_data = {
|
||||
"id": _generate_unique_connection_id(),
|
||||
"from_node": str(connection["from_node"]),
|
||||
"from_node": str(from_node_instance.node_id),
|
||||
"from_port": connection["from_port"],
|
||||
"to_node": str(connection["to_node"]),
|
||||
"to_node": str(to_node_instance.node_id),
|
||||
"to_port": connection["to_port"]
|
||||
}
|
||||
current_cutscene.connections.append(connection_data)
|
||||
|
||||
Reference in New Issue
Block a user