what to change in the script that it calls start from a external button other then when collider is detected

I have this script that counts the balloons destroyed along with a timer it starts when a collider in my case a paper plane collides with it I want to change it starts when I press a button from my other UI

using UnityEngine;
using System.Collections;

namespace DaydreamElements.SwipeMenu {

  [RequireComponent(typeof(AudioSource))]
  public class Sign : MonoBehaviour {
    private TextMesh textMesh;
    private float timerEnd;
    private int prevTime;
    private AudioSource audioSource;

    private static bool started = false;
    private static int score = 0;

    public GameObject signText;

    public static void IncScore() {
      if (started) {
        ++score;
      }
    }

    void Start() {
      audioSource = GetComponent<AudioSource>();
      textMesh = signText.GetComponent<TextMesh>();
      Debug.Assert(textMesh != null);
    }

    void Update() {
      if (started) {
        int newTime = (int)(timerEnd - Time.realtimeSinceStartup) + 1;
        if (newTime <= 0) {
          started = false;
          textMesh.text = "Game Over!

Shoot again to restart
Your score: " + score + "
";
} else if (newTime != prevTime) {
prevTime = newTime;
textMesh.text = “00:” + newTime.ToString(“00”) + "
Your score: " + score + "
";
if (newTime == 5) {
audioSource.Play();
}
}
}
}

    void OnCollisionEnter(Collision collision) {
      RigidPaperAirplane rigidPencil = collision.gameObject.GetComponent<RigidPaperAirplane>();
      if (rigidPencil == null) {
        return;
      }
      if (!started) {
        started = true;
        timerEnd = Time.realtimeSinceStartup + 60.0f;
        prevTime = 0;
        score = 0;
      }
    }
  }
}

Hello.

Then just move everything inside OnCollisionEnter() into a new void method called for example StartTime()

And in Update just add this:

if (Input.GetKeyDown(KeyCode.Space))
{
StartTime();
}

Add any other condition if you need.

Bye!