SceneState
繼承: RefCounted < Object
提供對場景檔資訊的存取。
說明
維護一個與場景相關的資源、節點、匯出的和重寫的屬性以及內建腳本的列表。無法從 SceneState 修改,只能讀取。可用於在不產生實體 PackedScene 的前提下觀察其中的內容。
這個類不能直接產生實體,它是作為 PackedScene.get_state() 的結果為一個給定的場景檢索的。
方法
get_base_scene_state() const |
|
get_connection_binds(idx: int) const |
|
get_connection_count() const |
|
get_connection_flags(idx: int) const |
|
get_connection_method(idx: int) const |
|
get_connection_signal(idx: int) const |
|
get_connection_source(idx: int) const |
|
get_connection_target(idx: int) const |
|
get_connection_unbinds(idx: int) const |
|
get_node_count() const |
|
get_node_groups(idx: int) const |
|
get_node_index(idx: int) const |
|
get_node_instance(idx: int) const |
|
get_node_instance_placeholder(idx: int) const |
|
get_node_name(idx: int) const |
|
get_node_owner_path(idx: int) const |
|
get_node_path(idx: int, for_parent: bool = false) const |
|
get_node_property_count(idx: int) const |
|
get_node_property_name(idx: int, prop_idx: int) const |
|
get_node_property_value(idx: int, prop_idx: int) const |
|
get_node_type(idx: int) const |
|
get_path() const |
|
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 處訊號的解綁參數數量。
返回場景中節點的數量。
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_parent 為 true,則返回 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 的節點的型別。
Returns the resource path to the represented PackedScene.
bool is_node_instance_placeholder(idx: int) const 🔗
如果 idx 處的節點是一個 InstancePlaceholder,則返回 true。