how to stop the bird from flapping infinite amount of time in one tap

using UnityEngine;
using System.Collections;
using UnityEngine.SceneManagement;

public class DragonScript : MonoBehaviour
{

private Rigidbody2D myRigidBody;
private Animator myAnimator;
private float jumpForce;
public bool isAlive;
public float upForce;
public AudioClip flap;
private AudioSource audioSource;

void Start()
{
    isAlive = true;

    myRigidBody = gameObject.GetComponent<Rigidbody2D>();
    myAnimator = gameObject.GetComponent<Animator>();
    audioSource = gameObject.GetComponent<AudioSource>();

    jumpForce = 10f;
    myRigidBody.gravityScale = 3.1f;

}

// Update is called once per frame
void Update()
{
    if (isAlive)
    {
        if (Input.GetMouseButton(0))
        {
            Flap();
        }
        CheckIfDragonVisibleOnScreen();
    }
}

void Flap()
{
    myRigidBody.velocity =
        new Vector2(0, jumpForce);
    myAnimator.SetTrigger("Flap");
    audioSource.PlayOneShot(flap);

}

void OnCollisionEnter2D(Collision2D target)
{
    if (target.gameObject.tag == "Obstacles")
    {
        isAlive = false;
        Time.timeScale = 0f;
        SceneManager.LoadScene("DeathScreenScene");

    }
}

void CheckIfDragonVisibleOnScreen()
{
    if (Mathf.Abs(gameObject.transform.position.y) > 5.3f)
    {
        isAlive = false;
        Time.timeScale = 0f;
        SceneManager.LoadScene("DeathScreenScene");
    }
}
void hardRestartGame()
{
    SceneManager.LoadScene(SceneManager.GetActiveScene().name);
}

}

You only need to change one line of code. GetMouseButton returns true as long as you hold your finger there. GetMouseButtonDown returns true only when you first touch the screen. It won’t return true again until you release your finger and tap again.

void Update()
 {
     if (isAlive)
     {
         if (Input.GetMouseButtonDown(0)) // Change GetMouseButton to GetMouseButtonDown
         {
             Flap();
         }
         CheckIfDragonVisibleOnScreen();
     }
 }