试图从 public 游戏对象中的脚本获取变量,错误 CS1061
Trying to get a variable form a script in public gameobject, error CS1061
我正在尝试从对象“Wheel1”中的脚本“WheelHandler”获取变量“isOffRoad”。
我收到错误:
Assets\Scripts\CarControler.cs(53,13):错误 CS1061:'GameObject' 不包含 'WheelHandler' 的定义并且没有可访问的扩展方法 'WheelHandler' 接受第一个可以找到 'GameObject' 类型的参数(您是否缺少 using 指令或程序集引用?)
提前致谢。
编辑:isOffRoad 是 public。
public GameObject Wheel1;
void Update()
{
if(Wheel1.WheelHandler.isOffRoad == true)
{
Debug.Log("offroad");
}
}
您需要使用 GetComponent<>()
方法访问您的组件。
你的情况是 Wheel1.GetComponent<WheelHandler>().isOffRoad
另外不建议在更新循环中访问组件。最好缓存在一个字段里
试试这个:
if (Wheel1.GetComponent<WheelHandler>().isOffRoad))
{
// do something..
}
我正在尝试从对象“Wheel1”中的脚本“WheelHandler”获取变量“isOffRoad”。 我收到错误:
Assets\Scripts\CarControler.cs(53,13):错误 CS1061:'GameObject' 不包含 'WheelHandler' 的定义并且没有可访问的扩展方法 'WheelHandler' 接受第一个可以找到 'GameObject' 类型的参数(您是否缺少 using 指令或程序集引用?)
提前致谢。
编辑:isOffRoad 是 public。
public GameObject Wheel1;
void Update()
{
if(Wheel1.WheelHandler.isOffRoad == true)
{
Debug.Log("offroad");
}
}
您需要使用 GetComponent<>()
方法访问您的组件。
你的情况是 Wheel1.GetComponent<WheelHandler>().isOffRoad
另外不建议在更新循环中访问组件。最好缓存在一个字段里
试试这个:
if (Wheel1.GetComponent<WheelHandler>().isOffRoad))
{
// do something..
}