(Rmenu) get rid of static bool preinit in rmenu_iterate

This commit is contained in:
twinaphex 2013-01-10 19:17:35 +01:00
parent 9ff031350d
commit a6f04970a3
4 changed files with 9 additions and 9 deletions

View File

@ -72,6 +72,7 @@ enum
MODE_LOAD_GAME,
MODE_INIT,
MODE_MENU,
MODE_MENU_PREINIT,
MODE_EXIT,
MODE_LOAD_FIRST_SHADER,
MODE_LOAD_SECOND_SHADER,

View File

@ -305,7 +305,10 @@ begin_loop:
}
}
else if(g_extern.lifecycle_menu_state & (1 << MODE_MENU))
{
g_extern.lifecycle_menu_state |= (1 << MODE_MENU_PREINIT);
while(rmenu_iterate());
}
else
goto begin_shutdown;

View File

@ -2413,13 +2413,12 @@ void menu_free(void)
bool rmenu_iterate(void)
{
static bool preinit = true;
const char *msg;
DEVICE_CAST device_ptr = (DEVICE_CAST)driver.video_data;
menu current_menu;
if(preinit)
if (g_extern.lifecycle_menu_state & (1 << MODE_MENU_PREINIT))
{
if(g_extern.console.rmenu.state.ingame_menu.enable)
menu_stack_push(INGAME_MENU);
@ -2429,7 +2428,7 @@ bool rmenu_iterate(void)
device_ptr->ctx_driver->rmenu_init();
preinit = false;
g_extern.lifecycle_menu_state &= ~(1 << MODE_MENU_PREINIT);
}
g_extern.frame_count++;
@ -2512,7 +2511,5 @@ deinit:
device_ptr->ctx_driver->rmenu_free();
preinit = true;
return false;
}

View File

@ -1164,16 +1164,16 @@ static void ingame_menu_resize (void)
bool rmenu_iterate(void)
{
static bool preinit = true;
const char *msg;
xdk_d3d_video_t *device_ptr = (xdk_d3d_video_t*)driver.video_data;
if(preinit)
if (g_extern.lifecycle_menu_state & (1 << MODE_MENU_PREINIT))
{
g_extern.console.rmenu.input_loop = INPUT_LOOP_MENU;
g_extern.draw_menu = true;
preinit = false;
g_extern.lifecycle_menu_state &= ~(1 << MODE_MENU_PREINIT);
}
g_extern.frame_count++;
@ -1240,7 +1240,6 @@ deinit:
g_extern.console.rmenu.state.ingame_menu.enable = false;
g_extern.draw_menu = false;
preinit = true;
return false;
}