using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Enemy_Jump : MonoBehaviour {
Rigidbody2D rb;
[SerializeField]
private float jumpHeight;
[SerializeField]
private float jumpDelay;
// Use this for initialization
void Start() {
rb = GetComponent<Rigidbody2D>();
}
// Update is called once per frame
void Update() {
Jump();
}
void Jump(){
StartCoroutine ("Wait");
rb.AddForce (new Vector2 (0, jumpHeight));
}
IEnumerator Wait(){
yield return new WaitForSeconds (jumpDelay);
Debug.Log ("waiting");
yield return 0;
}
}
量我似乎有它不等待任何时间的问题。我还在waitForSeconds
函数中输入了一个数字,但它仍然不会延迟任何事情。我不知道任何其他方式,也没有找到任何其他方式通过在线搜索延迟功能。为什么惯于我的程序等待时间
的courotine不会影响您rb.AddForce线。一个courotine cand只延迟它里面的代码,而jump()不是从courotine调用的,而是从每一帧调用的更新 –