Example #1
0
    private void Jump()
    {
        inAir = true;
        rigidbody2D.velocity = Vector2.up * flippValue * jumpVelocity;

        bodyAnim.Jump();
        armAnim.Jump();

        movementAudio.Jump();
    }
    protected void CalculateJump(float height)
    {
        bAnim.Jump();
        //   height;
        float offSetValue;

        offSetValue = rayOffSetY + 0.5f;
        // U^2 = V^2 - 2as     = Free fall calc
        float jumpVelocity;
        float gravity;

        gravity = -9.81f; // a
                          // height = s
                          // V = end velocity = 0
                          // OffSetMultiplier
        jumpVelocity = 0 - (2 * (gravity * (height + offSetValue)));
        jumpVelocity = Mathf.Sqrt(jumpVelocity);

        rigidbody2D.velocity = new Vector2(rigidbody2D.velocity.x, jumpVelocity * flipValue);
    }