GUITextures refuse to be touched

Whats up fellow Unitarians?

I’m making a runner game for Android, and I have this script - called Entity - to check whether my player has died or not. Upon his unfortunate death due to the user making him run into a sawblade, I have a teeny tiny script run that will display two GUITextures:
One displays “GAME OVER” and basically does nothing whatsoever.
The second one says “Try Again?”, and, upon being touched, it is supposed to restart the scene so the user can kill the player again. After about an hour of debuggin, I’ve made a script that gives no errors, and, in theory, should do as I wish. But it doesn’t (obviously - that’s why I’m asking this question)

My code snippet is below:

using UnityEngine;
using System.Collections;

public class Entity : MonoBehaviour {

	private bool RestartPossible = false;

	public GUITexture GameOverGUI;
	public GUITexture TryAgainGUI;
	
	
	public void Die() {

		ToggleVisibility();

	}

	public void ToggleVisibility(){

		Instantiate(GameOverGUI, new Vector3 (0.5f, 0.65f, 0f), Quaternion.identity);
		Instantiate(TryAgainGUI, new Vector3 (0.5f, 0.425f, 0f), Quaternion.identity);

		RestartPossible = true;

	}

	private void Update(){
		if (RestartPossible == true){
			//is there a touch on screen?
			if(Input.touches.Length <= 0)
			{
				//Do absolutely nothing
			}
			else //if there is a touch
			{
				for(int i = 0; i < Input.touchCount; i++)
				{
					//does stuff
					if (TryAgainGUI.HitTest(Input.GetTouch(i).position))
					{
						if(Input.GetTouch(i).phase==TouchPhase.Began)
						{
							//don't do ANYTHING
						}
						if(Input.GetTouch(i).phase==TouchPhase.Ended)
						{
                                                        //Time to restart!
							Application.LoadLevel(Application.loadedLevel);
						}
					}
				}
			}
		}
	}

}

Any help would be positively WONDERFUL, because I have no idea what’s going on here.

Thanks in advance,
Yoman

Instead of using Touch test use

void OnMouseDown()
{
 Application.LoadLevel(Application.LoadedLevel);
}