mirror of
https://github.com/TerryCavanagh/VVVVVV.git
synced 2024-11-16 16:09:42 +01:00
Language menu changes
This commit is contained in:
parent
cd62bf7d4a
commit
3689cb6b38
3 changed files with 23 additions and 11 deletions
|
@ -7031,13 +7031,13 @@ void Game::createmenu( enum Menu::MenuName t, bool samemenu/*= false*/ )
|
|||
int button_x = 0;
|
||||
int button_y = 0;
|
||||
bool spawn_buttons = false;
|
||||
if (i >= (languagepage * 16))
|
||||
if (i >= (languagepage * 12))
|
||||
{
|
||||
spawn_buttons = true;
|
||||
button_count++;
|
||||
button_x = (button_count >= 8) ? 240 : 80;
|
||||
button_y = 32 + 20 * (button_count % 8);
|
||||
if (button_count >= 16)
|
||||
button_x = (button_count >= 6) ? 240 : 80;
|
||||
button_y = 32 + 26 * (button_count % 6);
|
||||
if (button_count >= 12)
|
||||
{
|
||||
spawn_buttons = false;
|
||||
}
|
||||
|
@ -7049,8 +7049,8 @@ void Game::createmenu( enum Menu::MenuName t, bool samemenu/*= false*/ )
|
|||
|
||||
if (spawn_buttons)
|
||||
{
|
||||
int button_width = SDL_max(120, font::len(PR_1X, loc::languagelist[i].code.c_str()) + 16);
|
||||
touch::create_menu_button(button_x - button_width / 2, button_y, button_width, 16, loc::languagelist[i].code.c_str(), i);
|
||||
int button_width = SDL_max(136, font::len(PR_1X, loc::languagelist[i].code.c_str()) + 16);
|
||||
touch::create_menu_button(button_x - button_width / 2, button_y, button_width, 24, loc::languagelist[i].code.c_str(), i);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -7064,8 +7064,8 @@ void Game::createmenu( enum Menu::MenuName t, bool samemenu/*= false*/ )
|
|||
|
||||
if (spawn_buttons)
|
||||
{
|
||||
int button_width = SDL_max(120, font::len(flags, loc::languagelist[i].nativename.c_str()) + 16);
|
||||
touch::create_menu_button_flags(button_x - button_width / 2, button_y, button_width, 16, loc::languagelist[i].nativename.c_str(), i, flags);
|
||||
int button_width = SDL_max(136, font::len(flags, loc::languagelist[i].nativename.c_str()) + 16);
|
||||
touch::create_menu_button_flags(button_x - button_width / 2, button_y, button_width, 24, loc::languagelist[i].nativename.c_str(), i, flags);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -7075,7 +7075,7 @@ void Game::createmenu( enum Menu::MenuName t, bool samemenu/*= false*/ )
|
|||
}
|
||||
|
||||
touch::create_menu_button(46 - 16, 200, 76, 26, loc::gettext("previous"), -2);
|
||||
touch::create_menu_button(122, 200, 76, 26, loc::gettext("return"), -3);
|
||||
touch::create_menu_button(122, 200, 76, 26, loc::gettext("ok"), -3);
|
||||
touch::create_menu_button(198 + 16, 200, 76, 26, loc::gettext("next"), -1);
|
||||
|
||||
break;
|
||||
|
|
|
@ -1258,7 +1258,7 @@ void menuactionpress(void)
|
|||
else if (game.currentmenuoption == -2)
|
||||
{
|
||||
// go left a page (or wrap to end)
|
||||
game.languagepage = POS_MOD(game.languagepage - 1, (int) SDL_ceilf(loc::languagelist.size() / 16.0));
|
||||
game.languagepage = POS_MOD(game.languagepage - 1, (int) SDL_ceilf(loc::languagelist.size() / 12.0));
|
||||
loc::loadlanguagelist();
|
||||
game.createmenu(Menu::language, true);
|
||||
game.currentmenuoption = loc::languagelist_curlang;
|
||||
|
@ -1267,7 +1267,7 @@ void menuactionpress(void)
|
|||
else if (game.currentmenuoption == -1)
|
||||
{
|
||||
// go right a page (or wrap to start)
|
||||
game.languagepage = POS_MOD(game.languagepage + 1, (int) SDL_ceilf(loc::languagelist.size() / 16.0));
|
||||
game.languagepage = POS_MOD(game.languagepage + 1, (int) SDL_ceilf(loc::languagelist.size() / 12.0));
|
||||
loc::loadlanguagelist();
|
||||
game.createmenu(Menu::language, true);
|
||||
game.currentmenuoption = loc::languagelist_curlang;
|
||||
|
|
|
@ -611,6 +611,18 @@ namespace touch
|
|||
font::print(PR_CJK_LOW | font_scale | button->flags, button->x + 16 + offset * scale, button->y + ((button->height - height) / 2 + offset) * scale, button->text, use_r, use_g, use_b);
|
||||
break;
|
||||
default:
|
||||
// This is a dumb hack for the language menu, but... if this button is NOT for the current language, darken it (unless it's negative)
|
||||
|
||||
if (game.currentmenuname == Menu::language)
|
||||
{
|
||||
if (button->id != game.currentmenuoption && button->id >= 0)
|
||||
{
|
||||
use_r /= 2;
|
||||
use_g /= 2;
|
||||
use_b /= 2;
|
||||
}
|
||||
}
|
||||
|
||||
graphics.fill_rect(button->x + 4 * scale, button->y + 4 * scale, button->width, button->height, r / shadow_div, g / shadow_div, b / shadow_div);
|
||||
|
||||
graphics.fill_rect(button->x + offset * scale, button->y + offset * scale, button->width, button->height, use_r, use_g, use_b);
|
||||
|
|
Loading…
Reference in a new issue