Skip to content

Instantly share code, notes, and snippets.

@mrgarita
Last active Mar 27, 2020
Embed
What would you like to do?
Unity:Sliderを使ってボスキャラのHPバーを表現する
using UnityEngine;
using UnityEngine.UI; // Sliderを扱うために必要
public class HPbar : MonoBehaviour {
private const int maxHp = 100; // 敵キャラのHP最大値を100とする
private int currentHp; // 現在のHP
public Slider slider; // シーンに配置したSlider格納用
// Use this for initialization
void Start () {
slider.maxValue = maxHp; // Sliderの最大値を敵キャラのHP最大値と合わせる
currentHp = maxHp; // 初期状態はHP満タン
slider.value = currentHp; // Sliderの初期状態を設定(HP満タン)
}
// 当たり判定
private void OnCollisionEnter(Collision col)
{
if(col.gameObject.name == "Player") // プレイヤーとぶつかったとき
{
currentHp -= 10; // 現在のHPを減らす
slider.value = currentHp; // Sliderに現在HPを適用
Debug.Log("slider.value = " + slider.value);
// Sliderが最小値になったら(例:ボスキャラを倒したら)
if (slider.value <=0)
{
Destroy(gameObject); // 物体を消去
Destroy(GameObject.Find("Slider")); // Sliderも消去
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment