- Home /
Question by
bat__banana · Feb 13, 2014 at 08:51 AM ·
timerhighscores
using player time as highscore
I've got a racing style game (get round as quickly as possible, any hoops missed = 10 second penalty added on at the end.) what i would like is to take that final time and save it locally for a leader board (no servers at this point).
is this possible?
I have the following code in place (still need to add the time penatly aspect)
var startTime : float;
var textTime : float;
function onTriggerEnter ()
{
if (gameObject.tag =="StartHoop")
{
startTime = Time.time;
yield WaitForSeconds(destroyTime);
Destroy(gameObject);
}
}
function OnGUI
{
var guiTime = Time.time-startTime;
var minutes : int = guiTime/60;
var seconds : int = guiTime% 60;
var fraction : int = (guiTime * 100) % 100;
textTime = String.Format("{0:00} : {1:00} : {2:00}", minutes, seconds, fraction);
GetComponent(GUIText).text = textTime;
}
Thanks in advance :)
Comment
Answer by DajBuzi · Feb 13, 2014 at 08:57 AM
PlayerPrefs.SetFloat("_myScore", score);
And then check if there are some scores in the list and if there are just check wich one is greater:
if(PlayerPrefs.GetFloat("_HScore" + i) < PlayerPrefs.GetFloat("_myScore"))
Within the for loop
After changing highscores use :
PlayerPrefs.Save();
Thanks. Caught up on some other stuff at the moment. Will be continuing on $$anonymous$$onday so I will let you know how i get on.
Thanks again for the reply.
Your answer
![](https://koobas.hobune.stream/wayback/20220613133352im_/https://answers.unity.com/themes/thub/images/avi.jpg)