我正在学习如何在 Unity 中使用动画参数(我来自 Flash AS3 背景)。正如您在下面看到的,我的目标是让我的 GameObject
的动画处于 jump
状态。我已将创建的动画参数 Boo
设置为 false,我的目的是在 Unityscript 代码中将其更改为 true。 GameObject
的动画 Controller 的名称就是 controller
。
但是控制台告诉我他们正在等待分号!正如您所看到的,我的脚本中不缺少分号。这里有什么问题?如果您发现任何其他信息可能有助于解决此问题,我很乐意发布。
最佳答案
在第 3 行和第 4 行,您尝试导入 C#
中的库。风格,不是Javascript
风格。
所以,而不是 using
你应该使用import
:
import UnityEngine;
import System.Collections;
... etc.
错误就会消失。但警告将会出现))为什么?
By default using UnityEngine(c#) or import UnityEngine(unityscript) and System.Collection.Generic are automatically added to the top of the script but you don't see it.
因此您可以删除此导入,否则它会给您:BCW0008: WARNING: Duplicate namespace: 'UnityEngine'
和BCW0008: WARNING: Duplicate namespace: 'System.Collections'
.
还有Unity3d
没有Controller
成分。但它有Animator
组件http://docs.unity3d.com/ScriptReference/Animator.html
在您的情况下,最少的代码将是:
function Start () {
GetComponent(Animator).SetBool("Boo", true); //(GetComponent("Animator") as Animator).SetBool("Boo", true);
}
但是为了全局使用该组件,您应该声明变量 animator,类型为 Animator
。然后你就可以在文件中的任何地方使用它。
示例(javascript tstyle):
#pragma strict
var anim : Animator;
function Start() {
anim = GetComponent(Animator); // GetComponent("Animator");
}
function Update() {
if (Input.GetKeyDown(KeyCode.Space))
anim.SetBool("Boo", true);
}
查看更多示例,请点击this link
关于javascript - Unityscript动画参数UCE0001 : ';' expected,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36522724/