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

繼承: RefCounted < Object

提供對場景檔資訊的存取。

說明

維護一個與場景相關的資源、節點、匯出的和重寫的屬性以及內建腳本的列表。無法從 SceneState 修改,只能讀取。可用於在不產生實體 PackedScene 的前提下觀察其中的內容。

這個類不能直接產生實體,它是作為 PackedScene.get_state() 的結果為一個給定的場景檢索的。

方法

SceneState

get_base_scene_state() const

Array

get_connection_binds(idx: int) const

int

get_connection_count() const

int

get_connection_flags(idx: int) const

StringName

get_connection_method(idx: int) const

StringName

get_connection_signal(idx: int) const

NodePath

get_connection_source(idx: int) const

NodePath

get_connection_target(idx: int) const

int

get_connection_unbinds(idx: int) const

int

get_node_count() const

PackedStringArray

get_node_groups(idx: int) const

int

get_node_index(idx: int) const

PackedScene

get_node_instance(idx: int) const

String

get_node_instance_placeholder(idx: int) const

StringName

get_node_name(idx: int) const

NodePath

get_node_owner_path(idx: int) const

NodePath

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

int

get_node_property_count(idx: int) const

StringName

get_node_property_name(idx: int, prop_idx: int) const

Variant

get_node_property_value(idx: int, prop_idx: int) const

StringName

get_node_type(idx: int) const

String

get_path() const

bool

is_node_instance_placeholder(idx: int) const


列舉

enum GenEditState: 🔗

GenEditState GEN_EDIT_STATE_DISABLED = 0

如果傳遞給 PackedScene.instantiate(),則會阻止對場景狀態的編輯。

GenEditState GEN_EDIT_STATE_INSTANCE = 1

如果傳遞給 PackedScene.instantiate(),則會把繼承的場景資源提供給本地場景。

注意:僅在編輯器建構中可用。

GenEditState GEN_EDIT_STATE_MAIN = 2

如果傳遞給 PackedScene.instantiate(),則會為本地場景提供本地場景資源。只有主場景應該接收主編輯狀態。

注意:僅在編輯器建構中可用。

GenEditState GEN_EDIT_STATE_MAIN_INHERITED = 3

如果傳遞給 PackedScene.instantiate(),則類似於 GEN_EDIT_STATE_MAIN,但適用於該場景被產生實體為另一個場景的基底類別的情況。

注意:僅在編輯器建構中可用。


方法說明

SceneState get_base_scene_state() const 🔗

Returns the SceneState of the scene that this scene inherits from, or null if it doesn't inherit from any scene.


Array get_connection_binds(idx: int) const 🔗

返回 idx 處訊號的綁定參數列表。


int get_connection_count() const 🔗

返回場景中的訊號連接數。

用於查詢其他 get_connection_* 方法中的連接中繼資料的 idx 參數,範圍是 [0, get_connection_count() - 1]


int get_connection_flags(idx: int) const 🔗

返回 idx 處的訊號的連接旗標。見 ConnectFlags 常數。


StringName get_connection_method(idx: int) const 🔗

返回連接到 idx 處訊號的方法。


StringName get_connection_signal(idx: int) const 🔗

返回索引為 idx 的訊號的名稱。


NodePath get_connection_source(idx: int) const 🔗

返回擁有 idx 處訊號的節點路徑,相對於根節點。


NodePath get_connection_target(idx: int) const 🔗

返回到擁有連接到 idx 處的訊號的方法的節點的路徑,相對於根節點。


int get_connection_unbinds(idx: int) const 🔗

返回 idx 處訊號的解綁參數數量。


int get_node_count() const 🔗

返回場景中節點的數量。

idx 參數用於在其他 get_node_* 方法中查詢節點資料,範圍為 [0, get_node_count() - 1]


PackedStringArray get_node_groups(idx: int) const 🔗

返回與 idx 處的節點關聯的組名列表。


int get_node_index(idx: int) const 🔗

返回該節點的索引,這是它相對於其兄弟節點的位置。這僅在新節點被新增到一個實例化的或繼承的場景,在基礎場景的兄弟節點之間的情況下,才相關並被保存在場景中。儘管名稱如此,但該索引與此處和其他方法中使用的 idx 參數無關。


PackedScene get_node_instance(idx: int) const 🔗

idx 處的節點返回一個 PackedScene(即從該節點開始的整個分支,包括其子節點和資源),如果該節點不是一個實例,則返回 null


String get_node_instance_placeholder(idx: int) const 🔗

如果 idx 處的節點是一個 InstancePlaceholder,則返回所表示的場景檔的路徑。


StringName get_node_name(idx: int) const 🔗

返回索引為 idx 的節點的名稱。


NodePath get_node_owner_path(idx: int) const 🔗

返回相對於根節點的位於 idx 處的節點的所有者的路徑。


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

返回 idx 處的節點的路徑。

如果 for_parenttrue,則返回 idx 節點的父節點的路徑。


int get_node_property_count(idx: int) const 🔗

返回在 idx 處的節點的匯出的或覆蓋的屬性數量。

prop_idx 參數介於區間 [0, get_node_property_count() - 1],用於在其他 get_node_property_* 方法中查詢節點屬性資料。


StringName get_node_property_name(idx: int, prop_idx: int) const 🔗

返回索引為 idx 的節點中,索引為 prop_idx 的屬性的名稱。


Variant get_node_property_value(idx: int, prop_idx: int) const 🔗

返回索引為 idx 的節點中,索引為 prop_idx 的屬性的值。


StringName get_node_type(idx: int) const 🔗

返回索引為 idx 的節點的型別。


String get_path() const 🔗

Returns the resource path to the represented PackedScene.


bool is_node_instance_placeholder(idx: int) const 🔗

如果 idx 處的節點是一個 InstancePlaceholder,則返回 true