Example #1
0
    void Update()
    {
        if (_photonView.isMine == true)
        {
            switch (CharacterState)
            {
            case CharacterMovingStates.Idle:

                ResetSpeedValues();

                if (Input.GetAxis("Vertical") > 0.05f || Input.GetAxis("Vertical") < -0.05f ||
                    Input.GetAxis("Horizontal") > 0.05f || Input.GetAxis("Horizontal") < -0.05f)
                {
                    CharacterState = CharacterMovingStates.Running;
                }

                if (Input.GetKeyDown("c"))
                {
                    CharacterState = CharacterMovingStates.Crowl;
                }

                UpdateRotationAndMovement();
                UpdateJumpMovement();
                MoveCharacterController();

                break;

            case CharacterMovingStates.Running:

                ResetSpeedValues();

                if (Input.GetAxis("Vertical") < 0.05f && Input.GetAxis("Vertical") > -0.05f &&
                    Input.GetAxis("Horizontal") < 0.05f && Input.GetAxis("Horizontal") > -0.05f)
                {
                    CharacterState = CharacterMovingStates.Idle;
                }

                if (Input.GetKeyDown("c"))
                {
                    CharacterState = CharacterMovingStates.Crowl;
                }

                UpdateRotationAndMovement();
                UpdateJumpMovement();
                MoveCharacterController();

                break;

            case CharacterMovingStates.Climbing:

                ResetSpeedValues();

                UpdateClimbingMovement();
                MoveCharacterController();

                break;

            case CharacterMovingStates.Crowl:

                ResetSpeedValues();

                ApplyCrowlModifier();

                UpdateRotationAndMovement();
                MoveCharacterController();

                if (Input.GetKeyDown("c"))
                {
                    GetBackToNormalAfterCrowl();
                    CharacterState = CharacterMovingStates.Idle;
                }

                break;
            }

            ApplySynchronizedValues();
        }

        UpdateAnimation();
    }
Example #2
0
 void SwitchState(CharacterMovingStates state)
 {
     CharacterState = state;
 }