将 Unity 脚本附加到游戏对象时出错

Kam*_*ely 6 unity-game-engine

当我尝试将脚本附加到游戏对象时出现错误。

“EnemyBehaviour”缺少类属性“ExtensionOfNativeClass”!

还有一次,我得到:

无法添加脚本行为 CallbackExecutor。脚本需要从 Monobehaviour 派生!

我已经确定我的类来自 MonoBehaviour。

小智 6

就我而言,此错误是由对旧版本类的引用引起的,该类用于从 MonoBehaviour 派生(在当前版本中,它不是)。我所要做的就是将其从场景中的游戏对象中删除。


Kam*_*ely 5

为了解决您的问题:

  1. 修复此脚本和所有其他脚本的所有编译器错误。其他脚本中的编译错误可能会导致 Unity 编辑器无法分析您当前的脚本。转到 Visual Studio 中的代码并 构建整个解决方案。返回 Unity 编辑器之前修复所有编译器错误。

  2. 确保脚本中的类继承自 MonoBehaviour。这是显而易见的,但令人惊讶的是,有时,即使您的类继承自 MonoBehaviour,您仍然会收到此消息!如果是这样,您应该修复其他脚本中的所有编译器错误(阅读项目 #1)。

  3. 确保类名与脚本名完全相同 (甚至大小写相同)。

我通过修复不同脚本(第 1 项)中的编译器错误并修复脚本文件名(第 3 项)中的拼写错误来解决我的问题。