class_visualscript.rst 39 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473
  1. :github_url: hide
  2. .. DO NOT EDIT THIS FILE!!!
  3. .. Generated automatically from Godot engine sources.
  4. .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
  5. .. XML source: https://github.com/godotengine/godot/tree/master/modules/visual_script/doc_classes/VisualScript.xml.
  6. .. _class_VisualScript:
  7. VisualScript
  8. ============
  9. **Inherits:** :ref:`Script<class_Script>` **<** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
  10. A script implemented in the Visual Script programming environment.
  11. Description
  12. -----------
  13. A script implemented in the Visual Script programming environment. The script extends the functionality of all objects that instance it.
  14. \ :ref:`Object.set_script<class_Object_method_set_script>` extends an existing object, if that object's class matches one of the script's base classes.
  15. You are most likely to use this class via the Visual Script editor or when writing plugins for it.
  16. Tutorials
  17. ---------
  18. - :doc:`VisualScript documentation index <../tutorials/scripting/visual_script/index>`
  19. Methods
  20. -------
  21. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  22. | void | :ref:`add_custom_signal<class_VisualScript_method_add_custom_signal>` **(** :ref:`StringName<class_StringName>` name **)** |
  23. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  24. | void | :ref:`add_function<class_VisualScript_method_add_function>` **(** :ref:`StringName<class_StringName>` name, :ref:`int<class_int>` func_node_id **)** |
  25. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  26. | void | :ref:`add_node<class_VisualScript_method_add_node>` **(** :ref:`int<class_int>` id, :ref:`VisualScriptNode<class_VisualScriptNode>` node, :ref:`Vector2<class_Vector2>` position=Vector2(0, 0) **)** |
  27. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  28. | void | :ref:`add_variable<class_VisualScript_method_add_variable>` **(** :ref:`StringName<class_StringName>` name, :ref:`Variant<class_Variant>` default_value=null, :ref:`bool<class_bool>` export=false **)** |
  29. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  30. | void | :ref:`custom_signal_add_argument<class_VisualScript_method_custom_signal_add_argument>` **(** :ref:`StringName<class_StringName>` name, :ref:`Variant.Type<enum_@GlobalScope_Variant.Type>` type, :ref:`String<class_String>` argname, :ref:`int<class_int>` index=-1 **)** |
  31. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  32. | :ref:`int<class_int>` | :ref:`custom_signal_get_argument_count<class_VisualScript_method_custom_signal_get_argument_count>` **(** :ref:`StringName<class_StringName>` name **)** |const| |
  33. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  34. | :ref:`String<class_String>` | :ref:`custom_signal_get_argument_name<class_VisualScript_method_custom_signal_get_argument_name>` **(** :ref:`StringName<class_StringName>` name, :ref:`int<class_int>` argidx **)** |const| |
  35. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  36. | :ref:`Variant.Type<enum_@GlobalScope_Variant.Type>` | :ref:`custom_signal_get_argument_type<class_VisualScript_method_custom_signal_get_argument_type>` **(** :ref:`StringName<class_StringName>` name, :ref:`int<class_int>` argidx **)** |const| |
  37. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  38. | void | :ref:`custom_signal_remove_argument<class_VisualScript_method_custom_signal_remove_argument>` **(** :ref:`StringName<class_StringName>` name, :ref:`int<class_int>` argidx **)** |
  39. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  40. | void | :ref:`custom_signal_set_argument_name<class_VisualScript_method_custom_signal_set_argument_name>` **(** :ref:`StringName<class_StringName>` name, :ref:`int<class_int>` argidx, :ref:`String<class_String>` argname **)** |
  41. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  42. | void | :ref:`custom_signal_set_argument_type<class_VisualScript_method_custom_signal_set_argument_type>` **(** :ref:`StringName<class_StringName>` name, :ref:`int<class_int>` argidx, :ref:`Variant.Type<enum_@GlobalScope_Variant.Type>` type **)** |
  43. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  44. | void | :ref:`custom_signal_swap_argument<class_VisualScript_method_custom_signal_swap_argument>` **(** :ref:`StringName<class_StringName>` name, :ref:`int<class_int>` argidx, :ref:`int<class_int>` withidx **)** |
  45. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  46. | void | :ref:`data_connect<class_VisualScript_method_data_connect>` **(** :ref:`int<class_int>` from_node, :ref:`int<class_int>` from_port, :ref:`int<class_int>` to_node, :ref:`int<class_int>` to_port **)** |
  47. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  48. | void | :ref:`data_disconnect<class_VisualScript_method_data_disconnect>` **(** :ref:`int<class_int>` from_node, :ref:`int<class_int>` from_port, :ref:`int<class_int>` to_node, :ref:`int<class_int>` to_port **)** |
  49. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  50. | :ref:`int<class_int>` | :ref:`get_function_node_id<class_VisualScript_method_get_function_node_id>` **(** :ref:`StringName<class_StringName>` name **)** |const| |
  51. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  52. | :ref:`VisualScriptNode<class_VisualScriptNode>` | :ref:`get_node<class_VisualScript_method_get_node>` **(** :ref:`int<class_int>` id **)** |const| |
  53. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  54. | :ref:`Vector2<class_Vector2>` | :ref:`get_node_position<class_VisualScript_method_get_node_position>` **(** :ref:`int<class_int>` id **)** |const| |
  55. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  56. | :ref:`Vector2<class_Vector2>` | :ref:`get_scroll<class_VisualScript_method_get_scroll>` **(** **)** |const| |
  57. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  58. | :ref:`Variant<class_Variant>` | :ref:`get_variable_default_value<class_VisualScript_method_get_variable_default_value>` **(** :ref:`StringName<class_StringName>` name **)** |const| |
  59. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  60. | :ref:`bool<class_bool>` | :ref:`get_variable_export<class_VisualScript_method_get_variable_export>` **(** :ref:`StringName<class_StringName>` name **)** |const| |
  61. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  62. | :ref:`Dictionary<class_Dictionary>` | :ref:`get_variable_info<class_VisualScript_method_get_variable_info>` **(** :ref:`StringName<class_StringName>` name **)** |const| |
  63. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  64. | :ref:`bool<class_bool>` | :ref:`has_custom_signal<class_VisualScript_method_has_custom_signal>` **(** :ref:`StringName<class_StringName>` name **)** |const| |
  65. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  66. | :ref:`bool<class_bool>` | :ref:`has_data_connection<class_VisualScript_method_has_data_connection>` **(** :ref:`int<class_int>` from_node, :ref:`int<class_int>` from_port, :ref:`int<class_int>` to_node, :ref:`int<class_int>` to_port **)** |const| |
  67. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  68. | :ref:`bool<class_bool>` | :ref:`has_function<class_VisualScript_method_has_function>` **(** :ref:`StringName<class_StringName>` name **)** |const| |
  69. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  70. | :ref:`bool<class_bool>` | :ref:`has_node<class_VisualScript_method_has_node>` **(** :ref:`int<class_int>` id **)** |const| |
  71. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  72. | :ref:`bool<class_bool>` | :ref:`has_sequence_connection<class_VisualScript_method_has_sequence_connection>` **(** :ref:`int<class_int>` from_node, :ref:`int<class_int>` from_output, :ref:`int<class_int>` to_node **)** |const| |
  73. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  74. | :ref:`bool<class_bool>` | :ref:`has_variable<class_VisualScript_method_has_variable>` **(** :ref:`StringName<class_StringName>` name **)** |const| |
  75. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  76. | void | :ref:`remove_custom_signal<class_VisualScript_method_remove_custom_signal>` **(** :ref:`StringName<class_StringName>` name **)** |
  77. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  78. | void | :ref:`remove_function<class_VisualScript_method_remove_function>` **(** :ref:`StringName<class_StringName>` name **)** |
  79. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  80. | void | :ref:`remove_node<class_VisualScript_method_remove_node>` **(** :ref:`int<class_int>` id **)** |
  81. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  82. | void | :ref:`remove_variable<class_VisualScript_method_remove_variable>` **(** :ref:`StringName<class_StringName>` name **)** |
  83. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  84. | void | :ref:`rename_custom_signal<class_VisualScript_method_rename_custom_signal>` **(** :ref:`StringName<class_StringName>` name, :ref:`StringName<class_StringName>` new_name **)** |
  85. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  86. | void | :ref:`rename_function<class_VisualScript_method_rename_function>` **(** :ref:`StringName<class_StringName>` name, :ref:`StringName<class_StringName>` new_name **)** |
  87. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  88. | void | :ref:`rename_variable<class_VisualScript_method_rename_variable>` **(** :ref:`StringName<class_StringName>` name, :ref:`StringName<class_StringName>` new_name **)** |
  89. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  90. | void | :ref:`sequence_connect<class_VisualScript_method_sequence_connect>` **(** :ref:`int<class_int>` from_node, :ref:`int<class_int>` from_output, :ref:`int<class_int>` to_node **)** |
  91. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  92. | void | :ref:`sequence_disconnect<class_VisualScript_method_sequence_disconnect>` **(** :ref:`int<class_int>` from_node, :ref:`int<class_int>` from_output, :ref:`int<class_int>` to_node **)** |
  93. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  94. | void | :ref:`set_instance_base_type<class_VisualScript_method_set_instance_base_type>` **(** :ref:`StringName<class_StringName>` type **)** |
  95. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  96. | void | :ref:`set_node_position<class_VisualScript_method_set_node_position>` **(** :ref:`int<class_int>` id, :ref:`Vector2<class_Vector2>` position **)** |
  97. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  98. | void | :ref:`set_scroll<class_VisualScript_method_set_scroll>` **(** :ref:`Vector2<class_Vector2>` offset **)** |
  99. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  100. | void | :ref:`set_variable_default_value<class_VisualScript_method_set_variable_default_value>` **(** :ref:`StringName<class_StringName>` name, :ref:`Variant<class_Variant>` value **)** |
  101. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  102. | void | :ref:`set_variable_export<class_VisualScript_method_set_variable_export>` **(** :ref:`StringName<class_StringName>` name, :ref:`bool<class_bool>` enable **)** |
  103. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  104. | void | :ref:`set_variable_info<class_VisualScript_method_set_variable_info>` **(** :ref:`StringName<class_StringName>` name, :ref:`Dictionary<class_Dictionary>` value **)** |
  105. +-----------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  106. Signals
  107. -------
  108. .. _class_VisualScript_signal_node_ports_changed:
  109. - **node_ports_changed** **(** :ref:`int<class_int>` id **)**
  110. Emitted when the ports of a node are changed.
  111. Method Descriptions
  112. -------------------
  113. .. _class_VisualScript_method_add_custom_signal:
  114. - void **add_custom_signal** **(** :ref:`StringName<class_StringName>` name **)**
  115. Add a custom signal with the specified name to the VisualScript.
  116. ----
  117. .. _class_VisualScript_method_add_function:
  118. - void **add_function** **(** :ref:`StringName<class_StringName>` name, :ref:`int<class_int>` func_node_id **)**
  119. Add a function with the specified name to the VisualScript, and assign the root :ref:`VisualScriptFunction<class_VisualScriptFunction>` node's id as ``func_node_id``.
  120. ----
  121. .. _class_VisualScript_method_add_node:
  122. - void **add_node** **(** :ref:`int<class_int>` id, :ref:`VisualScriptNode<class_VisualScriptNode>` node, :ref:`Vector2<class_Vector2>` position=Vector2(0, 0) **)**
  123. Add a node to the VisualScript.
  124. ----
  125. .. _class_VisualScript_method_add_variable:
  126. - void **add_variable** **(** :ref:`StringName<class_StringName>` name, :ref:`Variant<class_Variant>` default_value=null, :ref:`bool<class_bool>` export=false **)**
  127. Add a variable to the VisualScript, optionally giving it a default value or marking it as exported.
  128. ----
  129. .. _class_VisualScript_method_custom_signal_add_argument:
  130. - void **custom_signal_add_argument** **(** :ref:`StringName<class_StringName>` name, :ref:`Variant.Type<enum_@GlobalScope_Variant.Type>` type, :ref:`String<class_String>` argname, :ref:`int<class_int>` index=-1 **)**
  131. Add an argument to a custom signal added with :ref:`add_custom_signal<class_VisualScript_method_add_custom_signal>`.
  132. ----
  133. .. _class_VisualScript_method_custom_signal_get_argument_count:
  134. - :ref:`int<class_int>` **custom_signal_get_argument_count** **(** :ref:`StringName<class_StringName>` name **)** |const|
  135. Get the count of a custom signal's arguments.
  136. ----
  137. .. _class_VisualScript_method_custom_signal_get_argument_name:
  138. - :ref:`String<class_String>` **custom_signal_get_argument_name** **(** :ref:`StringName<class_StringName>` name, :ref:`int<class_int>` argidx **)** |const|
  139. Get the name of a custom signal's argument.
  140. ----
  141. .. _class_VisualScript_method_custom_signal_get_argument_type:
  142. - :ref:`Variant.Type<enum_@GlobalScope_Variant.Type>` **custom_signal_get_argument_type** **(** :ref:`StringName<class_StringName>` name, :ref:`int<class_int>` argidx **)** |const|
  143. Get the type of a custom signal's argument.
  144. ----
  145. .. _class_VisualScript_method_custom_signal_remove_argument:
  146. - void **custom_signal_remove_argument** **(** :ref:`StringName<class_StringName>` name, :ref:`int<class_int>` argidx **)**
  147. Remove a specific custom signal's argument.
  148. ----
  149. .. _class_VisualScript_method_custom_signal_set_argument_name:
  150. - void **custom_signal_set_argument_name** **(** :ref:`StringName<class_StringName>` name, :ref:`int<class_int>` argidx, :ref:`String<class_String>` argname **)**
  151. Rename a custom signal's argument.
  152. ----
  153. .. _class_VisualScript_method_custom_signal_set_argument_type:
  154. - void **custom_signal_set_argument_type** **(** :ref:`StringName<class_StringName>` name, :ref:`int<class_int>` argidx, :ref:`Variant.Type<enum_@GlobalScope_Variant.Type>` type **)**
  155. Change the type of a custom signal's argument.
  156. ----
  157. .. _class_VisualScript_method_custom_signal_swap_argument:
  158. - void **custom_signal_swap_argument** **(** :ref:`StringName<class_StringName>` name, :ref:`int<class_int>` argidx, :ref:`int<class_int>` withidx **)**
  159. Swap two of the arguments of a custom signal.
  160. ----
  161. .. _class_VisualScript_method_data_connect:
  162. - void **data_connect** **(** :ref:`int<class_int>` from_node, :ref:`int<class_int>` from_port, :ref:`int<class_int>` to_node, :ref:`int<class_int>` to_port **)**
  163. Connect two data ports. The value of ``from_node``'s ``from_port`` would be fed into ``to_node``'s ``to_port``.
  164. ----
  165. .. _class_VisualScript_method_data_disconnect:
  166. - void **data_disconnect** **(** :ref:`int<class_int>` from_node, :ref:`int<class_int>` from_port, :ref:`int<class_int>` to_node, :ref:`int<class_int>` to_port **)**
  167. Disconnect two data ports previously connected with :ref:`data_connect<class_VisualScript_method_data_connect>`.
  168. ----
  169. .. _class_VisualScript_method_get_function_node_id:
  170. - :ref:`int<class_int>` **get_function_node_id** **(** :ref:`StringName<class_StringName>` name **)** |const|
  171. Returns the id of a function's entry point node.
  172. ----
  173. .. _class_VisualScript_method_get_node:
  174. - :ref:`VisualScriptNode<class_VisualScriptNode>` **get_node** **(** :ref:`int<class_int>` id **)** |const|
  175. Returns a node given its id.
  176. ----
  177. .. _class_VisualScript_method_get_node_position:
  178. - :ref:`Vector2<class_Vector2>` **get_node_position** **(** :ref:`int<class_int>` id **)** |const|
  179. Returns a node's position in pixels.
  180. ----
  181. .. _class_VisualScript_method_get_scroll:
  182. - :ref:`Vector2<class_Vector2>` **get_scroll** **(** **)** |const|
  183. Returns the current position of the center of the screen.
  184. ----
  185. .. _class_VisualScript_method_get_variable_default_value:
  186. - :ref:`Variant<class_Variant>` **get_variable_default_value** **(** :ref:`StringName<class_StringName>` name **)** |const|
  187. Returns the default (initial) value of a variable.
  188. ----
  189. .. _class_VisualScript_method_get_variable_export:
  190. - :ref:`bool<class_bool>` **get_variable_export** **(** :ref:`StringName<class_StringName>` name **)** |const|
  191. Returns whether a variable is exported.
  192. ----
  193. .. _class_VisualScript_method_get_variable_info:
  194. - :ref:`Dictionary<class_Dictionary>` **get_variable_info** **(** :ref:`StringName<class_StringName>` name **)** |const|
  195. Returns the information for a given variable as a dictionary. The information includes its name, type, hint and usage.
  196. ----
  197. .. _class_VisualScript_method_has_custom_signal:
  198. - :ref:`bool<class_bool>` **has_custom_signal** **(** :ref:`StringName<class_StringName>` name **)** |const|
  199. Returns whether a signal exists with the specified name.
  200. ----
  201. .. _class_VisualScript_method_has_data_connection:
  202. - :ref:`bool<class_bool>` **has_data_connection** **(** :ref:`int<class_int>` from_node, :ref:`int<class_int>` from_port, :ref:`int<class_int>` to_node, :ref:`int<class_int>` to_port **)** |const|
  203. Returns whether the specified data ports are connected.
  204. ----
  205. .. _class_VisualScript_method_has_function:
  206. - :ref:`bool<class_bool>` **has_function** **(** :ref:`StringName<class_StringName>` name **)** |const|
  207. Returns whether a function exists with the specified name.
  208. ----
  209. .. _class_VisualScript_method_has_node:
  210. - :ref:`bool<class_bool>` **has_node** **(** :ref:`int<class_int>` id **)** |const|
  211. Returns whether a node exists with the given id.
  212. ----
  213. .. _class_VisualScript_method_has_sequence_connection:
  214. - :ref:`bool<class_bool>` **has_sequence_connection** **(** :ref:`int<class_int>` from_node, :ref:`int<class_int>` from_output, :ref:`int<class_int>` to_node **)** |const|
  215. Returns whether the specified sequence ports are connected.
  216. ----
  217. .. _class_VisualScript_method_has_variable:
  218. - :ref:`bool<class_bool>` **has_variable** **(** :ref:`StringName<class_StringName>` name **)** |const|
  219. Returns whether a variable exists with the specified name.
  220. ----
  221. .. _class_VisualScript_method_remove_custom_signal:
  222. - void **remove_custom_signal** **(** :ref:`StringName<class_StringName>` name **)**
  223. Remove a custom signal with the given name.
  224. ----
  225. .. _class_VisualScript_method_remove_function:
  226. - void **remove_function** **(** :ref:`StringName<class_StringName>` name **)**
  227. Remove a specific function and its nodes from the script.
  228. ----
  229. .. _class_VisualScript_method_remove_node:
  230. - void **remove_node** **(** :ref:`int<class_int>` id **)**
  231. Remove the node with the specified id.
  232. ----
  233. .. _class_VisualScript_method_remove_variable:
  234. - void **remove_variable** **(** :ref:`StringName<class_StringName>` name **)**
  235. Remove a variable with the given name.
  236. ----
  237. .. _class_VisualScript_method_rename_custom_signal:
  238. - void **rename_custom_signal** **(** :ref:`StringName<class_StringName>` name, :ref:`StringName<class_StringName>` new_name **)**
  239. Change the name of a custom signal.
  240. ----
  241. .. _class_VisualScript_method_rename_function:
  242. - void **rename_function** **(** :ref:`StringName<class_StringName>` name, :ref:`StringName<class_StringName>` new_name **)**
  243. Change the name of a function.
  244. ----
  245. .. _class_VisualScript_method_rename_variable:
  246. - void **rename_variable** **(** :ref:`StringName<class_StringName>` name, :ref:`StringName<class_StringName>` new_name **)**
  247. Change the name of a variable.
  248. ----
  249. .. _class_VisualScript_method_sequence_connect:
  250. - void **sequence_connect** **(** :ref:`int<class_int>` from_node, :ref:`int<class_int>` from_output, :ref:`int<class_int>` to_node **)**
  251. Connect two sequence ports. The execution will flow from of ``from_node``'s ``from_output`` into ``to_node``.
  252. Unlike :ref:`data_connect<class_VisualScript_method_data_connect>`, there isn't a ``to_port``, since the target node can have only one sequence port.
  253. ----
  254. .. _class_VisualScript_method_sequence_disconnect:
  255. - void **sequence_disconnect** **(** :ref:`int<class_int>` from_node, :ref:`int<class_int>` from_output, :ref:`int<class_int>` to_node **)**
  256. Disconnect two sequence ports previously connected with :ref:`sequence_connect<class_VisualScript_method_sequence_connect>`.
  257. ----
  258. .. _class_VisualScript_method_set_instance_base_type:
  259. - void **set_instance_base_type** **(** :ref:`StringName<class_StringName>` type **)**
  260. Set the base type of the script.
  261. ----
  262. .. _class_VisualScript_method_set_node_position:
  263. - void **set_node_position** **(** :ref:`int<class_int>` id, :ref:`Vector2<class_Vector2>` position **)**
  264. Set the node position in the VisualScript graph.
  265. ----
  266. .. _class_VisualScript_method_set_scroll:
  267. - void **set_scroll** **(** :ref:`Vector2<class_Vector2>` offset **)**
  268. Set the screen center to the given position.
  269. ----
  270. .. _class_VisualScript_method_set_variable_default_value:
  271. - void **set_variable_default_value** **(** :ref:`StringName<class_StringName>` name, :ref:`Variant<class_Variant>` value **)**
  272. Change the default (initial) value of a variable.
  273. ----
  274. .. _class_VisualScript_method_set_variable_export:
  275. - void **set_variable_export** **(** :ref:`StringName<class_StringName>` name, :ref:`bool<class_bool>` enable **)**
  276. Change whether a variable is exported.
  277. ----
  278. .. _class_VisualScript_method_set_variable_info:
  279. - void **set_variable_info** **(** :ref:`StringName<class_StringName>` name, :ref:`Dictionary<class_Dictionary>` value **)**
  280. Set a variable's info, using the same format as :ref:`get_variable_info<class_VisualScript_method_get_variable_info>`.
  281. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  282. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  283. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  284. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  285. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  286. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`