c# - 从附加到多个游戏对象的一个脚本中调用函数
问题描述
我有一个附加到多个游戏对象的脚本。我有另一个脚本,我从中调用第一个脚本的函数。问题是该函数没有被调用。我认为它无法找到附加在多个游戏对象中的脚本。
脚本_1
public void CallMyFunction(){
Debug.Log("CALL");
}
脚本_2
void CallingScripts()
{
foreach(var scr in GetComponentsInChildren<Script_1>()) {
scr .CallMyFunction();
}
}
我该如何解决这个问题?
解决方案
我创建了一个数组,然后在该数组中添加了所有脚本实例。之后我就可以调用它了。
private Script_1[] scr;
void Start()
{
scr= FindObjectsOfType<Script_1>();
foreach (Script_1 scrs in scr)
{
scrs.CallMyFunction();
}
}
推荐阅读
- .net-core - Html.raw(),不编译从 jQuery 返回的代码
- jupyter-notebook - 如何在 jupyter lab 上使用异步小部件?
- excel - 返回所有值与Excel中的目标匹配的连续范围的最有效方法?
- atom-editor - 擦除风筝日志(Atom 插件)是否安全?
- angular - 带有primeng OverlayComponent的角度变化检测ngFor
- react-native - 不要灰显 React Native Elements 中的 Disabled Input
- jquery - https://login.microsoftonline.com & jQuery
- java - 提高到3的倍数
- python - 用于二进制分类而不是训练的胶囊网络
- perl - 有人可以解释这个混淆的 perl 正则表达式脚本吗?