Godot GDScript调用get_script()提示参数过多错误如何解决?
报错触发原因
get_script()是GDScript内置的无参数实例方法,作用是返回调用该方法的节点当前挂载的脚本对象,本身不接受任何传入参数,你在调用时传入了资源路径字符串,自然触发参数数量不匹配的报错。- 如果你是想获取场景中其他已有节点挂载的脚本,正确写法是调用对应节点的
get_script()方法,无需传参:onready var coinscript = $CoinNode.get_script()
正确加载外部脚本的方案
如果你是要加载指定路径的独立GDScript资源,直接使用preload或load方法即可:
- 路径固定无需动态修改的场景推荐用
preload,预加载在脚本编译阶段完成,运行时性能更好:onready var coinscript = preload("res://path/script.gd") - 需要运行时动态拼接路径、动态确定加载资源的场景使用
load:onready var coinscript = load("res://path/script.gd")
- 后续如果需要给指定节点挂载该加载的脚本,可调用
target_node.set_script(coinscript)实现。
内容的提问来源于stack exchange,提问作者Tibbe
相关产品推荐
相关产品推荐

