/// <summary> /// Loads a skin for the skills UI /// </summary> /// <param name="uiData"></param> private void LoadSkillsSkin(UIData uiData, Action onComplete = null) { m_FaceBackground.sprite = uiData.m_Panels.m_LeftPanel; m_SkillsBackground.sprite = uiData.m_Panels.m_RightPanel; m_SkillsBackgroundSmall.sprite = uiData.m_Panels.m_RightPanelSmall; m_PortraitImage.sprite = uiData.m_SkillsPortrait; m_PortraitBackground.sprite = uiData.m_Bust.m_BustBackground; m_PortraitForeground.sprite = uiData.m_Bust.m_BustForeground; m_UIHealthBar.m_HealthBarBackground.sprite = uiData.m_Bust.m_Healthbar; // Assign the skills for (int i = 0; i < m_SkillSlots.Length; i++) { SkillButton slot = m_SkillSlots[i]; m_SkillSlots[i].transform.parent.gameObject.SetActive(i < PlayerManager.m_Instance.GetSelectedUnit().GetSkills().Count); slot.m_Skill = PlayerManager.m_Instance.GetSelectedUnit().GetSkill(i); if (slot.m_Skill) { slot.m_LightIcon.sprite = slot.m_Skill.m_LightIcon; slot.m_LightIcon.color = uiData.m_IconColors.m_IconLight; slot.m_DarkIcon.sprite = slot.m_Skill.m_DarkIcon; slot.m_DarkIcon.color = uiData.m_IconColors.m_IconDark; } slot.UpdateTooltip(); } // Update the skin and cooldown of the skills foreach (SkillButton slot in m_SkillSlots) { slot.m_SidesImage.sprite = uiData.m_SkillDiamonds.m_SkillDiamondSides; slot.m_CenterImage.sprite = uiData.m_SkillDiamonds.m_SkillDiamondCenter; slot.m_LightningImage.material.SetColor("_UICloudTint", uiData.m_SkillDiamonds.m_SkillCloudColor); slot.UpdateCooldownDisplay(); } onComplete?.Invoke(); }