*敵から攻撃を受けるごとにボディカラーを変化させる。
*スペースキーを押すとリセットされる。
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;
}
}
}
![]()
![]()
![]()
![]()
*スペースキーでリセット!
*スペースキーでリセット!
