如何让物体在消失前稍等片刻?

问题描述 投票:0回答:3

我是编码的初学者,当玩家通过一个物体消失时我做了,但在我的情况下,物体必须等待一段时间才能消失。我在下面展示了我的代码,如果你能给我一些修改代码的想法。谢谢

private void OnTriggerEnter2D(Collider2D other)

if (other.gameObject.CompareTag("Circle"))
 
Destroy(other.gameObject);
c# unity3d
3个回答
0
投票

文档中,您可以看到

Destroy
有一个可选的第二个参数,用于在销毁实际发生之前传递延迟。

所以在你的情况下,例如

Destroy(other.gameObject, 1f);
会在 1 秒后摧毁它。


0
投票

您可以使用协程,它非常简单 这是一个使用您提供的代码的示例

IEnumerator wait()
{
yield return new WaitForSeconds(sec);
Destroy(other.gameObject);
}

private void OnTriggerEnter2D(Collider2D other)

if (other.gameObject.CompareTag("Circle"))
 StartCorutine(waiter);

-2
投票

只需在

Destroy

之前放一个制表符或空格
© www.soinside.com 2019 - 2024. All rights reserved.