Script

Inherits: Resource < RefCounted < Object

Inherited By: CSharpScript, GDScript, ScriptExtension, VisualScript

A class stored as a resource.

Description

A class stored as a resource. A script extends the functionality of all objects that instance it.

This is the base class for all scripts and should not be used directly. Trying to create a new script with this class will result in an error.

The new method of a script subclass creates a new instance. Object.set_script extends an existing object, if that object's class matches one of the script's base classes.

Tutorials

Properties

String

source_code

Methods

bool

can_instantiate ( ) const

Script

get_base_script ( ) const

StringName

get_instance_base_type ( ) const

Variant

get_property_default_value ( StringName 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 ( StringName 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 )

Property Descriptions

Setter

set_source_code(value)

Getter

get_source_code()

The script source code or an empty string if source code is not available. When set, does not reload the class implementation automatically.

Method Descriptions

  • bool can_instantiate ( ) const

Returns true if the script can be instantiated.


  • Script get_base_script ( ) const

Returns the script directly inherited by this script.


Returns the script's base type.


Returns the default value of the specified property.


Returns a dictionary containing constant names and their values.


  • Array get_script_method_list ( )

Returns the list of methods in this Script.


  • Array get_script_property_list ( )

Returns the list of properties in this Script.


  • Array get_script_signal_list ( )

Returns the list of user signals defined in this Script.


Returns true if the script, or a base class, defines a signal with the given name.


  • bool has_source_code ( ) const

Returns true if the script contains non-empty source code.


Returns true if base_object is an instance of this script.


  • bool is_tool ( ) const

Returns true if the script is a tool script. A tool script can run in the editor.


Reloads the script's class implementation. Returns an error code.