JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
bump version to 0.5.8
[vor.git] / score.c
diff --git a/score.c b/score.c
index b21345c..8c5bc59 100644 (file)
--- a/score.c
+++ b/score.c
 #include "font.h"
 
 #include "common.h"
-#include "config.h"
+#include "vorconfig.h"
 #include "file.h"
 #include "globals.h"
 #include "score.h"
 
 // High score table
+// below are the defaults (when there's no high score file) in miliseconds
 struct highscore g_scores[2][N_SCORES] = {
        {
-               {1*60*1000,"-"},
-               {45*1000,"-"},
-               {30*1000,"-"},
-               {20*1000,"-"},
-               {10*1000,"-"},
-               {7*1000,"-"},
-               {5*1000,"-"},
-               {3*1000,"-"}
+               {120000,"-"},
+               {105000,"-"},
+               { 90000,"-"},
+               { 75000,"-"},
+               { 60000,"-"},
+               { 50000,"-"},
+               { 40000,"-"},
+               { 30000,"-"}
        },
        {
-               {1*60*1000,"-"},
-               {45*1000,"-"},
-               {30*1000,"-"},
-               {20*1000,"-"},
-               {10*1000,"-"},
-               {7*1000,"-"},
-               {5*1000,"-"},
-               {3*1000,"-"}
+               {120000,"-"},
+               {105000,"-"},
+               { 90000,"-"},
+               { 75000,"-"},
+               { 60000,"-"},
+               { 50000,"-"},
+               { 40000,"-"},
+               { 30000,"-"}
        }
 };
 
@@ -63,15 +64,21 @@ void
 read_high_score_table()
 {
        FILE *f;
-       int i, j;
+       int i, j, ret;
        
        f = open_score_file("r");
        if(f) {
                // If the file exists, read from it
                for(j=0; j<2; j++) {
-                       fscanf(f, titles[j]);
+                       ret = fseek(f, strlen(titles[j]), SEEK_CUR);
+                       if (ret != 0) {
+                               break;
+                       }
                        for(i = 0; i<N_SCORES; i++) {
-                               fscanf(f, "%d %31[^\n]\n", &g_scores[j][i].score, g_scores[j][i].name);
+                               ret = fscanf(f, "%d %31[^\n]\n", &g_scores[j][i].score, g_scores[j][i].name);
+                               if (ret != 2) {
+                                       break;
+                               }
                        }
                }
                fclose(f);
@@ -88,7 +95,7 @@ write_high_score_table()
        if(f) {
                // If the file exists, write to it
                for(j=0; j<2; j++) {
-                       fprintf(f, titles[j]);
+                       fprintf(f, "%s", titles[j]);
                        for(i = 0; i<N_SCORES; i++) {
                                fprintf (f, "%d %.31s\n", g_scores[j][i].score, g_scores[j][i].name);
                        }
@@ -143,7 +150,7 @@ snprintscore(char *s, size_t n, int score)
        if(min) {
                return snprintf(s, n, "%2d:%.2d.%d", min, sec, tenths);
        } else {
-               return snprintf(s, n, "%2d.%d", sec, tenths);
+               return snprintf(s, n, "   %2d.%d", sec, tenths);
        }
 }