I have a script and it allows me to jump and i just want it so you cant double jump or triple jump or..... never-ending jump

using UnityEngine;

public class ball : MonoBehaviour

{
    RaycastHit h;
    public float jumpPower=10;
    public float maxspeed = 20; //max allowed speed
    public float speed=300; //acceleration
    public float ratio = 2; //ratio of x axis speed compared to z axis
    public static int coins;
    Vector3 v;

void Awake()
{
    Camera.mainCamera.transform.position = new Vector3(transform.position.x, transform.position.y+10 , transform.position.z - 3.5f);
    Camera.mainCamera.transform.LookAt(transform);
}

void LateUpdate()
{

    Camera.mainCamera.transform.position = new Vector3(transform.position.x,transform.position.y+6,transform.position.z-15);
    Camera.mainCamera.transform.LookAt(transform);
}

void FixedUpdate()
{
    v.x = transform.position.x;
    v.y = transform.position.y-0.56f;
    v.z = transform.position.z;
    if (Input.GetKeyDown (KeyCode.Space))
    {
        if (Physics.Linecast(transform.position, v, out h) == true)
        {
            rigidbody.AddForce(0, 150 + (rigidbody.velocity.magnitude*jumpPower), 0);
        }
    }
    if (rigidbody.velocity.magnitude < maxspeed) rigidbody.AddForce (Input.GetAxis ("Mouse X")*speed/ratio, 0, Input.GetAxis("Mouse Y")*speed);
}
void OnGUI()
{
    GUI.Label (new Rect (30,50,300,100),coins.ToString());

}
}

Can anyone tell me what to do

Maybee just using a bool variable.

bool jumping = false;

function jumping()
{
    if(jumping) return;

    jumping = true;
}

and if you hit the ground again set it to false.