//-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Saturday, September 09, 2017 //-------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace Snxxz.UI { [XLua.Hotfix] public class SkillDetailsWin : Window { [SerializeField] Button m_Close; [SerializeField] Image m_SkillIcon; [SerializeField] Text m_SkillInfo1; [SerializeField] Text m_SkillInfo2; [SerializeField] RectTransform m_ContainerDescription; [SerializeField] Text[] m_Descriptions; [SerializeField] RectTransform m_ContaienrFightPower; [SerializeField] Text m_FightPower; [SerializeField] RectTransform m_ContainerGodWeaponEffectSkill; [SerializeField] PropertyBehaviour[] m_Propertys; [SerializeField] Text m_GodWeaponEffectCondition; [SerializeField] RectTransform m_ContainerPlayer; [SerializeField] RawImage m_RawPlayer; MagicianModel godWeaponModel { get { return ModelCenter.Instance.GetModel(); } } #region Built-in protected override void BindController() { } protected override void AddListeners() { m_Close.onClick.AddListener(CloseClick); } protected override void OnPreOpen() { m_ContainerGodWeaponEffectSkill.gameObject.SetActive(false); m_ContainerDescription.gameObject.SetActive(false); m_ContainerPlayer.gameObject.SetActive(false); DisplayNormal(); } protected override void OnAfterOpen() { } protected override void OnPreClose() { UI3DModelExhibition.InstanceClone1.StopShow(); } protected override void OnAfterClose() { } #endregion void DisplayNormal() { m_SkillInfo2.gameObject.SetActive(true); m_ContainerDescription.gameObject.SetActive(true); m_SkillIcon.SetSprite(SkillDetails.skillConfig.IconName); switch (SkillDetails.sourceType) { case SkillDetails.SkillSourceType.GodWeaponSkill: { m_SkillInfo2.text = SkillDetails.skillConfig.SkillName; m_SkillInfo1.text = SkillDetails.skillSource; } break; case SkillDetails.SkillSourceType.PetSkill: { if (SkillDetails.skillConfig.CoolDownTime > 0) { m_SkillInfo2.text = StringUtility.Contact("CD:", (float)SkillDetails.skillConfig.CoolDownTime / 1000, Language.Get("RealmWin_Bewrite_35")); } else { m_SkillInfo2.gameObject.SetActive(false); } m_SkillInfo1.text = SkillDetails.skillConfig.SkillName; } break; case SkillDetails.SkillSourceType.ViewHorsePet: { if (SkillDetails.skillConfig.CoolDownTime > 0) { m_SkillInfo2.text = StringUtility.Contact("CD:", (float)SkillDetails.skillConfig.CoolDownTime / 1000, Language.Get("RealmWin_Bewrite_35")); } else { m_SkillInfo2.gameObject.SetActive(false); } m_SkillInfo1.text = SkillDetails.skillConfig.SkillName; } break; case SkillDetails.SkillSourceType.BlastFurnace: { m_SkillInfo2.text = SkillDetails.skillConfig.SkillName; m_SkillInfo1.text = SkillDetails.skillSource; } break; case SkillDetails.SkillSourceType.DogzSkill: { m_SkillInfo1.text = SkillDetails.skillConfig.SkillName; m_SkillInfo2.text = Language.Get("PlayerDetail_Level", SkillDetails.skillConfig.SkillLV); } break; case SkillDetails.SkillSourceType.JadeDynastySkill: { m_SkillInfo1.text = SkillDetails.skillConfig.SkillName; m_SkillInfo2.gameObject.SetActive(false); } break; } DisplayDescriptions(); DisplayFightPower(); } void DisplayDescriptions() { for (int i = 0; i < m_Descriptions.Length; i++) { m_Descriptions[i].gameObject.SetActive(i < SkillDetails.skillDescriptions.Count); if (i < SkillDetails.skillDescriptions.Count) { m_Descriptions[i].text = SkillDetails.skillDescriptions[i]; } } } void DisplayFightPower() { m_ContaienrFightPower.gameObject.SetActive(SkillDetails.fightPower > 0); if (SkillDetails.fightPower > 0) { m_FightPower.text = StringUtility.Contact("+", SkillDetails.fightPower); } } } }