游戏的运作方式是,当玩家(一只猫)与一个泡泡碰撞时,它会进入泡泡并漂浮2秒,然后泡泡破灭,猫又回来了。我们试图通过销毁碰撞对象并将气泡精灵更改为不同的精灵,猫在气泡内,然后在两秒钟后重新实例化猫并销毁气泡来实现这一点。我们拥有的代码不起作用。我们如何解决这个问题?
private IEnumerator OnTriggerStay2D(Collider2D collision)
{
go = collision.gameObject;
if (collision.tag == "Floatable")
{
gameObject.GetComponent<SpriteRenderer>().sprite = catinbubble;
Destroy(go);
speed += 0.01f;
collision.transform.position = transform.position;
rb.velocity = transform.up * 5;
Destroy(gameObject, 2f);
yield return new WaitForSeconds(2f);
Instantiate(player, gameObject.transform);
}
else
{
Destroy(gameObject);
}
}