using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using DG.Tweening; using Sirenix.OdinInspector; /// /// 控制Boss血条UI /// public class BossHPBar : MonoBehaviour { private float HPLeft = -1f; public Enemy boss; private Image empty; private Text bossName; private Image self; void Start(){ self = GetComponent(); empty = transform.Find("血条(底").GetComponent(); bossName = transform.Find("Boos名").GetComponent(); if(boss.gameObject.name == "地藏") bossName.text = "地藏王菩萨"; if(boss.gameObject.name == "木马") bossName.text = "特洛伊木马"; if(boss.gameObject.name == "以撒雕像") bossName.text = "以撒"; } void Update(){ // //Debug.Log(boss.HPLeft + ", " + boss.HP); // //每帧检查,当UI剩余血量和玩家真实剩余血量不一致,触发重刷新UI功能 if(HPLeft != boss.HPLeft) RefrashUI(boss.HPLeft/boss.HP); HPLeft = boss.HPLeft; } /// /// boss进入攻击状态的时候调用,开始显示boss血条 /// public void OnShowUI(){ self.DOFade(1,1f); empty.DOFade(1,1f); bossName.DOFade(1,1f); } private void RefrashUI(float HPPrograss){ self.DOFillAmount(HPPrograss,2f); } }