|
@@ -0,0 +1,145 @@
|
|
|
+/// #pkgName FGUI包名
|
|
|
+/// #panelName UIPanel名字
|
|
|
+/// #UIName = $"{#pkgName}{#panelName}" UIKey名字
|
|
|
+/// 该脚本由模板创建
|
|
|
+/// created by cb 2024
|
|
|
+
|
|
|
+using FL.Data;
|
|
|
+using System.Collections.Generic;
|
|
|
+using XGame.Database;
|
|
|
+using XGame.Framework.UI;
|
|
|
+
|
|
|
+namespace FL.FGUI
|
|
|
+{
|
|
|
+ /// <summary>
|
|
|
+ /// UI逻辑处理类
|
|
|
+ /// </summary>
|
|
|
+ /// <typeparam name=""></typeparam>
|
|
|
+ public partial class PlayerDetailsAttributeCtrl : UIController<PlayerDetailsAttributeVM>
|
|
|
+ {
|
|
|
+ private List<AttributeParam> _baseAttributeList; // 基础属性
|
|
|
+ private List<AttributeParam> _battleAttributeList; // 战斗属性
|
|
|
+ private List<AttributeParam> _battleResistanceAttrList; // 战斗抗性
|
|
|
+ private List<AttributeParam> _specialAttributeList; // 特殊属性
|
|
|
+
|
|
|
+ protected override void OnEnable(object intent)
|
|
|
+ {
|
|
|
+ AddUIListenres();
|
|
|
+ InitData();
|
|
|
+ ShowAttributeUI();
|
|
|
+ }
|
|
|
+ protected override void OnDisable()
|
|
|
+ {
|
|
|
+ RemoveUIListenres();
|
|
|
+ if (_baseAttributeList != null)
|
|
|
+ {
|
|
|
+ _baseAttributeList.Clear();
|
|
|
+ _baseAttributeList = null;
|
|
|
+ }
|
|
|
+ if (_battleAttributeList != null)
|
|
|
+ {
|
|
|
+ _battleAttributeList.Clear();
|
|
|
+ _battleAttributeList = null;
|
|
|
+ }
|
|
|
+ if (_battleResistanceAttrList != null)
|
|
|
+ {
|
|
|
+ _battleResistanceAttrList.Clear();
|
|
|
+ _battleResistanceAttrList = null;
|
|
|
+ }
|
|
|
+ if (_specialAttributeList != null)
|
|
|
+ {
|
|
|
+ _specialAttributeList.Clear();
|
|
|
+ _specialAttributeList = null;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ #region UI事件
|
|
|
+ private void AddUIListenres()
|
|
|
+ {
|
|
|
+
|
|
|
+ }
|
|
|
+ private void RemoveUIListenres()
|
|
|
+ {
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ #endregion
|
|
|
+
|
|
|
+ private void InitData()
|
|
|
+ {
|
|
|
+ if (_baseAttributeList == null)
|
|
|
+ {
|
|
|
+ _baseAttributeList = new List<AttributeParam>()
|
|
|
+ {
|
|
|
+ GetAttributeParam(EAttributeType.Atk),
|
|
|
+ GetAttributeParam(EAttributeType.Hp),
|
|
|
+ GetAttributeParam(EAttributeType.Def),
|
|
|
+ GetAttributeParam(EAttributeType.AtkSpeed)
|
|
|
+ };
|
|
|
+
|
|
|
+ }
|
|
|
+ if (_battleAttributeList == null)
|
|
|
+ {
|
|
|
+ _battleAttributeList = new List<AttributeParam>()
|
|
|
+ {
|
|
|
+ GetAttributeParam(EAttributeType.Verti),//击晕
|
|
|
+ GetAttributeParam(EAttributeType.Crit),// 暴击
|
|
|
+ GetAttributeParam(EAttributeType.DoubleHit),//连击
|
|
|
+ GetAttributeParam(EAttributeType.Eva), // 闪避
|
|
|
+ GetAttributeParam(EAttributeType.Counter)// 反击
|
|
|
+ };
|
|
|
+ }
|
|
|
+
|
|
|
+ if (_battleResistanceAttrList == null)
|
|
|
+ {
|
|
|
+ _battleResistanceAttrList = new List<AttributeParam>()
|
|
|
+ {
|
|
|
+ GetAttributeParam(EAttributeType.VertigoRes),//抗击晕
|
|
|
+ GetAttributeParam(EAttributeType.CritDmgFac),//抗暴击
|
|
|
+ GetAttributeParam(EAttributeType.DoubleHitRes),//抗连击
|
|
|
+ GetAttributeParam(EAttributeType.EvaRes), //抗闪避
|
|
|
+ GetAttributeParam(EAttributeType.CounterRes)//抗反击
|
|
|
+ };
|
|
|
+ }
|
|
|
+
|
|
|
+ if (_specialAttributeList == null)
|
|
|
+ {
|
|
|
+ _specialAttributeList = new List<AttributeParam>()
|
|
|
+ {
|
|
|
+ GetAttributeParam(EAttributeType.CritDmgRes),//暴击减伤
|
|
|
+ GetAttributeParam(EAttributeType.DoubleHitDmgRes),//连击减伤
|
|
|
+ GetAttributeParam(EAttributeType.CounterDmgRes),//反击减伤
|
|
|
+ GetAttributeParam(EAttributeType.DmgRes),//伤害减免
|
|
|
+ GetAttributeParam(EAttributeType.BossDmgRes), //BOSS减伤
|
|
|
+ GetAttributeParam(EAttributeType.IceFac),//冰系增伤
|
|
|
+ GetAttributeParam(EAttributeType.FireFac),//火系增伤
|
|
|
+ GetAttributeParam(EAttributeType.PoisonFac),//毒系增伤
|
|
|
+ GetAttributeParam(EAttributeType.WindFac),//风系增伤
|
|
|
+ GetAttributeParam(EAttributeType.ThunderFac),//雷系增伤
|
|
|
+ GetAttributeParam(EAttributeType.IceDmgRes),//冰系减伤
|
|
|
+ GetAttributeParam(EAttributeType.FireDmgRes),//火系减伤
|
|
|
+ GetAttributeParam(EAttributeType.PoisonDmgRes),//毒系减伤
|
|
|
+ GetAttributeParam(EAttributeType.WindDmgRes),//风系减伤
|
|
|
+ GetAttributeParam(EAttributeType.ThunderDmgRes),//雷系减伤
|
|
|
+ };
|
|
|
+ }
|
|
|
+ }
|
|
|
+ private AttributeParam GetAttributeParam(EAttributeType attributeType)
|
|
|
+ {
|
|
|
+ var attrParam = new AttributeParam()
|
|
|
+ {
|
|
|
+ attributeType = attributeType,
|
|
|
+ attributeValue = PlayerData.Instance.Attr.GetValue(attributeType)
|
|
|
+ };
|
|
|
+ return attrParam;
|
|
|
+ }
|
|
|
+
|
|
|
+ private void ShowAttributeUI()
|
|
|
+ {
|
|
|
+ VM.BaseAttributeList.Ctrl.ShowUI(_baseAttributeList);
|
|
|
+ VM.BattleAttributeList.Ctrl.ShowUI(_battleAttributeList);
|
|
|
+ VM.BattleResistanceAttrList.Ctrl.ShowUI(_battleResistanceAttrList);
|
|
|
+ VM.SpecialAttributeList.Ctrl.ShowUI(_specialAttributeList);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+}
|