summaryrefslogtreecommitdiff
path: root/doc/classes/Script.xml
blob: b4b14c01c68b13b4c3d06ac5cb791156688a5915 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
<?xml version="1.0" encoding="UTF-8" ?>
<class name="Script" inherits="Resource" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
	<brief_description>
		A class stored as a resource.
	</brief_description>
	<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 [code]new[/code] method of a script subclass creates a new instance. [method Object.set_script] extends an existing object, if that object's class matches one of the script's base classes.
	</description>
	<tutorials>
		<link title="Scripting documentation index">$DOCS_URL/tutorials/scripting/index.html</link>
	</tutorials>
	<methods>
		<method name="can_instantiate" qualifiers="const">
			<return type="bool" />
			<description>
				Returns [code]true[/code] if the script can be instantiated.
			</description>
		</method>
		<method name="get_base_script" qualifiers="const">
			<return type="Script" />
			<description>
				Returns the script directly inherited by this script.
			</description>
		</method>
		<method name="get_instance_base_type" qualifiers="const">
			<return type="StringName" />
			<description>
				Returns the script's base type.
			</description>
		</method>
		<method name="get_property_default_value">
			<return type="Variant" />
			<param index="0" name="property" type="StringName" />
			<description>
				Returns the default value of the specified property.
			</description>
		</method>
		<method name="get_script_constant_map">
			<return type="Dictionary" />
			<description>
				Returns a dictionary containing constant names and their values.
			</description>
		</method>
		<method name="get_script_method_list">
			<return type="Dictionary[]" />
			<description>
				Returns the list of methods in this [Script].
			</description>
		</method>
		<method name="get_script_property_list">
			<return type="Dictionary[]" />
			<description>
				Returns the list of properties in this [Script].
			</description>
		</method>
		<method name="get_script_signal_list">
			<return type="Dictionary[]" />
			<description>
				Returns the list of user signals defined in this [Script].
			</description>
		</method>
		<method name="has_script_signal" qualifiers="const">
			<return type="bool" />
			<param index="0" name="signal_name" type="StringName" />
			<description>
				Returns [code]true[/code] if the script, or a base class, defines a signal with the given name.
			</description>
		</method>
		<method name="has_source_code" qualifiers="const">
			<return type="bool" />
			<description>
				Returns [code]true[/code] if the script contains non-empty source code.
			</description>
		</method>
		<method name="instance_has" qualifiers="const">
			<return type="bool" />
			<param index="0" name="base_object" type="Object" />
			<description>
				Returns [code]true[/code] if [param base_object] is an instance of this script.
			</description>
		</method>
		<method name="is_tool" qualifiers="const">
			<return type="bool" />
			<description>
				Returns [code]true[/code] if the script is a tool script. A tool script can run in the editor.
			</description>
		</method>
		<method name="reload">
			<return type="int" enum="Error" />
			<param index="0" name="keep_state" type="bool" default="false" />
			<description>
				Reloads the script's class implementation. Returns an error code.
			</description>
		</method>
	</methods>
	<members>
		<member name="source_code" type="String" setter="set_source_code" 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.
		</member>
	</members>
</class>