Files
2026-08-17 13:42:18 -04:00

24 lines
634 B
GDScript

@tool
extends EditorScript
func _run() -> void:
var root := EditorInterface.get_edited_scene_root()
if not root:
print("No active scene found.")
return
_clean_node(root)
print("Cleanup complete! Save your scene (Ctrl+S / Cmd+S) to commit changes.")
func _clean_node(node: Node) -> void:
if node is Bone2D:
if node.has_meta("_local_pose_override_enabled_"):
node.remove_meta("_local_pose_override_enabled_")
node.scale = Vector2.ONE
node.transform = node.rest
elif node is Node2D and not node.scale.is_equal_approx(Vector2.ONE):
node.scale = Vector2.ONE
for child in node.get_children():
_clean_node(child)