Up to date

This page is up to date for Godot 4.2. If you still find outdated information, please open an issue.

SceneState

Inherits: RefCounted < Object

Provides access to a scene file's information.

Description

Maintains a list of resources, nodes, exported and overridden properties, and built-in scripts associated with a scene. They cannot be modified from a SceneState, only accessed. Useful for peeking into what a PackedScene contains without instantiating it.

This class cannot be instantiated directly, it is retrieved for a given scene as the result of PackedScene.get_state.

Methods

Array

get_connection_binds ( int idx ) const

int

get_connection_count ( ) const

int

get_connection_flags ( int idx ) const

StringName

get_connection_method ( int idx ) const

StringName

get_connection_signal ( int idx ) const

NodePath

get_connection_source ( int idx ) const

NodePath

get_connection_target ( int idx ) const

int

get_connection_unbinds ( int idx ) const

int

get_node_count ( ) const

PackedStringArray

get_node_groups ( int idx ) const

int

get_node_index ( int idx ) const

PackedScene

get_node_instance ( int idx ) const

String

get_node_instance_placeholder ( int idx ) const

StringName

get_node_name ( int idx ) const

NodePath

get_node_owner_path ( int idx ) const

NodePath

get_node_path ( int idx, bool for_parent=false ) const

int

get_node_property_count ( int idx ) const

StringName

get_node_property_name ( int idx, int prop_idx ) const

Variant

get_node_property_value ( int idx, int prop_idx ) const

StringName

get_node_type ( int idx ) const

bool

is_node_instance_placeholder ( int idx ) const


Enumerations

enum GenEditState:

GenEditState GEN_EDIT_STATE_DISABLED = 0

If passed to PackedScene.instantiate, blocks edits to the scene state.

GenEditState GEN_EDIT_STATE_INSTANCE = 1

If passed to PackedScene.instantiate, provides inherited scene resources to the local scene.

Note: Only available in editor builds.

GenEditState GEN_EDIT_STATE_MAIN = 2

If passed to PackedScene.instantiate, provides local scene resources to the local scene. Only the main scene should receive the main edit state.

Note: Only available in editor builds.

GenEditState GEN_EDIT_STATE_MAIN_INHERITED = 3

If passed to PackedScene.instantiate, it's similar to GEN_EDIT_STATE_MAIN, but for the case where the scene is being instantiated to be the base of another one.

Note: Only available in editor builds.


Method Descriptions

Array get_connection_binds ( int idx ) const

Returns the list of bound parameters for the signal at idx.


int get_connection_count ( ) const

Returns the number of signal connections in the scene.

The idx argument used to query connection metadata in other get_connection_* methods in the interval [0, get_connection_count() - 1].


int get_connection_flags ( int idx ) const

Returns the connection flags for the signal at idx. See ConnectFlags constants.


StringName get_connection_method ( int idx ) const

Returns the method connected to the signal at idx.


StringName get_connection_signal ( int idx ) const

Returns the name of the signal at idx.


NodePath get_connection_source ( int idx ) const

Returns the path to the node that owns the signal at idx, relative to the root node.


NodePath get_connection_target ( int idx ) const

Returns the path to the node that owns the method connected to the signal at idx, relative to the root node.


int get_connection_unbinds ( int idx ) const

Returns the number of unbound parameters for the signal at idx.


int get_node_count ( ) const

Returns the number of nodes in the scene.

The idx argument used to query node data in other get_node_* methods in the interval [0, get_node_count() - 1].


PackedStringArray get_node_groups ( int idx ) const

Returns the list of group names associated with the node at idx.


int get_node_index ( int idx ) const

Returns the node's index, which is its position relative to its siblings. This is only relevant and saved in scenes for cases where new nodes are added to an instantiated or inherited scene among siblings from the base scene. Despite the name, this index is not related to the idx argument used here and in other methods.


PackedScene get_node_instance ( int idx ) const

Returns a PackedScene for the node at idx (i.e. the whole branch starting at this node, with its child nodes and resources), or null if the node is not an instance.


String get_node_instance_placeholder ( int idx ) const

Returns the path to the represented scene file if the node at idx is an