using System.Collections.Generic;
|
using Cysharp.Threading.Tasks;
|
using LitJson;
|
using UnityEngine;
|
using UnityEngine.UI;
|
|
public class QYBattleFailWin : UIBase
|
{
|
[SerializeField] AvatarCell myAvatarCell;
|
[SerializeField] AvatarCell enemyAvatarCell;
|
[SerializeField] TextEx txtMyName;
|
[SerializeField] TextEx txtEnemyName;
|
[SerializeField] TextEx txtFuncName;
|
|
[SerializeField] Button tipHeroCultivateBtn;
|
[SerializeField] Button tipEquipBtn;
|
[SerializeField] Button tipHeroPosBtn;
|
[SerializeField] ButtonEx detailBtn;
|
JsonData jsonData;
|
string battleName = BattleConst.QYBattleField;
|
protected override void InitComponent()
|
{
|
detailBtn.SetListener(() =>
|
{
|
BattleSettlementManager.Instance.OpenBattleDetailWin(battleName);
|
});
|
tipHeroCultivateBtn.AddListener(() =>
|
{
|
CloseWindow();
|
});
|
|
tipEquipBtn.AddListener(() =>
|
{
|
CloseWindow();
|
});
|
|
tipHeroPosBtn.AddListener(() =>
|
{
|
CloseWindow();
|
UIManager.Instance.OpenWindow<HeroPosWin>();
|
});
|
}
|
|
protected override void OnPreOpen()
|
{
|
jsonData = BattleSettlementManager.Instance.GetBattleSettlement(battleName);
|
if (jsonData == null)
|
{
|
DelayCloseWindow().Forget();
|
return;
|
}
|
Display();
|
if (!FirstChargeManager.Instance.GetLocalFail())
|
{
|
FirstChargeManager.Instance.SetLocalFail();
|
}
|
FirstChargeManager.Instance.TryPopWin();
|
}
|
|
protected override void OnPreClose()
|
{
|
BattleSettlementManager.Instance.WinShowOver(battleName);
|
}
|
|
// B4 20 回合制战斗状态 #tagMCTurnFightState 通用的结算状态 State 4-结算奖励
|
// Msg 中额外信息
|
// "tagPlayerID":对战的目标ID,
|
// "atkAddScore":发起方增加的积分,可能为0,
|
// "defDecScore":被击方减少的积分,可能为0,
|
// itemInfo:奖励物品列表,可能为空
|
void Display()
|
{
|
if (!jsonData.ContainsKey("tagPlayerID"))
|
return;
|
uint tagPlayerID = (uint)jsonData["tagPlayerID"];
|
|
if (!QunyingManager.Instance.TryGetPlayerInfo(tagPlayerID, out QunyingMatchInfo info))
|
return;
|
uint enemyFace = info.Face;
|
uint enemyFacePic = info.FacePic;
|
|
myAvatarCell.InitUI(AvatarHelper.GetAvatarModel((int)PlayerDatas.Instance.baseData.PlayerID,
|
PlayerDatas.Instance.baseData.face,
|
PlayerDatas.Instance.baseData.facePic));
|
enemyAvatarCell.InitUI(AvatarHelper.GetAvatarModel((int)tagPlayerID, (int)enemyFace, (int)enemyFacePic));
|
enemyAvatarCell.SetListener(() =>
|
{
|
AvatarHelper.TryViewOtherPlayerInfo((int)tagPlayerID, viewPlayerLineupType: (int)BattlePreSetType.Qunying);
|
});
|
|
txtMyName.text = PlayerDatas.Instance.baseData.PlayerName;
|
txtEnemyName.text = UIHelper.ServerStringTrim(info.PlayerName);
|
|
int funcId = (int)FuncOpenEnum.Qunying;
|
txtFuncName.text = FuncOpenLVConfig.HasKey(funcId) ? FuncOpenLVConfig.Get(funcId).Name : string.Empty;
|
}
|
|
|
}
|