How to set high score (best time) with playerprefs

Hello!

I have never used playerprefs before, so if I am doing something very wrong, please let me know!

Question: How do I store and show the current best time in the top-right corner of my GUI?

using UnityEngine;
using System.Collections;
using UnityEngine.UI;

public class Trigger : MonoBehaviour
{
		public bool finished = false;
		public Texture winningimage;
		public Text timer;
		public Text bTime;
		public float raceTime = 0;
		private float bestTime = 0;

		void Start ()
		{
	
		}

		void OnTriggerEnter ()
		{
				Debug.Log ("Finish!");
				finished = true;
		}

		void OnGUI ()
		{
				if (finished) {
						GUI.Label (new Rect (Screen.width / 2 - 175, Screen.height / 4 - 55, 374, 110), winningimage);
						if (raceTime < bestTime) {
								bestTime = raceTime;
								PlayerPrefs.SetFloat ("Best time", bestTime);
						}
				}
				if (GUI.Button (new Rect (1250, 10, 80, 40), "Restart")) {
						Application.LoadLevel ("Test level 1");	
				}

		}

		void Update ()
		{
				if (!finished) {
						raceTime = raceTime + 1 * Time.deltaTime;
						timer.text = raceTime.ToString ("f2");
				}
		}
}

With PlayerPrefs, you get and set values. I see that you set the value when the race is finished. When you start the race, call PlayerPrefs.GetFloat(“Best time”) to get the value stored there.

void Start()
{
   if(PlayerPrefs.HasKey("Best time"))
   {
      float bestTime = PlayerPrefs.GetFloat("Best time");
   }
   else
   {
      PlayerPrefs.SetFloat("Best time", someStupidHighNumber);
   }
}