| | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using Cysharp.Threading.Tasks; |
| | | using System.Collections.Generic; |
| | | using LitJson; |
| | | using UnityEngine; |
| | | using UnityEngine.UI; |
| | |
| | | [SerializeField] RectTransform rectBoxEnd; |
| | | [SerializeField] UIEffectPlayer uiEffectPlayer; |
| | | |
| | | public static Action<ulong> TianziDamageBarEndDataAction; |
| | | |
| | | protected override void OnPreOpen() |
| | | { |
| | |
| | | tianziDamageBar.StageUp += OnStageUp; |
| | | tianziDamageBar.ValueChangeAction += OnValueChangeAction; |
| | | tianziDamageBar.ChangeEndAction += OnChangeEndAction; |
| | | //tianziDamageBar.IsLastHitUnLockEvent += OnIsLastHitUnLockEvent; |
| | | TianziDamageBarEndDataAction += OnTianziDamageBarEndData; |
| | | TianziBillboradManager.Instance.OnUpdateBarInfoEvent += OnUpdateBarInfoEvent; |
| | | MainWin.TabChangeEvent += OnTabChangeEvent; |
| | | EventBroadcast.Instance.AddListener<string, JsonData>(EventName.BATTLE_END, OnSettlement); |
| | | EventBroadcast.Instance.AddListener<HB419_tagSCObjHPRefresh>(EventName.BATTLE_TIANZI_REFRESH_HP, OnUpdateHpNum); |
| | | bool isOpenBattleChangeTab = IsOpenBattleChangeTab(); |
| | | transButtons.localPosition = new Vector3(0, isOpenBattleChangeTab ? 130 : 0, 0); |
| | | if (isOpenBattleChangeTab) |
| | |
| | | base.OnPreClose(); |
| | | tianziDamageBar.StageUp -= OnStageUp; |
| | | tianziDamageBar.ValueChangeAction -= OnValueChangeAction; |
| | | tianziDamageBar.ChangeEndAction += OnChangeEndAction; |
| | | //tianziDamageBar.IsLastHitUnLockEvent += OnIsLastHitUnLockEvent; |
| | | TianziDamageBarEndDataAction -= OnTianziDamageBarEndData; |
| | | tianziDamageBar.ChangeEndAction -= OnChangeEndAction; |
| | | TianziBillboradManager.Instance.OnUpdateBarInfoEvent -= OnUpdateBarInfoEvent; |
| | | MainWin.TabChangeEvent -= OnTabChangeEvent; |
| | | EventBroadcast.Instance.RemoveListener<string, JsonData>(EventName.BATTLE_END, OnSettlement); |
| | | EventBroadcast.Instance.RemoveListener<HB419_tagSCObjHPRefresh>(EventName.BATTLE_TIANZI_REFRESH_HP, OnUpdateHpNum); |
| | | bool isOpenBattleChangeTab = IsOpenBattleChangeTab(); |
| | | if (isOpenBattleChangeTab) |
| | | { |
| | |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | private void OnTianziDamageBarEndData(ulong obj) |
| | | private void OnUpdateBarInfoEvent(ulong loaclNowHunt, ulong loaclMaxHp, int loaclHpNum) |
| | | { |
| | | tianziDamageBar.Show(obj); |
| | | tianziDamageBar.Show(loaclNowHunt, loaclMaxHp, loaclHpNum); |
| | | } |
| | | |
| | | |
| | | |
| | | private void OnStageUp(int stage) |
| | | { |
| | |
| | | |
| | | DisplaySkillWordsList(lineupConfig); |
| | | |
| | | hpB419 = 0; |
| | | maxHpB419 = 0; |
| | | |
| | | tianziDamageBar.Init(); |
| | | |
| | | if (null != bossBattleObject) |
| | |
| | | RefreshBuff(buffList); |
| | | } |
| | | |
| | | private void OnSettlement(string _guid, JsonData data) |
| | | { |
| | | if (string.Empty == _guid) |
| | | return; |
| | | var battle = BattleManager.Instance.GetBattleField(_guid); |
| | | if (battle == null) |
| | | return; |
| | | var battleName = battle.ToString(); |
| | | if (battleName != "TianziBillboradBattleField") |
| | | return; |
| | | |
| | | if (data != null && data.ContainsKey("totalHurt")) |
| | | { |
| | | ulong totalHurt = ulong.Parse(data["totalHurt"].ToString()); |
| | | tianziDamageBar.Show(totalHurt); |
| | | } |
| | | } |
| | | |
| | | private void OnIsLastHitUnLockEvent() |
| | | { |
| | | if (bossBattleObject == null) |
| | | return; |
| | | |
| | | bossBattleObject.teamHero.curHp = (long)hpB419; |
| | | bossBattleObject.teamHero.maxHp = (long)maxHpB419; |
| | | Debug.Log($"TianziDamageBar OnIsLastHitUnLockEvent hpB419 {hpB419} maxHpB419 {maxHpB419}"); |
| | | } |
| | | |
| | | ulong hpB419; |
| | | ulong maxHpB419; |
| | | private void OnUpdateHpNum(HB419_tagSCObjHPRefresh info) |
| | | { |
| | | if (bossBattleObject == null || info.ObjID != bossBattleObject.ObjID) |
| | | return; |
| | | ulong curHp = (ulong)GeneralDefine.GetFactValue(info.HP, info.HPEx); |
| | | ulong maxHp = (ulong)GeneralDefine.GetFactValue(info.MaxHP, info.MaxHPEx); |
| | | hpB419 = curHp; |
| | | maxHpB419 = maxHp; |
| | | //tianziDamageBar.ShowByB419(curHp, maxHp); |
| | | } |
| | | |
| | | protected override void OnDamageTaken(BattleDmgInfo info) |
| | | { |
| | | base.OnDamageTaken(info); |
| | | |
| | | if (info == null || battleField == null || info.battleFieldGuid != battleField.guid) |
| | | return; |
| | | |
| | | if (bossBattleObject != null && info.hurtObj.ObjID == bossBattleObject.ObjID) |
| | | { |
| | | |
| | | TeamHero teamHero = bossBattleObject.teamHero; |
| | | tianziDamageBar.Show(info); |
| | | //tianziDamageBar.Show((ulong)teamHero.curHp, (ulong)teamHero.maxHp, info); |
| | | } |
| | | |
| | | } |
| | | |
| | | private void OnValueChangeAction(float nowValue, int CurrentStage) |
| | | { |