C# 尝试通过按下控制器按钮激活UNITY中的动画触发器,会在UNITY上显示多个错误,但在编译器上不会显示多个错误
我试图使用UNITY上的触发器参数进行动画切换,但即使调试器没有显示任何错误,UNITY也会显示错误列表,并且不允许我运行程序 错误列表: 我是如何配置动画师的: 输入: C#中的代码:C# 尝试通过按下控制器按钮激活UNITY中的动画触发器,会在UNITY上显示多个错误,但在编译器上不会显示多个错误,c#,unity3d,C#,Unity3d,我试图使用UNITY上的触发器参数进行动画切换,但即使调试器没有显示任何错误,UNITY也会显示错误列表,并且不允许我运行程序 错误列表: 我是如何配置动画师的: 输入: C#中的代码: 使用系统集合; 使用System.Collections.Generic; 使用UnityEngine; 使用UnityEngine.InputSystem; 公共类斯维奇:单一行为 { 公共动画; 公共玩家控制; 无效唤醒() { Anim=GetComponent开关是一个关键字,因此不能是类名。C#包
使用系统集合;
使用System.Collections.Generic;
使用UnityEngine;
使用UnityEngine.InputSystem;
公共类斯维奇:单一行为
{
公共动画;
公共玩家控制;
无效唤醒()
{
Anim=GetComponent开关是一个关键字,因此不能是类名。C#包含对编译器有特殊意义的保留字。这些保留字称为关键字。关键字不能用作标识符(变量名称、类、接口等)
尝试将其更改为开关
更改类名可以解决大多数错误,唯一幸存的错误是"找不到类型或命名空间“PlayerControl”。您可能缺少using指令或程序集引用。将光标悬停在PlayerControl
上,然后按show potential fixes。它不会在调试器中显示为错误,只是在unity UI中,不会出现任何潜在的修复。您需要共享新的错误,但是否生成了代码在游戏控制中?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.InputSystem;
public class SVITCH : MonoBehaviour
{
public Animator Anim;
public PlayerControls controls;
void Awake()
{
Anim = GetComponent<Animator>();
controls = new PlayerControls();
controls.Control.IdleSwitch.performed += ctx => Switcher();
}
void Switcher()
{
Anim.SetTrigger("sitch");
}
void OnEnable()
{
controls.Control.Enable();
}
void OnDisable()
{
controls.Control.Disable();
}
}