- Home /
Add lap time in scoreboard
Hi! I've made this leaderboard script that i'll put in my racing game :
pragma strict
var times : float[];
function Start() {
}
function Update() {
times[9] = this.GetComponent(GameStats).P1BestTime;//P1 Best time = Player's best lap time
times.Sort(times); }
function OnGUI() {
GUILayout.BeginVertical("box");
GUILayout.Button(" 1ST " + times[0]);
GUILayout.Button(" 2ND " + times[1]);
GUILayout.Button(" 3RD " + times[2]);
GUILayout.Button(" 4TH " + times[3]);
GUILayout.Button(" 5TH " + times[4]);
GUILayout.Button(" 6TH " + times[5]);
GUILayout.Button(" 7TH " + times[6]);
GUILayout.Button(" 8TH " + times[7]);
GUILayout.Button(" 9TH " + times[8]);
GUILayout.Button(" 10TH " + times[9]);
GUILayout.EndVertical(); }
The only problem is that when it adds your time all the other lap times change too. PLease Help!
Answer by tanoshimi · Jan 20, 2015 at 08:14 PM
Look at these two lines:
times[9] = this.GetComponent(GameStats).P1BestTime;//P1 Best time = Player's best lap time
times.Sort(times);
So, in every frame, you're setting the value of the last item in an array, times[9]
. But then you're re-sorting the array. So, in the next frame, times[9]
may be something different, and you'll set that instead. And in the next frame...
What should i do then? here's my current script : #pragma strict
var times : float[];
function Start() {
}
function Update() {
}
function OnTriggerEnter() { var arr = new Array(1); arr.Push(this.GetComponent(GameStats).P1BestTime); times = arr; times.Sort(times); }
function OnGUI() { GUILayout.BeginVertical("box");
GUILayout.Button(" 1ST " + times[0]); GUILayout.Button(" 2ND " + times[1]); GUILayout.Button(" 3RD " + times[2]); GUILayout.Button(" 4TH " + times[3]); GUILayout.Button(" 5TH " + times[4]); GUILayout.Button(" 6TH " + times[5]); GUILayout.Button(" 7TH " + times[6]); GUILayout.Button(" 8TH " + times[7]); GUILayout.Button(" 9TH " + times[8]); GUILayout.Button(" 10TH " + times[9]);
GUILayout.EndVertical(); }
Your answer
Follow this Question
Related Questions
How to Sort Multiple Vector Arrays in order of Values 1 Answer
Cube colliders and cars 1 Answer
NFS Style Motion Blur 1 Answer
Sorting an array - C# 3 Answers
Is it possible to sort arrays based upon a previous sort? 2 Answers