From e0ec52ef7cd8aaa9687b8f8b9b68aec1d372a2ca Mon Sep 17 00:00:00 2001
From: client_linchunjie <461730578@qq.com>
Date: 星期三, 08 五月 2019 10:56:33 +0800
Subject: [PATCH] 6680 子 【2.0】【开发】五行专精激活方式变更 / 【2.0】【前端】五行专精激活方式变更
---
System/Skill/ExpertSkillConditionCell.cs | 65 ++++++++++++++++++++++++++++++--
1 files changed, 61 insertions(+), 4 deletions(-)
diff --git a/System/Skill/ExpertSkillConditionCell.cs b/System/Skill/ExpertSkillConditionCell.cs
index 10c1782..bbdccd8 100644
--- a/System/Skill/ExpertSkillConditionCell.cs
+++ b/System/Skill/ExpertSkillConditionCell.cs
@@ -1,20 +1,46 @@
-锘縰sing System.Collections;
+锘縰sing System;
+using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
namespace Snxxz.UI
{
- public class ExpertSkillConditionCell : CellView
+ public class ExpertSkillConditionCell : ScrollItem
{
+ [SerializeField] UIAlphaTween m_AlphaTween;
+ [SerializeField] UILinerMove m_LinerMove;
[SerializeField] Text m_Condition;
[SerializeField] Text m_Description;
[SerializeField] Image m_Line;
+ [SerializeField] UIEffect m_Effect;
+
+ public UIAlphaTween alphaTween
+ {
+ get { return m_AlphaTween; }
+ }
+
+ public UILinerMove linerMove
+ {
+ get { return m_LinerMove; }
+ }
+
+ int skillId = 0;
+ int level = 0;
TreasureSkillModel model { get { return ModelCenter.Instance.GetModel<TreasureSkillModel>(); } }
- public void Display(int skillId, int level)
+ public override void Display(object _data)
{
+ var data = (int)_data;
+ skillId = data / 100;
+ level = data % 100;
+
+ m_AlphaTween.SetStartState();
+
+ var activeLevel = 0;
+ model.TryGetExpertActiveLevel(skillId, out activeLevel);
+
var skillConfig = SkillConfig.Get(skillId + level - 1);
var property = skillConfig.RequireProperty();
var propertyConfig = PlayerPropertyConfig.Get(property);
@@ -25,13 +51,44 @@
var currentValue = UIHelper.GetPropertyValue((PropertyType)property);
- if (currentValue >= skillConfig.RequirePropertyValue())
+ if (activeLevel >= level)
{
m_Description.color = UIHelper.s_LightYellow;
+ m_Condition.color = UIHelper.s_Gold;
}
else
{
m_Description.color = UIHelper.s_BrightWhiteColor;
+ m_Condition.color = UIHelper.s_BrightWhiteColor;
+ if (currentValue >= skillConfig.RequirePropertyValue())
+ {
+ m_Condition.text += UIHelper.AppendColor(TextColType.Green, "锛堝彲婵�娲伙級");
+ }
+ }
+
+ model.expertActiveRefresh -= ExpertActiveRefresh;
+ model.expertActiveRefresh += ExpertActiveRefresh;
+ }
+
+ public override void Dispose()
+ {
+ base.Dispose();
+ m_AlphaTween.SetStartState();
+
+ model.expertActiveRefresh -= ExpertActiveRefresh;
+ }
+
+ private void ExpertActiveRefresh(int id)
+ {
+ if (skillId == id)
+ {
+ var activeLevel = 0;
+ model.TryGetExpertActiveLevel(id, out activeLevel);
+ if (activeLevel == level)
+ {
+ m_Effect.Play();
+ }
+ Display(skillId * 100 + level);
}
}
}
--
Gitblit v1.8.0