123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128 |
- // leave this at the top of all UI_xxxx files for PCH reasons...
- //
- #include "../server/exe_headers.h"
- #include "ui_local.h"
- /*
- ===============================================================================
- CONNECTION SCREEN
- ===============================================================================
- */
- char connectionDialogString[1024];
- char connectionMessageString[1024];
- /*
- ========================
- UI_DrawConnect
- ========================
- */
- void UI_DrawConnect( const char *servername, const char *updateInfoString )
- {
- // We need to use this special hack variable, nothing else is set up yet:
- const char *s = Cvar_VariableString( "ui_mapname" );
- // Special case for first map:
- extern SavedGameJustLoaded_e g_eSavedGameJustLoaded;
- if ( g_eSavedGameJustLoaded != eFULL && (!strcmp(s,"yavin1") || !strcmp(s,"demo")) )
- {
- ui.R_SetColor( colorTable[CT_BLACK] );
- uis.whiteShader = ui.R_RegisterShaderNoMip( "*white" );
- ui.R_DrawStretchPic( 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0.0f, 0.0f, 1.0f, 1.0f, uis.whiteShader );
- const char *t = SE_GetString( "SP_INGAME_ALONGTIME" );
- int w = ui.R_Font_StrLenPixels( t, uiInfo.uiDC.Assets.qhMediumFont, 1.0f );
- ui.R_Font_DrawString( (320)-(w/2), 140, t, colorTable[CT_ICON_BLUE], uiInfo.uiDC.Assets.qhMediumFont, -1, 1.0f );
- return;
- }
- // Grab the loading menu:
- extern menuDef_t *Menus_FindByName( const char *p );
- menuDef_t *menu = Menus_FindByName( "loadingMenu" );
- if( !menu )
- return;
- // Find the levelshot item, so we can fix up it's shader:
- itemDef_t *item = Menu_FindItemByName( menu, "mappic" );
- if( !item )
- return;
- item->window.background = ui.R_RegisterShaderNoMip( va( "levelshots/%s", s ) );
- if (!item->window.background) {
- item->window.background = ui.R_RegisterShaderNoMip( "menu/art/unknownmap" );
- }
- // Do the second levelshot as well:
- qhandle_t firstShot = item->window.background;
- item = Menu_FindItemByName( menu, "mappic2" );
- if( !item )
- return;
- item->window.background = ui.R_RegisterShaderNoMip( va( "levelshots/%s2", s ) );
- if (!item->window.background) {
- item->window.background = firstShot;
- }
- const char *b = SE_GetString( "BRIEFINGS", s );
- if( b && b[0] )
- Cvar_Set( "ui_missionbriefing", va("@BRIEFINGS_%s", s) );
- else
- Cvar_Set( "ui_missionbriefing", "@BRIEFINGS_NONE" );
- // Now, force it to draw:
- extern void Menu_Paint( menuDef_t *menu, qboolean forcePaint );
- Menu_Paint( menu, qtrue );
- }
- /*
- ========================
- UI_UpdateConnectionString
- ========================
- */
- void UI_UpdateConnectionString( char *string ) {
- Q_strncpyz( connectionDialogString, string, sizeof( connectionDialogString ) );
- UI_UpdateScreen();
- }
- /*
- ========================
- UI_UpdateConnectionMessageString
- ========================
- */
- void UI_UpdateConnectionMessageString( char *string ) {
- char *s;
- Q_strncpyz( connectionMessageString, string, sizeof( connectionMessageString ) );
- // strip \n
- s = strstr( connectionMessageString, "\n" );
- if ( s ) {
- *s = 0;
- }
- UI_UpdateScreen();
- }
- /*
- ===================
- UI_KeyConnect
- ===================
- */
- void UI_KeyConnect( int key )
- {
- if ( key == A_ESCAPE )
- {
- ui.Cmd_ExecuteText( EXEC_APPEND, "disconnect\n" );
- return;
- }
- }
|