Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

SceneState

Inherits: RefCounted < Object

Provides access to a scene file's information.

描述

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 InstancePlaceholder.


StringName get_node_name ( int idx ) const

Returns the name of the node at idx.


NodePath get_node_owner_path ( int idx ) const

Returns the path to the owner of the node at idx, relative to the root node.


NodePath get_node_path ( int idx, bool for_parent=false ) const

Returns the path to the node at idx.

If for_parent is true, returns the path of the idx node's parent instead.


int get_node_property_count ( int idx ) const

Returns the number of exported or overridden properties for the node at idx.

The prop_idx argument used to query node property data in other get_node_property_* methods in the interval [0, get_node_property_count() - 1].


StringName get_node_property_name ( int idx, int prop_idx ) const

Returns the name of the property at prop_idx for the node at idx.


Variant get_node_property_value ( int idx, int prop_idx ) const

Returns the value of the property at prop_idx for the node at idx.


StringName get_node_type ( int idx ) const

Returns the type of the node at idx.


bool is_node_instance_placeholder ( int idx ) const

Returns true if the node at idx is an InstancePlaceholder.