X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fscreens.c;h=c60881afae76b2c85850c6196788f7238780847b;hb=195333e38da4b8195579937eb048cc9e55e9393c;hp=c02e09d355d7807fe5fa7b4545d6149c9692e8cc;hpb=ab0cbae4e74040b383b7d18e5c58d27597e0b09c;p=rocksndiamonds.git diff --git a/src/screens.c b/src/screens.c index c02e09d3..c60881af 100644 --- a/src/screens.c +++ b/src/screens.c @@ -5069,6 +5069,24 @@ void DrawHallOfFame(int level_nr, int highlight_position) FadeIn(fade_mask); } +static char *getHallOfFameScoreText(int nr) +{ + if (!level.rate_time_over_score) + return int2str(scores.entry[nr].score, 5); // show normal score + + if (level.use_step_counter) + return int2str(scores.entry[nr].time, 5); // show number of steps + + static char score_text[10]; + int time_seconds = scores.entry[nr].time / FRAMES_PER_SECOND; + int mm = (time_seconds / 60) % 60; + int ss = (time_seconds % 60); + + sprintf(score_text, "%02d:%02d", mm, ss); // show playing time + + return score_text; +} + static void drawHallOfFameList(int level_nr, int first_entry, int highlight_position) { @@ -5105,7 +5123,7 @@ static void drawHallOfFameList(int level_nr, int first_entry, if (!strEqual(scores.entry[entry].name, EMPTY_PLAYER_NAME)) DrawText(mSX + dx2, sy, scores.entry[entry].name, font_nr2); - DrawText(mSX + dx3, sy, int2str(scores.entry[entry].score, 5), font_nr4); + DrawText(mSX + dx3, sy, getHallOfFameScoreText(entry), font_nr4); } redraw_mask |= REDRAW_FIELD;