Button OnClick() followed by screen position or prefab selection

I’m trying to put together a feature where, after each button click, the function called also requires a screen position or prefab selection before it executes the main function. The example is a missile launch; the button name would be the type of missile, the button would call a function called Launch with this missile name, but the user would then select the target prefab or screen position, after which it would launch.

So far I have this:

public void Launch(string missileType)
{
    Debug.Log("Launch Button Pressed: " + missileType);
    if (Input.GetMouseButtonDown(0))
    { 
        missileLauncher.Launch(missileType, Input.mousePosition);
    }
}

The function gets called correctly, but nothing happens which I suspect is because the Input commands aren’t contained within an Update function. So, how can I go about achieving this type of functionality?

Found my answer: