首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >单元动画-输出返回新的WaitForSeconds(secs)不工作

单元动画-输出返回新的WaitForSeconds(secs)不工作
EN

Stack Overflow用户
提问于 2016-11-11 17:04:40
回答 1查看 677关注 0票数 0

当我使用这段代码时,为什么动画不能在Unity中播放?我怎么能让程序等待动画的结束?在JavaScript (或UnityScript)中,这种方法起了作用。

代码语言:javascript
复制
public bool Attacking { get; set; }
private Animator anim;

void Start() 
{
    anim = gameObject.GetComponent<Animator>();
}

private IEnumerator Attack()
{
    Attacking = true;

    anim.SetTrigger("Attack"); // this is not playing

    yield return new WaitForSeconds(attackLength);

    Attacking = false;
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-11-11 17:10:35

这就是你如何运行Coroutine的方法:

代码语言:javascript
复制
StartCoroutine(Attack());

代码语言:javascript
复制
StartCoroutine("Attack");

如果你试着像普通的函数一样运行它,它就不能工作了。

以下是解决方案:

代码语言:javascript
复制
public void PlayAttack() 
{
    StartCoroutine(Attack());
}

了解更多

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40552858

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档