*敵から攻撃を受けるごとにボディカラーを変化させる。
*スペースキーを押すとリセットされる。
using System.Collections; using System.Collections.Generic; using UnityEngine; public class PlayerHealth : MonoBehaviour { // 怒りポイントの定義 private int angerPoint; private void OnTriggerEnter(Collider other) { if (other.CompareTag("EnemyShell")) { Destroy(other.gameObject); // 敵の攻撃を受けるたびに怒りポイントが1ずつ溜まる。 angerPoint += 1; // 怒りポイントに上限を設定 if(angerPoint > 5) { angerPoint = 5; } } } void Update() { // 怒りポイントが溜まるごとにプレーヤーのボディカラーが変化する。 switch (angerPoint) { case 2: this.gameObject.GetComponent<MeshRenderer>().material.color = Color.blue; break; case 3: this.gameObject.GetComponent<MeshRenderer>().material.color = Color.green; break; case 4: this.gameObject.GetComponent<MeshRenderer>().material.color = Color.yellow; break; case 5: this.gameObject.GetComponent<MeshRenderer>().material.color = Color.red; break; } // 怒りポイントのリセット if(Input.GetKeyDown(KeyCode.Space)) { angerPoint = 0; this.gameObject.GetComponent<MeshRenderer>().material.color = Color.white; } } }
*スペースキーでリセット!