我试图从一个脚本调用一个函数到另一个脚本,但我得到:
访问非静态成员FireBlock.FireOn()需要对象引用
具有我要调用的功能的脚本是FireBlock,其中包含该脚本,该脚本附加到与游戏对象连接的盒子对撞机上。
using UnityEngine;
using System.Collections;
public class FireBlock : MonoBehaviour {
public void FireOn ()
{
collider.enabled=false;
}
这就是我试图在其他脚本中调用它的方式。
void Update ()
{
FireBlock.FireOn ();
}
有什么想法我要去哪里吗?我尝试过将FireOn函数设为public static,只是无效但没有任何作用。
最佳答案
您需要创建FireBlock
的实例,然后使用该实例调用该方法。
FireBlock fireBlock = new FireBlock();
fireBlock.FireOn();
由于
FireOn
是实例方法,因此不能使用类名来调用它。您只能对static
方法执行此操作。