我的游戏中有一个蜘蛛玻璃容器周围的触发区,并希望当玩家走进触发器时触发蜘蛛的动画,这是我的尝试,但它返回错误&#34 ;名称' col'在当前上下文中不存在"。提前谢谢!
public class Spider: MonoBehaviour
{
Animator anim;
private void Start()
{
anim = GetComponent<Animator>();
}
private void OnCollisionEnter(Collision collision)
{
if (col.gameObject.tag == "Player")
{
anim.SetTrigger("spider");
}
}
}
答案 0 :(得分:2)
当前上下文中不存在名称“col”
此错误消息已经解释了问题:代码中没有名为col
的变量。正确的名称是collision
,如方法参数中所定义。
private void OnCollisionEnter(Collision collision)
{
if (col.gameObject.tag == "Player")
{
anim.SetTrigger("spider");
}
}
应该是
private void OnCollisionEnter(Collision collision)
{
if (collision.gameObject.tag == "Player")
{
anim.SetTrigger("spider");
}
}
答案 1 :(得分:2)
在您的代码中,碰撞对象的名称为collision
,因此在检查变量时需要使用该名称:
private void OnCollisionEnter(Collision collision)
{
if (collision.gameObject.tag == "Player")
{
anim.SetTrigger("spider");
}
}