/// <summary> /// 改变生命值 /// </summary> /// <param name="value"></param> /// <returns></returns> public float ChangeLife(float value) { if (_childItem != null) { _childItem.DOKill(); _childItem.MyImage.color = MyImage.color; _childItem.MyRect.sizeDelta = MyRect.sizeDelta; _childItem.MyImage.DOFade(0, 0.5f).OnComplete(() => { _childItem.ChangeLife(value); }); } MyRect.sizeDelta += Vector2.right * value; return(GetOutOfRange()); }
/// <summary> /// 改变生命值, /// </summary> /// <param name="value"></param> public void ChangeLife(float value) { float width = _curBar.ChangeLife(value * _unitLifeScale); curLifeValue += value; if (width < 0 && ChangeIndex(1)) { ExChangeBar(); _curBar.transform.SetAsLastSibling(); _nextBar.ResetToWidth(); SetBarData(_currentIndex, _barDatas); ChangeLife(width / _unitLifeScale); } else if (width > 0 && ChangeIndex(-1)) { ExChangeBar(); _curBar.transform.SetAsLastSibling(); _curBar.ResetToZero(); SetBarData(_currentIndex, _barDatas); ChangeLife(width / _unitLifeScale); } }