Example #1
0
 public BaseSkillState(SkillList skillList, SkillStruct skillStruct, BaseActor targetActor = null)
 {
     m_SkillList   = skillList;
     m_SkillStruct = skillStruct;
     m_BaseTarget  = targetActor;
     m_SelfActor   = m_SkillList.GetComponent <BaseActor>();
 }
Example #2
0
        protected virtual void OnLeaveStopping()
        {
            EffectSkill();
            SkillStruct nothingDo = new SkillStruct();

            nothingDo.type = SkillType.NotReleaseSkill;
            BaseSkillState nothingToDoState = new BaseSkillState(m_SkillList, nothingDo);

            owner.SetState(nothingToDoState);
        }
Example #3
0
        protected virtual void EnterLostBallance()
        {
            SkillStruct lostBallance = new SkillStruct();

            lostBallance.type        = SkillType.HurtEffect;
            lostBallance.releaseTime = m_SkillStruct.lostBalanceTime;
            lostBallance.name        = "摔倒";
            BaseSkillState lostBallanceState = new BaseSkillState(m_SkillList, lostBallance);

            owner.SetState(lostBallanceState);
        }
Example #4
0
        public void ReleaseSkill(int skillIdx)
        {
            if ((m_SkillFsm.curSkillState.skillInfo.type != SkillType.NotReleaseSkill && countTime > 0))
            {
                return;
            }
            SkillStruct skillStuct = GetSkill(skillIdx);

            BaseSkillState newSkillState = null;

            if (skillStuct.skillClassName == "")
            {
                newSkillState = new BaseSkillState(this, skillStuct, m_Target);
            }
            else
            {
                Assembly assembly = Assembly.GetExecutingAssembly();                                                             // 获取当前程序集
                Type     GetState = assembly.GetType("GameProject." + skillStuct.skillClassName);
                newSkillState = (BaseSkillState)Activator.CreateInstance(GetState, new object[] { this, skillStuct, m_Target }); // 创建类的
            }
            m_SkillFsm.SetState(newSkillState);
        }
Example #5
0
 public Roll(SkillList skillList, SkillStruct skillStruct, BaseActor targetActor = null) : base(skillList, skillStruct, targetActor)
 {
     m_AddedBuff         = false;
     m_RealeaseTimeStamp = Time.time + 0.2f;
 }