Exemplo n.º 1
0
    /// <summary>
    /// 释放技能
    /// </summary>
    /// <param name="skill"></param>
    public void ReleaseSkills(Ctrl_ActionBarSlot slot)
    {
        //技能冷却好了
        if (slot.Skill.skillCurrentCD >= slot.Skill.skillCD)
        {
            //技能消耗
            if (Ctrl_HeroProperty.Instance.GetCurrentMagic() >= slot.Skill.skillConsumption)
            {
                //减去技能消耗
                Ctrl_HeroProperty.Instance.DecreaseMagicValues(slot.Skill.skillConsumption);
                //释放技能
                GetComponent <Ctrl_PlayerAminator>().ReleaseSkill(slot.Skill.skillId);
                //技能熟练度+1
                if (slot.Skill.skillCurrentLv < slot.Skill.skillMaxLv)
                {
                    slot.Skill.skillCurrentProficiency += 1;
                }
                else
                {
                    if (slot.Skill.skillCurrentProficiency < slot.Skill.skillProficiency[slot.Skill.skillCurrentLv - 1])
                    {
                        slot.Skill.skillCurrentProficiency += 1;
                    }
                }

                //冷却重置
                slot.IsCooding = true;
            }
        }
    }
Exemplo n.º 2
0
    public void ReleaseSkill(int key)
    {
        Ctrl_ActionBarSlot actionBarSlot = Ctrl_SkillManager.Instance.GetCurrentActionBarSlot(key - 1);

        if (actionBarSlot != null)
        {
            actionBarSlot.UseSkill();
        }
    }
Exemplo n.º 3
0
 private void Start()
 {
     actionBarSlot = GetComponent <Ctrl_ActionBarSlot>();
 }