【发布时间】:2018-09-19 17:34:38
【问题描述】:
我试图使用尽可能少的脚本,所以我用buttonScript 预制件从Spawner 和spawnerScript 实例化(例如:)Button。在点击Button(在buttonScript 中检测到)时,我希望在spawnerScript 中调用一个特定的函数——但没有Spawner 或spawnerScript 由用户在buttonScript 中定义。它们可以注入到这个脚本中,但不能在脚本中输入或在 Unity 的编辑器中定义。我该怎么做?
tl;dr - 如何在其他脚本中调用函数而不在 GetComponent 中手动输入脚本名称?为 GetComponent 注入目标脚本是我正在寻找的。p>
【问题讨论】:
-
这样的?
gameObject.GetComponent("YourScriptAsString") as YourScriptType; -
如果我理解正确,那么只需使用 GetComponent 获取脚本句柄并将其设置为变量即可。然后在以后的代码行中使用该变量。
-
@Programmer 没错,除了“YourScriptType”应该代表什么?
-
脚本或类的名称。例如
public class Hello : MonoBehavior {}。在这种情况下Hello -
@Programmer 当然,但我没有在 buttonScript 中定义这个。我如何将这个“你好”传递给它?