我想制作可以消失一段时间的游戏对象。我写了这段代码,但是根本不起作用。
这是我的代码:
public class Fire : MonoBehaviour
{
[SerializeField] int decreaseHealth;
[SerializeField] GameObject handlerObject;
GameHandler handler;
void Start()
{
decreaseHealth = 10;
handler = handlerObject.getcomponent<GameHandler>();
}
void OnTriggerEnter2D(Collider2D col)
{
if (col.gameObject.tag == "Player")
{
StartCoroutine(ShowAndHide(this.gameObject,2.0f)); // 2 second
// Decrease Health
handler.decreaseHealth(decreaseHealth);
}
}
IEnumerator ShowAndHide(GameObject go,float delay)
{
go.Setactive(true);
yield return new WaitForSeconds(delay);
go.Setactive(false);
}
}
有人可以帮我弄清楚吗?