diff --git a/scene/animation/animation_node_state_machine.cpp b/scene/animation/animation_node_state_machine.cpp index 19acf8c1b161..1c4d489d6873 100644 --- a/scene/animation/animation_node_state_machine.cpp +++ b/scene/animation/animation_node_state_machine.cpp @@ -1322,7 +1322,8 @@ bool AnimationNodeStateMachine::are_ends_reset() const { bool AnimationNodeStateMachine::can_edit_node(const StringName &p_name) const { if (states.has(p_name)) { - return !(states[p_name].node->is_class("AnimationNodeStartState") || states[p_name].node->is_class("AnimationNodeEndState")); + const AnimationNode *anode = states[p_name].node.ptr(); + return !(Object::cast_to(anode) || Object::cast_to(anode)); } return true; diff --git a/scene/register_scene_types.cpp b/scene/register_scene_types.cpp index bf5e9954349d..a665fa90b8b6 100644 --- a/scene/register_scene_types.cpp +++ b/scene/register_scene_types.cpp @@ -523,9 +523,6 @@ void register_scene_types() { GDREGISTER_CLASS(AnimationNodeStateMachinePlayback); GDREGISTER_VIRTUAL_CLASS(AnimationNodeExtension); - GDREGISTER_INTERNAL_CLASS(AnimationNodeStartState); - GDREGISTER_INTERNAL_CLASS(AnimationNodeEndState); - GDREGISTER_CLASS(AnimationNodeSync); GDREGISTER_CLASS(AnimationNodeStateMachineTransition); GDREGISTER_CLASS(AnimationNodeOutput);