【发布时间】:2017-03-13 15:42:28
【问题描述】:
大家好,我在处理这段代码时遇到了问题。我已经研究了一段时间,似乎无法弄清楚。我做错了什么?(我只是在动画方面遇到了问题。)
#pragma strict
public var clip : AnimationClip;
public var riffle : Sprite;
public var pistol : Sprite;
function Start () {
}
function Anima(){
GetComponent.<Animation>().Play(GetComponent.<Animation>().clip.name);
}
function Update () {
if(Input.GetKeyDown("a")){
print("A");
GetComponent(SpriteRenderer).sprite = riffle;
}
if(Input.GetKeyDown("d")){
print("D");
GetComponent(SpriteRenderer).sprite = pistol;
}
if(Input.GetKeyDown("w")){
Anima();
}
if(Input.GetKeyDown("s")){
Anima();
}
}
【问题讨论】:
-
我在 anima() 函数内部的行上收到 NullReferenceException。我也不确定这意味着什么。
-
使用 CrossFade 它对我有用:docs.unity3d.com/ScriptReference/Animation.CrossFade.html
-
你确定
GetComponent.<Animation>()正在返回一些东西吗?
标签: unity3d unityscript