(サンプルコード)
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class EnemyHP : MonoBehaviour
{
public GameObject effectPrefab1;
public GameObject effectPrefab2;
public int HP;
void Start()
{
StartCoroutine(HPRecovery());
}
void OnTriggerEnter(Collider other)
{
if (other.CompareTag("Omizu"))
{
HP -= 1;
if (HP > 0)
{
GameObject effect1 = Instantiate(effectPrefab1, transform.position, Quaternion.identity);
Destroy(effect1, 0.75f);
}
else
{
GameObject effect2 = Instantiate(effectPrefab2, transform.position, Quaternion.identity);
Destroy(effect2, 0.75f);
Destroy(gameObject);
}
}
}
// HPの自動回復
private IEnumerator HPRecovery()
{
while (true)
{
HP += 1;
// MAXHP以上には回復しない
if (HP > 5)
{
HP = 5;
}
// 3秒ごとに回復する。
yield return new WaitForSeconds(3);
}
}
}