我需要这个IEnumerator每次都能工作,而不仅仅是一次。每次foi都是真的,就需要走。
我尝试使用Time.deltaTime,但是没有用...
我的角色需要按j才能使图块下来,就像桥一样。然后,在5秒钟之后,该桥需要上升,但只有在保持5秒钟之后才可以上升。
// Update is called once per frame
void Update()
{
OnTriggerStay2D();
StartCoroutine(mover2());
}
void OnTriggerStay2D()
{
if (Input.GetKeyDown("j") && (colide2))
{
mover();
foi = true;
}
}
void OnTriggerEnter2D(Collider2D colisor)
{
colide2 = true;
Debug.Log("Inside2");
}
void OnTriggerExit2D(Collider2D colisor)
{
colide2 = false;
Debug.Log("Outside2");
}
void mover()
{
chao.Translate(0,-2.5f,0 * velocity * Time.deltaTime);
}
IEnumerator mover2()
{
yield return new WaitForSeconds(5);
if (foi == true)
{
floor.Translate(0, 2.5f, 0 * velocity * Time.deltaTime);
foi = false;
}
}