static void DrawHallOfFame_setScoreEntries(void);
static void HandleHallOfFame_SelectLevel(int, int);
+static char *getHallOfFameRankText(int);
static char *getHallOfFameScoreText(int);
static struct GadgetInfo *screen_gadget[NUM_SCREEN_GADGETS];
int startx3 = startx + dx3;
int startx4 = startx + dx4;
int pos = node->pos;
- boolean forced = (scores.force_last_added && pos == scores.last_added);
- char *pos_text = (forced ? "???" : int2str(pos + 1, 3));
+ char *pos_text = getHallOfFameRankText(pos);
char *dot_text = ".";
int i;
DrawChooseTree(&score_entry_current);
}
+static char *getHallOfFameRankText(int nr)
+{
+ boolean forced = (scores.force_last_added && nr == scores.last_added);
+
+ return (forced ? "???" : int2str(nr + 1, 3));
+}
+
static char *getHallOfFameTimeText(int nr)
{
static char score_text[10];
HandleChooseTree(mx, my, dx, dy, button, &score_entry_current);
}
-static void DrawScoreInfo(int pos)
+static void DrawScoreInfo_Content(int entry_nr)
{
- struct ScoreEntry *entry = &scores.entry[pos];
+ struct ScoreEntry *entry = &scores.entry[entry_nr];
+ char *pos_text = getHallOfFameRankText(entry_nr);
int font_title = MENU_INFO_FONT_TITLE;
int font_head = MENU_INFO_FONT_HEAD;
int font_text = MENU_INFO_FONT_TEXT;
int xstart1 = mSX - SX + 2 * xstep;
int xstart2 = mSX - SX + 14 * xstep;
- SetMainBackgroundImageIfDefined(IMG_BACKGROUND_SCOREINFO);
-
- UnmapAllGadgets();
-
- FadeOut(REDRAW_FIELD);
-
ClearField();
drawChooseTreeHead(score_entries);
DrawTextF(xstart2, ystart, font_text, level.name);
ystart += ystep_para;
+ DrawTextF(xstart1, ystart, font_head, "Rank");
+ DrawTextF(xstart2, ystart, font_text, pos_text);
+ ystart += ystep_line;
+
DrawTextF(xstart1, ystart, font_head, "Player");
DrawTextF(xstart2, ystart, font_text, entry->name);
ystart += ystep_line;
else
{
DrawTextF(xstart1, ystart, font_head, "Time");
- DrawTextF(xstart2, ystart, font_text, getHallOfFameTimeText(pos));
+ DrawTextF(xstart2, ystart, font_text, getHallOfFameTimeText(entry_nr));
ystart += ystep_line;
}
}
DrawTextSCentered(ybottom, font_foot, "Press any key or button to go back");
+}
+
+static void DrawScoreInfo(int entry_nr)
+{
+ SetMainBackgroundImageIfDefined(IMG_BACKGROUND_SCOREINFO);
+
+ UnmapAllGadgets();
+
+ FadeOut(REDRAW_FIELD);
+
+ DrawScoreInfo_Content(entry_nr);
FadeIn(REDRAW_FIELD);
}