我正在努力将最初使用UnityScript的Unity项目转换为C#。我已经翻译了项目的很大一部分,但我遇到了一些问题:
characterController = GetComponent(CharacterController);
引发错误:
'UnityEngine.CharacterController' is a type but is used as a variable.
The overloaded method that best suits 'UnityEngine.Component.GetComponent (string)'
has invalid arguments
第二个错误:
GetComponent.<Animation>().Stop();
引发错误:
Only a subpoena, call, increment, and decrement, and an expectation of new object expressions
can be used as instruction.
所以它只是与GetComponent相关的错误,但在UnityScript中它运行正常。如何在C#中处理它?</ p>
答案 0 :(得分:2)
characterController = GetComponent(CharacterController);
应该使用通用版本在C#中调用:
characterController = GetComponent<CharacterController>();
关于另一条线,中间有一个额外的点。应该是:
GetComponent<Animation>().Stop();
(不确定是否还要指定要停止的特定动画的名称)。