VisualScript

Inherits: Script < Resource < Reference < Object

一个在可视化脚本编程环境中实现的脚本。

描述

在 Visual Script 编程环境中实现的脚本。该脚本扩展了所有实例化它的对象的功能。

Object.set_script 扩展现有对象,如果该对象的类与脚本的基类之一匹配。

您最有可能通过 Visual Script 编辑器或在为其编写插件时使用此类。

教程

  • ../getting_started/scripting/visual_script/index

方法

void

add_custom_signal ( String name )

void

add_function ( String name )

void

add_node ( String func, int id, VisualScriptNode node, Vector2 position=Vector2( 0, 0 ) )

void

add_variable ( String name, Variant default_value=null, bool export=false )

void

custom_signal_add_argument ( String name, Variant.Type type, String argname, int index=-1 )

int

custom_signal_get_argument_count ( String name ) const

String

custom_signal_get_argument_name ( String name, int argidx ) const

Variant.Type

custom_signal_get_argument_type ( String name, int argidx ) const

void

custom_signal_remove_argument ( String name, int argidx )

void

custom_signal_set_argument_name ( String name, int argidx, String argname )

void

custom_signal_set_argument_type ( String name, int argidx, Variant.Type type )

void

custom_signal_swap_argument ( String name, int argidx, int withidx )

void

data_connect ( String func, int from_node, int from_port, int to_node, int to_port )

void

data_disconnect ( String func, int from_node, int from_port, int to_node, int to_port )

int

get_function_node_id ( String name ) const

Vector2

get_function_scroll ( String name ) const

VisualScriptNode

get_node ( String func, int id ) const

Vector2

get_node_position ( String func, int id ) const

Variant

get_variable_default_value ( String name ) const

bool

get_variable_export ( String name ) const

Dictionary

get_variable_info ( String name ) const

bool

has_custom_signal ( String name ) const

bool

has_data_connection ( String func, int from_node, int from_port, int to_node, int to_port ) const

bool

has_function ( String name ) const

bool

has_node ( String func, int id ) const

bool

has_sequence_connection ( String func, int from_node, int from_output, int to_node ) const

bool

has_variable ( String name ) const

void

remove_custom_signal ( String name )

void

remove_function ( String name )

void

remove_node ( String func, int id )

void

remove_variable ( String name )

void

rename_custom_signal ( String name, String new_name )

void

rename_function ( String name, String new_name )

void

rename_variable ( String name, String new_name )

void

sequence_connect ( String func, int from_node, int from_output, int to_node )

void

sequence_disconnect ( String func, int from_node, int from_output, int to_node )

void

set_function_scroll ( String name, Vector2 ofs )

void

set_instance_base_type ( String type )

void

set_node_position ( String func, int id, Vector2 position )

void

set_variable_default_value ( String name, Variant value )

void

set_variable_export ( String name, bool enable )

void

set_variable_info ( String name, Dictionary value )

信号

  • node_ports_changed ( String function, int id )

当节点端口更改时触发。

方法说明

  • void add_custom_signal ( String name )

在可视化脚本中添加指定名称的自定义信号。


  • void add_function ( String name )

在可视化脚本中添加指定名称的函数。


向可视化脚本的函数添加节点。


在可视化脚本中添加一个变量,可选择给它一个默认值或将其标记为导出。


为用add_custom_signal添加的自定义信号添加一个参数。


  • int custom_signal_get_argument_count ( String name ) const

获取自定义信号的参数计数。


获取自定义信号的参数名称。


获取自定义信号的参数类型。


  • void custom_signal_remove_argument ( String name, int argidx )

删除特定的自定义信号的参数。


  • void custom_signal_set_argument_name ( String name, int argidx, String argname )

重命名自定义信号的参数。


更改自定义信号的参数类型。


  • void custom_signal_swap_argument ( String name, int argidx, int withidx )

调换自定义信号的两个参数。


  • void data_connect ( String func, int from_node, int from_port, int to_node, int to_port )

连接两个数据端口。from_nodefrom_port的值将被输入to_nodeto_port


  • void data_disconnect ( String func, int from_node, int from_port, int to_node, int to_port )

断开之前用data_connect连接的两个数据端口。


  • int get_function_node_id ( String name ) const

返回函数入口点节点的ID。


返回给定函数的屏幕中心的位置。


返回一个节点,指定它的id和它的函数。


返回节点的坐标,单位是像素。


返回变量的初始默认值。


返回是否导出变量。


以字典的形式返回指定变量的信息。这些信息包括它的名称、类型、提示和用法。


返回是否存在具有指定名称的信号。


返回指定的数据端口是否已连接。


返回是否存在带有指定名称的函数。


返回是否存在带有给定 ID 的节点。


  • bool has_sequence_connection ( String func, int from_node, int from_output, int to_node ) const

返回指定的序列端口是否已连接。


返回是否存在带有指定名称的变量。


  • void remove_custom_signal ( String name )

删除带有给定名称的自定义信号。


  • void remove_function ( String name )

从脚本中删除特定函数及其节点。


删除特定节点。


  • void remove_variable ( String name )

删除具有给定名称的变量。


更改自定义信号的名称。


更改函数的名称。


更改变量的名称。


  • void sequence_connect ( String func, int from_node, int from_output, int to_node )

连接两个序列端口。执行将从from_nodefrom_output输入to_node

data_connect不同,没有to_port,因为目标节点只能有一个序列端口。


  • void sequence_disconnect ( String func, int from_node, int from_output, int to_node )

断开之前用sequence_connect连接的两个序列端口。


为功能定位屏幕中心。


  • void set_instance_base_type ( String type )

设置脚本的基类。


在屏幕上定位一个节点。


更改变量的初始默认值。


  • void set_variable_export ( String name, bool enable )

更改是否导出变量。


设置变量的信息,使用与 get_variable_info 相同的格式。