private void UpdateGrabEdgeWhileMidair()
    {
        var lookVec = player.GetLookDirection();

        lookVec.y = 0;
        var  rchit = new RaycastHit();
        bool hitEdge, hitHead;

        RaycastChecks(lookVec, out rchit, out hitEdge, out hitHead);

        if (hitEdge && !hitHead)                // Hit middle body to wall but miss upper body to wall
        {
            InvokeHanging(lookVec);
        }
        else if (hitEdge && hitHead)                    // Investigate to see if it's climbable
        {
            CheckIfClimbableWall(rchit, lookVec);
        }
    }
Exemple #2
0
    private void UpdateFacingDirection()
    {
        var lookVec = player.GetLookDirection();

        lookVec.y = 0;
        if (lookVec != Vector3.zero)
        {
            transform.rotation =
                Quaternion.LookRotation(lookVec);
        }
    }