X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fscreens.c;h=43212e185991dd038c6ee3e8cda27e5c5924b0c0;hb=fe078269fbabe2f122a524cdedf35d6c51c986d2;hp=67dd30880ccb84fdb31471374f275b48d3c457b1;hpb=3f5bead76851508f3e8d6130843ecab51a923232;p=rocksndiamonds.git diff --git a/src/screens.c b/src/screens.c index 67dd3088..43212e18 100644 --- a/src/screens.c +++ b/src/screens.c @@ -4007,7 +4007,7 @@ static int getPlayerNameColor(char *name) } static void drawTypeNameText(char *name, struct TextPosInfo *pos, - boolean active) + boolean active) { char text[MAX_PLAYER_NAME_LEN + 2] = { 0 }; boolean multiple_users = (game_status == GAME_MODE_PSEUDO_TYPENAMES); @@ -4015,8 +4015,12 @@ static void drawTypeNameText(char *name, struct TextPosInfo *pos, int sy = (multiple_users ? amSY + pos->y : mSY + ALIGNED_TEXT_YPOS(pos)); int font_nr = (active ? FONT_ACTIVE(pos->font) : pos->font); int font_width = getFontWidth(font_nr); + int font_xoffset = getFontDrawOffsetX(font_nr); + int font_yoffset = getFontDrawOffsetY(font_nr); + int font_sx = sx + font_xoffset; + int font_sy = sy + font_yoffset; - DrawBackgroundForFont(sx, sy, pos->width, pos->height, font_nr); + DrawBackgroundForFont(font_sx, font_sy, pos->width, pos->height, font_nr); sprintf(text, "%s%c", name, (active ? '_' : '\0')); @@ -4338,6 +4342,9 @@ static void DrawChooseTree(TreeInfo **ti_ptr) boolean restart_music = (game_status != game_status_last_screen && game_status_last_screen != GAME_MODE_SCOREINFO); + scores.was_just_playing = (game_status == GAME_MODE_SCORES && + game_status_last_screen == GAME_MODE_PLAYING); + if (CheckFadeAll()) fade_mask = REDRAW_ALL; @@ -5158,6 +5165,9 @@ void DrawChoosePlayerName(void) if (player_name_current == NULL) player_name_current = player_name; + // set text size for main name input (also used on name selection screen) + InitializeMainControls(); + DrawChooseTree(&player_name_current); } @@ -5294,7 +5304,6 @@ static void DrawHallOfFame_setScoreEntries(void) void DrawHallOfFame(int level_nr) { scores.last_level_nr = level_nr; - scores.was_just_playing = (game_status_last_screen == GAME_MODE_PLAYING); // (this is needed when called from GameEnd() after winning a game) KeyboardAutoRepeatOn();