Exemplo n.º 1
0
    public bool StartSkillById(int skillid, Vector3 targetPos)
    {
        IShooterSkill ss = GetSkillById(skillid);

        if (ss == null)
        {
            return(false);
        }
        if (m_CurPlaySkill == null || m_CurPlaySkill.CanBreakBySkill() && ss.CanStart())
        {
            if (m_CurPlaySkill != null)
            {
                m_CurPlaySkill.StopSkill();
            }
            if (ss.StartSkill(targetPos))
            {
                m_CurPlaySkill = ss;
                return(true);
            }
        }
        return(false);
    }
Exemplo n.º 2
0
    public bool ForceStartSkillById(int skillid)
    {
        IShooterSkill ss = GetSkillById(skillid);

        if (ss == null)
        {
            return(false);
        }
        if (m_CurPlaySkill == null || ss.CanStart())
        {
            Vector3 targetPos = Vector3.zero;
            if (m_CurPlaySkill != null)
            {
                targetPos = m_CurPlaySkill.GetTargetPos();
                m_CurPlaySkill.StopSkill();
            }
            if (ss.StartSkill(targetPos))
            {
                m_CurPlaySkill = ss;
                return(true);
            }
        }
        return(false);
    }