X-Git-Url: https://jasonwoof.com/gitweb/?p=vor.git;a=blobdiff_plain;f=score.c;h=faef94ae61da3a8e36e42a22fc208199d666c50d;hp=ac619dd58cac9138fd2222465c1ff75f7f67b391;hb=f8a1bfd0744369a492554476fd8a57484c581a5b;hpb=6f82bba8833f187abebab53375ac87905487cf8c diff --git a/score.c b/score.c index ac619dd..faef94a 100644 --- a/score.c +++ b/score.c @@ -1,3 +1,21 @@ +/* Variations on RockDodger + * Copyright (C) 2004 Joshua Grams + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation; either version 2 of the License, or (at your + * option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + #include "config.h" #include "SFont.h" @@ -13,19 +31,19 @@ // High score table struct highscore g_scores[N_SCORES] = { - {13000,"Pad"}, - {12500,"Pad"}, - {6500,"Pad"}, - {5000,"Pad"}, - {3000,"Pad"}, - {2500,"Pad"}, - {2000,"Pad"}, - {1500,"Pad"} + {1*60*1000,"-"}, + {45*1000,"-"}, + {30*1000,"-"}, + {20*1000,"-"}, + {10*1000,"-"}, + {7*1000,"-"}, + {5*1000,"-"}, + {3*1000,"-"} }; extern SFont_Font *g_font; -int cur_score; // which score we're currently entering. +int cur_score = -1; // which score we're currently entering. void read_high_score_table() @@ -126,7 +144,8 @@ display_scores(SDL_Surface *s, uint32_t x, uint32_t y) SFont_Write(s, g_font, x, y, t); snprintscore(t, 1024, g_scores[i].score); SFont_Write(s, g_font, x+50, y, t); - snprintf(t, 1024, "%s", g_scores[i].name); + if(i == cur_score) snprintf(t, 1024, "%s_", g_scores[i].name); + else snprintf(t, 1024, "%s", g_scores[i].name); SFont_Write(s, g_font, x+180, y, t); } } @@ -144,12 +163,15 @@ process_score_input(void) while(SDL_PollEvent(&e) && e.type == SDL_KEYDOWN) { c = e.key.keysym.unicode; k = e.key.keysym.sym; - if(k == SDLK_BACKSPACE && n > 0) name[n--]=0; - else if(e.key.keysym.sym == SDLK_RETURN) { - SDL_EnableUNICODE(0); - return false; + if(k == SDLK_BACKSPACE) { + if(n > 0) name[--n]=0; + } else { + if(k == SDLK_RETURN) { + SDL_EnableUNICODE(0); + cur_score = -1; + return false; + } else name[n++] = c; } - else name[n++] = c; } return true; }