Need help I am a Super Noob, I don't know code so well, I can't get my character to Jump.

using System.Collections;
using System.Collections.Generic;
using System.Linq;
using UnityEngine;
using UnityEngine.XR;


public class NewJump77 : MonoBehaviour
{
    XRIDefaultInputActions obj_PlayerInputActions;
    public float jumpHeight = 300f;
    public bool isGrounded;
    public float NumberJumps = 0f;
    public float MaxJumps = 2;
    private Rigidbody rb;
    public AudioSource jumpSound;


    private void Awake()
    {
        obj_PlayerInputActions = new XRIDefaultInputActions();

        obj_PlayerInputActions.XRIRightHand.Jump.performed += x => Jump();
    }

  
    #region - Enable/Disable -
    private void OnEnable()
    {

        obj_PlayerInputActions.Enable();

    }

    private void OnDisable()
    {
        obj_PlayerInputActions.Disable();
    }

    #endregion    
    void Start()
    {
        rb = GetComponent<Rigidbody>();
    
    }
  
    void  Jump()
    {
            
      
      

        if (NumberJumps > MaxJumps - 1)
        {
            isGrounded = false;
        }

        if (isGrounded)
        {
            Debug.Log("I'm Jumping Bitch");
            NumberJumps += 1;
            rb.AddForce(Vector3.up * jumpHeight);
            jumpSound.Play();
        }
    }

    void OnCollisionEnter(Collision other)
    {
        isGrounded = true;
        NumberJumps = 0;
    }
    void OnCollisionExit(Collision other)
    {

    }
}

[code]

Something isn’t quite right about your code formatting tags so your code is tough to read. They need to be in square brackets to work.

How to use code tags: Using code tags properly

For this particular class of problem, which could be scene/prefab setup and not even be in the code at all, I recommend liberally sprinkling Debug.Log() statements through your code to display information in realtime.

Doing this should help you answer these types of questions:

  • is this code even running? which parts are running? how often does it run?
  • what are the values of the variables involved? Are they initialized?

Knowing this information will help you reason about the behavior you are seeing.