/* ================= UI_VidInit ================= */ int UI_VidInit( void ) { UI_Precache (); uiStatic.scaleX = ScreenWidth / 1024.0f; uiStatic.scaleY = ScreenHeight / 768.0f; // move cursor to screen center uiStatic.cursorX = ScreenWidth >> 1; uiStatic.cursorY = ScreenHeight >> 1; uiStatic.outlineWidth = 4; uiStatic.sliderWidth = 6; // all menu buttons have the same view sizes uiStatic.buttons_draw_width = UI_BUTTONS_WIDTH; uiStatic.buttons_draw_height = UI_BUTTONS_HEIGHT; UI_ScaleCoords( NULL, NULL, &uiStatic.outlineWidth, NULL ); UI_ScaleCoords( NULL, NULL, &uiStatic.sliderWidth, NULL ); UI_ScaleCoords( NULL, NULL, &uiStatic.buttons_draw_width, &uiStatic.buttons_draw_height ); // trying to load colors.lst UI_ApplyCustomColors (); // trying to load chapterbackgrounds.txt UI_LoadBackgroundMapList (); // register menu font uiStatic.hFont = PIC_Load( "#XASH_SYSTEMFONT_001.bmp", menufont_bmp, sizeof( menufont_bmp )); UI_LoadBackgroundImage (); #if 0 FILE *f; // dump menufont onto disk f = fopen( "menufont.bmp", "wb" ); fwrite( menufont_bmp, sizeof( menufont_bmp ), 1, f ); fclose( f ); #endif // reload all menu buttons UI_LoadBmpButtons (); // now recalc all the menus in stack for( int i = 0; i < uiStatic.menuDepth; i++ ) { menuFramework_s *item = uiStatic.menuStack[i]; // do vid restart for all pushed elements if( item && item->vidInitFunc ) item->vidInitFunc(); } return 1; }
/* ================= UI_Init ================= */ void UI_Init (void) { // init this cvar here so M_Print can use it if (!alt_text_color) alt_text_color = Cvar_Get ("alt_text_color", "2", CVAR_ARCHIVE); ui_cursor_scale = Cvar_Get ("ui_cursor_scale", "0.4", 0); UI_LoadMapList(); // load map list UI_InitSavegameData (); // load savegame data UI_Precache (); // precache images Cmd_AddCommand ("menu_main", M_Menu_Main_f); Cmd_AddCommand ("menu_game", M_Menu_Game_f); Cmd_AddCommand ("menu_loadgame", M_Menu_LoadGame_f); Cmd_AddCommand ("menu_savegame", M_Menu_SaveGame_f); Cmd_AddCommand ("menu_credits", M_Menu_Credits_f ); Cmd_AddCommand ("menu_multiplayer", M_Menu_Multiplayer_f ); Cmd_AddCommand ("menu_joinserver", M_Menu_JoinServer_f); Cmd_AddCommand ("menu_addressbook", M_Menu_AddressBook_f); Cmd_AddCommand ("menu_startserver", M_Menu_StartServer_f); Cmd_AddCommand ("menu_dmoptions", M_Menu_DMOptions_f); Cmd_AddCommand ("menu_playerconfig", M_Menu_PlayerConfig_f); Cmd_AddCommand ("menu_downloadoptions", M_Menu_DownloadOptions_f); Cmd_AddCommand ("menu_video", M_Menu_Video_f); Cmd_AddCommand ("menu_video_advanced", M_Menu_Video_Advanced_f); Cmd_AddCommand ("menu_options", M_Menu_Options_f); Cmd_AddCommand ("menu_sound", M_Menu_Options_Sound_f); Cmd_AddCommand ("menu_controls", M_Menu_Options_Controls_f); Cmd_AddCommand ("menu_keys", M_Menu_Keys_f); Cmd_AddCommand ("menu_screen", M_Menu_Options_Screen_f); Cmd_AddCommand ("menu_effects", M_Menu_Options_Effects_f); Cmd_AddCommand ("menu_interface", M_Menu_Options_Interface_f); Cmd_AddCommand ("menu_quit", M_Menu_Quit_f); }