/// <summary> /// 技能装配信息发生改变 /// </summary> void OnSkillUpdate(xc.ClientEventBaseArgs data) { if (mCacheTrans == null) { return; } uint skillId = SkillManager.GetInstance().GetFitSkillId(mFuryHole); if (mSkillIdx != skillId) { // 装配的技能ID更换的时候,触发特效 if (mSkillIdx != 0) { if (mChangeEffect != null) { mChangeEffect.SetActive(false); mChangeEffect.SetActive(true); } } mSkillIdx = skillId; } mBasicSkillInfo = DBManager.Instance.GetDB <DBDataAllSkill>().GetOneAllSkillInfo_byActiveSkillId(skillId); mSkillInfo = DBSkillSev.Instance.GetSkillInfo(skillId); // 设置技能图标 if (mBasicSkillInfo != null && mSpriteList != null) { var sprite = mSpriteList.LoadSprite(mBasicSkillInfo.Icon); if (sprite != null) { mSkillImage.color = Color.white; mSkillImage.sprite = sprite; return; } } // 技能未装配,不显示技能对应图片 mSkillImage.color = Color.clear; }
/// <summary> /// 技能装配信息发生改变 /// </summary> void OnSkillUpdate(xc.ClientEventBaseArgs data) { if (mCacheTrans == null) { return; } uint skillId = SkillManager.GetInstance().GetFitSkillId(mFitPos); mSkillIdx = skillId; mBasicSkillInfo = DBManager.Instance.GetDB <DBDataAllSkill>().GetOneAllSkillInfo_byActiveSkillId(skillId); mSkillInfo = DBSkillSev.Instance.GetSkillInfo(skillId); DBSkillSev skill_db = DBManager.GetInstance().GetDB <DBSkillSev>(); mHasCastingReadyStage = skill_db.HasCastingReadyStage(skillId); // 设置技能图标 if (SkillHoleManager.Instance.IsHoleOpen(mFitPos) == false || SkillHoleManager.Instance.IsHoleWillOpen(mFitPos)) { mSkillImage.color = Color.clear; } else { if (skillId != 0)// 设置技能图标 { if (mBasicSkillInfo != null) { if (mSpriteList != null) { string icon_str = mBasicSkillInfo.Icon; if (mFitPos == (uint)DBCommandList.OPFlag.OP_A) //普攻 { var localPlayer = Game.Instance.GetLocalPlayer(); if (localPlayer != null && localPlayer.IsShapeShift)// 变身状态下的图标需要特殊处理 { icon_str = mBasicSkillInfo.Icon; if (string.IsNullOrEmpty(icon_str)) { VocationInfo info = DBVocationInfo.Instance.GetVocationInfo(Game.Instance.LocalPlayerVocation); if (info != null && string.IsNullOrEmpty(info.common_skill_icon_main) == false) { icon_str = info.common_skill_icon_main; } } } else { VocationInfo info = DBVocationInfo.Instance.GetVocationInfo(Game.Instance.LocalPlayerVocation); if (info != null && string.IsNullOrEmpty(info.common_skill_icon_main) == false) { icon_str = info.common_skill_icon_main; } } } Sprite sprite = mSpriteList.LoadSprite(icon_str); if (sprite != null) { mSkillImage.color = Color.white; mSkillImage.sprite = sprite; } else { mSkillImage.color = Color.clear; } } else { mSkillImage.color = Color.clear; } } else { mSkillImage.color = Color.clear; } } else// 技能未装配,不显示技能对应图片 { mSkillImage.color = Color.clear; } } }