Script

Inherits: Resource < Reference < Object

Inherited By: CSharpScript, GDScript, NativeScript, PluginScript, VisualScript

作为资源存储的类。

描述

一个存储为资源的类。用脚本扩展所有以它为实例的对象的功能。

脚本子类的new方法创建一个新的实例。如果一个现有的对象的类与脚本的基类之一相匹配,Object.set_script 会扩展该对象。

教程

属性

String

source_code

方法

bool

can_instance ( ) const

Script

get_base_script ( ) const

String

get_instance_base_type ( ) const

Variant

get_property_default_value ( String property )

Dictionary

get_script_constant_map ( )

Array

get_script_method_list ( )

Array

get_script_property_list ( )

Array

get_script_signal_list ( )

bool

has_script_signal ( String signal_name ) const

bool

has_source_code ( ) const

bool

instance_has ( Object base_object ) const

bool

is_tool ( ) const

Error

reload ( bool keep_state=false )

属性说明

Setter

set_source_code(value)

Getter

get_source_code()

脚本的源代码,如果源代码不可用,则为空字符串。当设置时,不会自动重新加载类的实现。

方法说明

  • bool can_instance ( ) const

如果脚本可以实例化,则返回 true


  • Script get_base_script ( ) const

返回由该脚本直接继承的脚本。


  • String get_instance_base_type ( ) const

返回脚本的基类类型。


返回指定属性的默认值。


返回一个包含常量名称及其值的字典。


  • Array get_script_method_list ( )

返回此 Script 中的方法列表。


  • Array get_script_property_list ( )

返回此 Script 中的属性列表。


  • Array get_script_signal_list ( )

返回在此 Script 中定义的用户信号列表。


  • bool has_script_signal ( String signal_name ) const

如果脚本或基类定义了具有给定名称的信号,则返回 true


  • bool has_source_code ( ) const

如果脚本包含非空源代码,则返回 true


如果 base_object 是此脚本的实例,则返回 true


  • bool is_tool ( ) const

如果脚本是工具脚本,则返回 true。工具脚本可以在编辑器中运行。


重新加载脚本的类的实现。返回一个错误代码。