首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >IEnumerator WaitForSeconds在加工过程中工作不正常

IEnumerator WaitForSeconds在加工过程中工作不正常
EN

Stack Overflow用户
提问于 2022-11-07 09:08:02
回答 1查看 49关注 0票数 0

我正在尝试启动一个触发动画的过程,然后等待10秒,进入另一个anim。

我有一个简单的IEnumerator,在两个anim阶段之间,并且在每个阶段之间有一个小的等待。

当我第一次运行脚本时,它确实等待10秒才开始(trapActivate),然后等待10秒才开始(trapInactivate),但是之后的动画只是一个接一个地播放,而没有等待它们应该在anim状态之间等待的10秒。

不知道会有什么问题。我查了很多有问题的人,因为他们在更新函数中启动了自己的程序,但我并不是这样做的,所以我不太确定还会是什么原因造成的。

我已经试过改变等待时间,不管他们在第一次等待之后有多长时间,他们都开始一个接一个地玩。

我能看到他们在动画师里互相跳跃

代码语言:javascript
运行
复制
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class AnimateEveryNTime : MonoBehaviour
{

private Animator animator;

public void Start() {
     StartCoroutine(playAnimation());
     Debug.Log("Couroutine");
     animator = GetComponent<Animator>();
}
 
public IEnumerator playAnimation() {
     yield return new WaitForSeconds(10f);
 
     // Insert your Play Animations here
     animator.SetTrigger("trapActivate");
     yield return new WaitForSeconds(10f);
     animator.SetTrigger("trapInactive");
 
}
}

这是我的动画师布局的图片:在这里输入图像描述

EN

回答 1

Stack Overflow用户

发布于 2022-11-08 04:23:24

您的图像显示了这两个参数的类型是Bool而不是触发器。有趣的是,SetTrigger还可以为Bool参数工作,并将其值设置为true。因此,您需要删除它们,并使用触发器和相同的名称创建新的参数。

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

https://stackoverflow.com/questions/74344148

复制
相关文章

相似问题

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