Esempio n. 1
0
        protected override void UpdateState(RuntimeMoveData data, RoninController cc, Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
        {
            // Move
            float moveSpeed = data.playerInfo.moveSpeed.EvaluateEx(data.inputData.joyStickMove.x);

            cc.Move(moveSpeed, 0, 0);
        }
Esempio n. 2
0
        protected override void UpdateState(RuntimeMoveData data, RoninController cc, Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
        {
            // 移动
            animator.SetFloat(AnimParamConstans.STATE_RUNSPEED, data.inputData.joyStickMove.x);

            // 起跳
            if (SetTrigger(AnimParamConstans.STATE_JUMP, data.inputData.isJumpDown, animator))
            {
                return;
            }

            // 滑铲
            if (SetTrigger(AnimParamConstans.STATE_SLIDE, data.inputData.isFireing, animator))
            {
                return;
            }

            if (SetBool(AnimParamConstans.STATE_IN_AIR, !data.ccData.isGrounded, animator))
            {
                return;
            }

            // 无输入
            animator.SetBool(AnimParamConstans.STATE_IDLE, !data.inputData.isJoyStickHold);
        }
Esempio n. 3
0
        protected override void UpdateState(RuntimeMoveData data, RoninController cc, Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
        {
            float   jumpSpeed = data.playerInfo.jumpSpeed.Evaluate(stateInfo.normalizedTime);
            Vector3 current   = data.ccData.velocity;

            cc.Move(new Vector3(MathHelper.MaxAbs(startJumpSpeed, current.x), jumpSpeed, 0), false);
        }
Esempio n. 4
0
        protected override void StartState(RuntimeMoveData data, RoninController cc, Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
        {
            base.StartState(data, cc, animator, stateInfo, layerIndex);

            Vector3 current = data.ccData.velocity;

            current = current.SetY(data.playerInfo.jumpSpeed.Evaluate(1) * data.ccData.bouncingFactor);
            cc.Move(current, false);
        }
Esempio n. 5
0
        protected override void UpdateState(RuntimeMoveData data, RoninController cc, Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
        {
            float slideV = data.playerInfo.slideSpeed.Evaluate(Mathf.Lerp(startTime, endTime, stateInfo.normalizedTime));

            Vector3 currentV = data.ccData.velocity;

            currentV.x = Math.Sign(cc.GetDirection().x) * slideV;

            cc.Move(currentV);
        }
Esempio n. 6
0
        protected override void UpdateState(RuntimeMoveData data, RoninController cc, Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
        {
            // change visual face
            float moveSpeed = data.ccData.velocity.x;

            if (moveSpeed > 0)
            {
                cc.SetDirection(Vector3.right);
            }
            else if (moveSpeed < 0)
            {
                cc.SetDirection(Vector3.left);
            }
        }
Esempio n. 7
0
        protected override void UpdateState(RuntimeMoveData data, RoninController cc, Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
        {
            // 移动
            animator.SetFloat(AnimParamConstans.STATE_RUNSPEED, data.inputData.joyStickMove.x);

            // 二段跳
            if (SetTrigger(AnimParamConstans.STATE_JUMP_2ND, data.playerInfo.canSecondJump && data.inputData.isJumpDown, animator))
            {
                return;
            }

            // 弹簧
            if (SetTrigger(AnimParamConstans.STATE_BOUNCING, data.ccData.isBouncing, animator))
            {
                return;
            }

            // 落地
            animator.SetBool(AnimParamConstans.STATE_IN_AIR, !data.ccData.isGrounded);
        }
Esempio n. 8
0
        // 更新状态
        protected override void UpdateState(RuntimeMoveData data, RoninController cc, Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
        {
            if (mIsPlaySpecial && stateInfo.normalizedTime >= 1)
            {
                SetAsNormalIdleAnim(animator, stateInfo.normalizedTime);
            }

            if (!mIsPlaySpecial && stateInfo.normalizedTime > mWaitTime)
            {
                TriggerSpecialAnim(animator, stateInfo, layerIndex);
            }

            // change visual face
            float moveSpeed = data.ccData.velocity.x;

            if (moveSpeed > 0)
            {
                cc.SetDirection(Vector3.right);
            }
            else if (moveSpeed < 0)
            {
                cc.SetDirection(Vector3.left);
            }
        }
Esempio n. 9
0
 /// <summary>
 /// Update 只有在当前 Clip 是自己的时候才会调用
 /// </summary>
 protected abstract void UpdateState(RuntimeMoveData data, RoninController cc, Animator animator, AnimatorStateInfo stateInfo, int layerIndex);
Esempio n. 10
0
 protected override void StartState(RuntimeMoveData data, RoninController cc, Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
 {
     base.StartState(data, cc, animator, stateInfo, layerIndex);
     mDataCollector.Collect();
 }
Esempio n. 11
0
 protected override void UpdateState(RuntimeMoveData data, RoninController cc, Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
 {
     mDataCollector.Collect();
 }
Esempio n. 12
0
 protected override void StartState(RuntimeMoveData data, RoninController cc, Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
 {
     base.StartState(data, cc, animator, stateInfo, layerIndex);
     startJumpSpeed = data.playerInfo.moveSpeed.EvaluateEx(data.inputData.joyStickMove.x) / 2;
 }
Esempio n. 13
0
 protected override void UpdateState(RuntimeMoveData data, RoninController cc, Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
 {
     cc.Move(data.ccData.velocity);
 }
Esempio n. 14
0
 protected override void UpdateState(RuntimeMoveData data, RoninController characterController, Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
 {
     Debug.Log("Update State " + stateInfo.fullPathHash);
 }
Esempio n. 15
0
 protected override void StartState(RuntimeMoveData data, RoninController characterController, Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
 {
     base.StartState(data, characterController, animator, stateInfo, layerIndex);
     Debug.Log("Enter State " + stateInfo.fullPathHash);
 }
Esempio n. 16
0
        protected override void UpdateState(RuntimeMoveData data, RoninController cc, Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
        {
            Vector3 current = data.ccData.velocity;

            cc.Move(new Vector3(0, current.y, 0));
        }
Esempio n. 17
0
 // 进入状态,这个函数只会在从其他状态进入本状态时被调用
 protected override void StartState(RuntimeMoveData data, RoninController characterController, Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
 {
     base.StartState(data, characterController, animator, stateInfo, layerIndex);
     SetAsNormalIdleAnim(animator, 0);
 }
Esempio n. 18
0
 /// <summary>
 /// Start 反复重入时不会反复调用
 /// </summary>
 protected virtual void StartState(RuntimeMoveData data, RoninController cc, Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
 {
 }