class_scenestate.rst 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259
  1. :github_url: hide
  2. .. Generated automatically by doc/tools/makerst.py in Godot's source tree.
  3. .. DO NOT EDIT THIS FILE, but the SceneState.xml source instead.
  4. .. The source is found in doc/classes or modules/<name>/doc_classes.
  5. .. _class_SceneState:
  6. SceneState
  7. ==========
  8. **Inherits:** :ref:`Reference<class_Reference>` **<** :ref:`Object<class_Object>`
  9. A script interface to a scene file's data.
  10. Description
  11. -----------
  12. Maintains a list of resources, nodes, exported, and overridden properties, and built-in scripts associated with a scene.
  13. This class cannot be instantiated directly, it is retrieved for a given scene as the result of :ref:`PackedScene.get_state<class_PackedScene_method_get_state>`.
  14. Methods
  15. -------
  16. +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
  17. | :ref:`Array<class_Array>` | :ref:`get_connection_binds<class_SceneState_method_get_connection_binds>` **(** :ref:`int<class_int>` idx **)** const |
  18. +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
  19. | :ref:`int<class_int>` | :ref:`get_connection_count<class_SceneState_method_get_connection_count>` **(** **)** const |
  20. +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
  21. | :ref:`int<class_int>` | :ref:`get_connection_flags<class_SceneState_method_get_connection_flags>` **(** :ref:`int<class_int>` idx **)** const |
  22. +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
  23. | :ref:`StringName<class_StringName>` | :ref:`get_connection_method<class_SceneState_method_get_connection_method>` **(** :ref:`int<class_int>` idx **)** const |
  24. +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
  25. | :ref:`StringName<class_StringName>` | :ref:`get_connection_signal<class_SceneState_method_get_connection_signal>` **(** :ref:`int<class_int>` idx **)** const |
  26. +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
  27. | :ref:`NodePath<class_NodePath>` | :ref:`get_connection_source<class_SceneState_method_get_connection_source>` **(** :ref:`int<class_int>` idx **)** const |
  28. +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
  29. | :ref:`NodePath<class_NodePath>` | :ref:`get_connection_target<class_SceneState_method_get_connection_target>` **(** :ref:`int<class_int>` idx **)** const |
  30. +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
  31. | :ref:`int<class_int>` | :ref:`get_node_count<class_SceneState_method_get_node_count>` **(** **)** const |
  32. +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
  33. | :ref:`PackedStringArray<class_PackedStringArray>` | :ref:`get_node_groups<class_SceneState_method_get_node_groups>` **(** :ref:`int<class_int>` idx **)** const |
  34. +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
  35. | :ref:`int<class_int>` | :ref:`get_node_index<class_SceneState_method_get_node_index>` **(** :ref:`int<class_int>` idx **)** const |
  36. +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
  37. | :ref:`PackedScene<class_PackedScene>` | :ref:`get_node_instance<class_SceneState_method_get_node_instance>` **(** :ref:`int<class_int>` idx **)** const |
  38. +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
  39. | :ref:`String<class_String>` | :ref:`get_node_instance_placeholder<class_SceneState_method_get_node_instance_placeholder>` **(** :ref:`int<class_int>` idx **)** const |
  40. +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
  41. | :ref:`StringName<class_StringName>` | :ref:`get_node_name<class_SceneState_method_get_node_name>` **(** :ref:`int<class_int>` idx **)** const |
  42. +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
  43. | :ref:`NodePath<class_NodePath>` | :ref:`get_node_owner_path<class_SceneState_method_get_node_owner_path>` **(** :ref:`int<class_int>` idx **)** const |
  44. +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
  45. | :ref:`NodePath<class_NodePath>` | :ref:`get_node_path<class_SceneState_method_get_node_path>` **(** :ref:`int<class_int>` idx, :ref:`bool<class_bool>` for_parent=false **)** const |
  46. +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
  47. | :ref:`int<class_int>` | :ref:`get_node_property_count<class_SceneState_method_get_node_property_count>` **(** :ref:`int<class_int>` idx **)** const |
  48. +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
  49. | :ref:`StringName<class_StringName>` | :ref:`get_node_property_name<class_SceneState_method_get_node_property_name>` **(** :ref:`int<class_int>` idx, :ref:`int<class_int>` prop_idx **)** const |
  50. +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
  51. | :ref:`Variant<class_Variant>` | :ref:`get_node_property_value<class_SceneState_method_get_node_property_value>` **(** :ref:`int<class_int>` idx, :ref:`int<class_int>` prop_idx **)** const |
  52. +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
  53. | :ref:`StringName<class_StringName>` | :ref:`get_node_type<class_SceneState_method_get_node_type>` **(** :ref:`int<class_int>` idx **)** const |
  54. +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
  55. | :ref:`bool<class_bool>` | :ref:`is_node_instance_placeholder<class_SceneState_method_is_node_instance_placeholder>` **(** :ref:`int<class_int>` idx **)** const |
  56. +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
  57. Enumerations
  58. ------------
  59. .. _enum_SceneState_GenEditState:
  60. .. _class_SceneState_constant_GEN_EDIT_STATE_DISABLED:
  61. .. _class_SceneState_constant_GEN_EDIT_STATE_INSTANCE:
  62. .. _class_SceneState_constant_GEN_EDIT_STATE_MAIN:
  63. enum **GenEditState**:
  64. - **GEN_EDIT_STATE_DISABLED** = **0** --- If passed to :ref:`PackedScene.instance<class_PackedScene_method_instance>`, blocks edits to the scene state.
  65. - **GEN_EDIT_STATE_INSTANCE** = **1** --- If passed to :ref:`PackedScene.instance<class_PackedScene_method_instance>`, provides inherited scene resources to the local scene.
  66. **Note:** Only available in editor builds.
  67. - **GEN_EDIT_STATE_MAIN** = **2** --- If passed to :ref:`PackedScene.instance<class_PackedScene_method_instance>`, provides local scene resources to the local scene. Only the main scene should receive the main edit state.
  68. **Note:** Only available in editor builds.
  69. Method Descriptions
  70. -------------------
  71. .. _class_SceneState_method_get_connection_binds:
  72. - :ref:`Array<class_Array>` **get_connection_binds** **(** :ref:`int<class_int>` idx **)** const
  73. Returns the list of bound parameters for the signal at ``idx``.
  74. ----
  75. .. _class_SceneState_method_get_connection_count:
  76. - :ref:`int<class_int>` **get_connection_count** **(** **)** const
  77. Returns the number of signal connections in the scene.
  78. The ``idx`` argument used to query connection metadata in other ``get_connection_*`` methods in the interval ``[0, get_connection_count() - 1]``.
  79. ----
  80. .. _class_SceneState_method_get_connection_flags:
  81. - :ref:`int<class_int>` **get_connection_flags** **(** :ref:`int<class_int>` idx **)** const
  82. Returns the connection flags for the signal at ``idx``. See :ref:`ConnectFlags<enum_Object_ConnectFlags>` constants.
  83. ----
  84. .. _class_SceneState_method_get_connection_method:
  85. - :ref:`StringName<class_StringName>` **get_connection_method** **(** :ref:`int<class_int>` idx **)** const
  86. Returns the method connected to the signal at ``idx``.
  87. ----
  88. .. _class_SceneState_method_get_connection_signal:
  89. - :ref:`StringName<class_StringName>` **get_connection_signal** **(** :ref:`int<class_int>` idx **)** const
  90. Returns the name of the signal at ``idx``.
  91. ----
  92. .. _class_SceneState_method_get_connection_source:
  93. - :ref:`NodePath<class_NodePath>` **get_connection_source** **(** :ref:`int<class_int>` idx **)** const
  94. Returns the path to the node that owns the signal at ``idx``, relative to the root node.
  95. ----
  96. .. _class_SceneState_method_get_connection_target:
  97. - :ref:`NodePath<class_NodePath>` **get_connection_target** **(** :ref:`int<class_int>` idx **)** const
  98. Returns the path to the node that owns the method connected to the signal at ``idx``, relative to the root node.
  99. ----
  100. .. _class_SceneState_method_get_node_count:
  101. - :ref:`int<class_int>` **get_node_count** **(** **)** const
  102. Returns the number of nodes in the scene.
  103. The ``idx`` argument used to query node data in other ``get_node_*`` methods in the interval ``[0, get_node_count() - 1]``.
  104. ----
  105. .. _class_SceneState_method_get_node_groups:
  106. - :ref:`PackedStringArray<class_PackedStringArray>` **get_node_groups** **(** :ref:`int<class_int>` idx **)** const
  107. Returns the list of group names associated with the node at ``idx``.
  108. ----
  109. .. _class_SceneState_method_get_node_index:
  110. - :ref:`int<class_int>` **get_node_index** **(** :ref:`int<class_int>` idx **)** const
  111. 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 instanced 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.
  112. ----
  113. .. _class_SceneState_method_get_node_instance:
  114. - :ref:`PackedScene<class_PackedScene>` **get_node_instance** **(** :ref:`int<class_int>` idx **)** const
  115. Returns a :ref:`PackedScene<class_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.
  116. ----
  117. .. _class_SceneState_method_get_node_instance_placeholder:
  118. - :ref:`String<class_String>` **get_node_instance_placeholder** **(** :ref:`int<class_int>` idx **)** const
  119. Returns the path to the represented scene file if the node at ``idx`` is an :ref:`InstancePlaceholder<class_InstancePlaceholder>`.
  120. ----
  121. .. _class_SceneState_method_get_node_name:
  122. - :ref:`StringName<class_StringName>` **get_node_name** **(** :ref:`int<class_int>` idx **)** const
  123. Returns the name of the node at ``idx``.
  124. ----
  125. .. _class_SceneState_method_get_node_owner_path:
  126. - :ref:`NodePath<class_NodePath>` **get_node_owner_path** **(** :ref:`int<class_int>` idx **)** const
  127. Returns the path to the owner of the node at ``idx``, relative to the root node.
  128. ----
  129. .. _class_SceneState_method_get_node_path:
  130. - :ref:`NodePath<class_NodePath>` **get_node_path** **(** :ref:`int<class_int>` idx, :ref:`bool<class_bool>` for_parent=false **)** const
  131. Returns the path to the node at ``idx``.
  132. If ``for_parent`` is ``true``, returns the path of the ``idx`` node's parent instead.
  133. ----
  134. .. _class_SceneState_method_get_node_property_count:
  135. - :ref:`int<class_int>` **get_node_property_count** **(** :ref:`int<class_int>` idx **)** const
  136. Returns the number of exported or overridden properties for the node at ``idx``.
  137. 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]``.
  138. ----
  139. .. _class_SceneState_method_get_node_property_name:
  140. - :ref:`StringName<class_StringName>` **get_node_property_name** **(** :ref:`int<class_int>` idx, :ref:`int<class_int>` prop_idx **)** const
  141. Returns the name of the property at ``prop_idx`` for the node at ``idx``.
  142. ----
  143. .. _class_SceneState_method_get_node_property_value:
  144. - :ref:`Variant<class_Variant>` **get_node_property_value** **(** :ref:`int<class_int>` idx, :ref:`int<class_int>` prop_idx **)** const
  145. Returns the value of the property at ``prop_idx`` for the node at ``idx``.
  146. ----
  147. .. _class_SceneState_method_get_node_type:
  148. - :ref:`StringName<class_StringName>` **get_node_type** **(** :ref:`int<class_int>` idx **)** const
  149. Returns the type of the node at ``idx``.
  150. ----
  151. .. _class_SceneState_method_is_node_instance_placeholder:
  152. - :ref:`bool<class_bool>` **is_node_instance_placeholder** **(** :ref:`int<class_int>` idx **)** const
  153. Returns ``true`` if the node at ``idx`` is an :ref:`InstancePlaceholder<class_InstancePlaceholder>`.