Work in progress

Godot documentation is being updated to reflect the latest changes in version 4.0. Some documentation pages may still state outdated information. This banner will tell you if you're reading one of such pages.

The contents of this page are up to date. If you can still find outdated information, please open an issue.

Script

Inherits: Resource < RefCounted < Object

Inherited By: CSharpScript, GDScript, ScriptExtension

A class stored as a resource.

Description

A class stored as a resource. A script extends the functionality of all objects that instantiate 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 ( )

Dictionary[]

get_script_method_list ( )

Dictionary[]

get_script_property_list ( )

Dictionary[]

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

String source_code

  • void set_source_code ( String value )

  • String 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.


StringName get_instance_base_type ( ) const

Returns the script's base type.


Variant get_property_default_value ( StringName property )

Returns the default value of the specified property.


Dictionary get_script_constant_map ( )

Returns a dictionary containing constant names and their values.


Dictionary[] get_script_method_list ( )

Returns the list of methods in this Script.


Dictionary[] get_script_property_list ( )

Returns the list of properties in this Script.


Dictionary[] get_script_signal_list ( )

Returns the list of user signals defined in this Script.


bool has_script_signal ( StringName signal_name ) const

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.


bool instance_has ( Object base_object ) const

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.


Error reload ( bool keep_state=false )

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