这是我正在使用的代码,我正试图在碰撞的东西里面添加等待,有人知道该怎么看或解决方案吗?我试着研究协程,并使用bool值来尝试这样做,但我无法弄清楚任何帮助或建议是感激的!
using UnityEngine;
using System.Collections;
public class SwordDetection : MonoBehaviour
{
void OnCollisionEnter(Collision collision)
{
if (collision.gameObject.tag == "Enemy")
{
collision.rigidbody.constraints = RigidbodyConstraints.None;
}
}
}
你可以在OnCollisionEnter()中调用协程来创建延迟。
一些示例代码:
private void OnCollisionEnter(Collision collision) {
StartCoroutine(DelayedAction());
// coroutines must be called from StartCoroutine()
}
private IEnumerator DelayedAction() {
yield return new WaitForSeconds(5);
print("I was printed after a delay of 5 seconds!");
}
我不确定这是否是您想要的,但您可以使用:
OnCollisionStay(Collision collision) { }