mirror of
https://github.com/UberGames/RPG-X2.git
synced 2024-11-27 22:52:33 +00:00
1690 lines
54 KiB
C
1690 lines
54 KiB
C
// Copyright (C) 1999-2000 Id Software, Inc.
|
|
//
|
|
/*
|
|
=============================================================================
|
|
|
|
SINGLE PLAYER LEVEL SELECT MENU
|
|
|
|
=============================================================================
|
|
*/
|
|
|
|
//RPG-X: TiM - Removed for RPG-X as serves no purpose, and is wasting resources
|
|
|
|
#include "ui_local.h"
|
|
//
|
|
//typedef struct
|
|
//{
|
|
// menuframework_s menu;
|
|
// menubitmap_s mainmenu;
|
|
// menubitmap_s preset;
|
|
// menubitmap_s create;
|
|
//
|
|
//} spchoose_t;
|
|
//static spchoose_t s_spchoose;
|
|
//
|
|
//
|
|
//#define ART_LEVELFRAME_FOCUS "menu/art/maps_select"
|
|
//#define ART_LEVELFRAME_SELECTED "menu/art/maps_selected"
|
|
//#define ART_MAP_UNKNOWN "levelshots/unknownmap"
|
|
//#define ART_MAP_COMPLETE1 "menu/art/level_complete1"
|
|
//#define ART_MAP_COMPLETE2 "menu/art/level_complete2"
|
|
//#define ART_MAP_COMPLETE3 "menu/art/level_complete3"
|
|
//#define ART_MAP_COMPLETE4 "menu/art/level_complete4"
|
|
//#define ART_MAP_COMPLETE5 "menu/art/level_complete5"
|
|
//
|
|
//#define ID_LEFTARROW 10
|
|
//#define ID_PICTURE0 11
|
|
//#define ID_PICTURE1 12
|
|
//#define ID_PICTURE2 13
|
|
//#define ID_PICTURE3 14
|
|
//#define ID_RIGHTARROW 15
|
|
//#define ID_PLAYERPIC 16
|
|
//#define ID_AWARD1 17
|
|
//#define ID_AWARD2 18
|
|
//#define ID_AWARD3 19
|
|
//#define ID_AWARD4 20
|
|
//#define ID_AWARD5 21
|
|
//#define ID_AWARD6 22
|
|
//#define ID_AWARD7 23
|
|
//#define ID_AWARD8 24
|
|
//#define ID_AWARD9 25
|
|
//#define ID_RESET 26
|
|
//#define ID_CUSTOM 27
|
|
//#define ID_NEXT 28
|
|
//#define ID_MAINMENU 100
|
|
//#define ID_PLAYERINFO 112
|
|
//#define ID_NO 120
|
|
//#define ID_YES 121
|
|
//#define ID_PRESET 122
|
|
//#define ID_BACK 123
|
|
//#define ID_ADVANCED 124
|
|
//
|
|
//#define AWARDS_Y (315)
|
|
//
|
|
//#define MAX_ITEM_MAPS 4
|
|
//
|
|
//#define MAX_LONGNAME 24
|
|
//
|
|
//typedef struct
|
|
//{
|
|
// menuframework_s menu;
|
|
//
|
|
// menubitmap_s mainmenu;
|
|
// menubitmap_s back;
|
|
// menubitmap_s create;
|
|
// menubitmap_s fight;
|
|
// menubitmap_s item_leftarrow;
|
|
// menubitmap_s item_maps[MAX_ITEM_MAPS];
|
|
// menubitmap_s item_rightarrow;
|
|
// menubitmap_s item_player;
|
|
// menubitmap_s item_awards[6];
|
|
// menubitmap_s item_null;
|
|
// menubitmap_s item_reset;
|
|
// menubitmap_s playerinfo;
|
|
// menubitmap_s advanced;
|
|
//
|
|
// qboolean reinit;
|
|
//
|
|
// const char * selectedArenaInfo;
|
|
// int numMaps;
|
|
// char levelPicNames[4][MAX_QPATH];
|
|
// char levelNames[4][16];
|
|
// char levelLongNames[4][MAX_LONGNAME];
|
|
// int levelScores[MAX_ITEM_MAPS];
|
|
// int levelScoresSkill[4];
|
|
// qhandle_t levelSelectedPic;
|
|
// qhandle_t levelFocusPic;
|
|
// qhandle_t levelCompletePic[5];
|
|
//
|
|
// qhandle_t corner_ul_18_12;
|
|
// qhandle_t corner_ur_18_12;
|
|
// qhandle_t corner_ll_18_34;
|
|
// qhandle_t corner_lr_7_12;
|
|
//
|
|
// char playerModel[MAX_QPATH];
|
|
// char playerPicName[MAX_QPATH];
|
|
// int awardLevels[6];
|
|
// sfxHandle_t awardSounds[6];
|
|
//
|
|
// int numBots;
|
|
// qhandle_t botPics[7];
|
|
// char botNames[7][10];
|
|
//} levelMenuInfo_t;
|
|
//
|
|
//static levelMenuInfo_t levelMenuInfo;
|
|
//
|
|
////=========================================================================================
|
|
//// Reset Menu Struct
|
|
////=========================================================================================
|
|
//typedef struct
|
|
//{
|
|
// menuframework_s menu;
|
|
// menubitmap_s mainmenu;
|
|
// menubitmap_s back;
|
|
// menubitmap_s yes;
|
|
//
|
|
// qhandle_t corner_ul;
|
|
// qhandle_t corner_ur;
|
|
// qhandle_t corner_ll;
|
|
// qhandle_t corner_lr;
|
|
//
|
|
//} resetGameMenuInfo_t;
|
|
//
|
|
//static resetGameMenuInfo_t resetGameMenuInfo;
|
|
//
|
|
//
|
|
//void UI_ResetGameMenu( void );
|
|
//
|
|
//static int selectedArenaSet;
|
|
//static int selectedArena;
|
|
//static int currentSet;
|
|
//static int currentGame;
|
|
//static int trainingTier;
|
|
//static int finalTier;
|
|
//static int minTier;
|
|
//static int maxTier;
|
|
//
|
|
//
|
|
///*
|
|
//=================
|
|
//PlayerIcon
|
|
//=================
|
|
//*/
|
|
void PlayerIcon( const char *modelAndSkin, char *iconName, int iconNameMaxSize ) {
|
|
char *skin;
|
|
char model[MAX_QPATH];
|
|
|
|
Q_strncpyz( model, modelAndSkin, sizeof(model));
|
|
skin = Q_strrchr( model, '/' );
|
|
if ( skin ) {
|
|
*skin++ = '\0';
|
|
}
|
|
else {
|
|
skin = "default";
|
|
}
|
|
|
|
//TiM - Removed skin and added RPG-X parms
|
|
Com_sprintf(iconName, iconNameMaxSize, "models/players_rpgx/%s/model_icon.jpg", model );
|
|
|
|
if( !trap_R_RegisterShaderNoMip( iconName ) && Q_stricmp( skin, "default" ) != 0 ) {
|
|
Com_sprintf(iconName, iconNameMaxSize, "models/players_rpgx/%s/model_icon.jpg", model );
|
|
}
|
|
}
|
|
//
|
|
//
|
|
///*
|
|
//=================
|
|
//PlayerIconhandle
|
|
//=================
|
|
//*/
|
|
//static qhandle_t PlayerIconHandle( const char *modelAndSkin )
|
|
//{
|
|
// char iconName[MAX_QPATH];
|
|
//
|
|
// PlayerIcon( modelAndSkin, iconName, sizeof(iconName) );
|
|
// return trap_R_RegisterShaderNoMip( iconName );
|
|
//}
|
|
//
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_SPLevelMenu_SetBots
|
|
//=================
|
|
//*/
|
|
//static void UI_SPLevelMenu_SetBots( void )
|
|
//{
|
|
// char *p;
|
|
// char *bot;
|
|
// char *botInfo;
|
|
// char bots[MAX_INFO_STRING];
|
|
//
|
|
// levelMenuInfo.numBots = 0;
|
|
//
|
|
// Q_strncpyz( bots, Info_ValueForKey( levelMenuInfo.selectedArenaInfo, "bots" ), sizeof(bots) );
|
|
//
|
|
// p = &bots[0];
|
|
// while( *p && levelMenuInfo.numBots < 7 )
|
|
// {
|
|
// //skip spaces
|
|
// while( *p && *p == ' ' ) {
|
|
// p++;
|
|
// }
|
|
// if( !p ) {
|
|
// break;
|
|
// }
|
|
//
|
|
// // mark start of bot name
|
|
// bot = p;
|
|
//
|
|
// // skip until space of null
|
|
// while( *p && *p != ' ' )
|
|
// {
|
|
// p++;
|
|
// }
|
|
// if( *p ) {
|
|
// *p++ = 0;
|
|
// }
|
|
//
|
|
// botInfo = UI_GetBotInfoByName( bot );
|
|
// if( botInfo )
|
|
// {
|
|
// levelMenuInfo.botPics[levelMenuInfo.numBots] = PlayerIconHandle( Info_ValueForKey( botInfo, "model" ) );
|
|
// Q_strncpyz( levelMenuInfo.botNames[levelMenuInfo.numBots], Info_ValueForKey( botInfo, "name" ), 10 );
|
|
// }
|
|
// else
|
|
// {
|
|
// levelMenuInfo.botPics[levelMenuInfo.numBots] = 0;
|
|
// Q_strncpyz( levelMenuInfo.botNames[levelMenuInfo.numBots], bot, 10 );
|
|
// }
|
|
// Q_CleanStr( levelMenuInfo.botNames[levelMenuInfo.numBots] );
|
|
// levelMenuInfo.numBots++;
|
|
// }
|
|
//}
|
|
//
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_SPLevelMenu_SetMenuArena
|
|
//=================
|
|
//*/
|
|
//extern vmCvar_t ui_language;
|
|
//static void UI_SPLevelMenu_SetMenuArena( int n, int level, const char *arenaInfo )
|
|
//{
|
|
// char map[MAX_QPATH];
|
|
// char string[MAX_LONGNAME];
|
|
//
|
|
// Q_strncpyz( map, Info_ValueForKey( arenaInfo, "map" ), sizeof(map) );
|
|
//
|
|
// Q_strncpyz( levelMenuInfo.levelNames[n], map, sizeof(levelMenuInfo.levelNames[n]) );
|
|
// Q_strupr( levelMenuInfo.levelNames[n] );
|
|
//
|
|
// if (ui_language.string[0] == 0 || Q_stricmp ("ENGLISH",ui_language.string)==0 ) {
|
|
// Q_strncpyz( string, Info_ValueForKey( arenaInfo, "longname" ), sizeof(string) );
|
|
// } else {
|
|
// Q_strncpyz( string, Info_ValueForKey( arenaInfo, va("longname_%s",ui_language.string) ), sizeof(string) );
|
|
// if (!string[0]) {
|
|
// Q_strncpyz( string, Info_ValueForKey( arenaInfo, "longname" ), sizeof(string) );
|
|
// }
|
|
// }
|
|
// Q_strncpyz( levelMenuInfo.levelLongNames[n], string, sizeof(levelMenuInfo.levelLongNames[n]) );
|
|
// Q_strupr( levelMenuInfo.levelLongNames[n] );
|
|
//
|
|
//
|
|
// UI_GetBestScore( level, &levelMenuInfo.levelScores[n], &levelMenuInfo.levelScoresSkill[n] );
|
|
// if( levelMenuInfo.levelScores[n] > 8 )
|
|
// {
|
|
// levelMenuInfo.levelScores[n] = 8;
|
|
// }
|
|
//
|
|
// strcpy( levelMenuInfo.levelPicNames[n], va( "levelshots/%s.tga", map ) );
|
|
// if( !trap_R_RegisterShaderNoMip( levelMenuInfo.levelPicNames[n] ) )
|
|
// {
|
|
// strcpy( levelMenuInfo.levelPicNames[n], ART_MAP_UNKNOWN );
|
|
// }
|
|
//
|
|
// levelMenuInfo.item_maps[n].shader = 0;
|
|
// levelMenuInfo.item_maps[n].generic.flags &= ~QMF_HIDDEN;
|
|
// levelMenuInfo.item_maps[n].generic.flags &= ~QMF_INACTIVE;
|
|
//}
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_SPLevelMenu_SetMenuItems
|
|
//=================
|
|
//*/
|
|
//static void UI_SPLevelMenu_SetMenuItems( void )
|
|
//{
|
|
// int n,i;
|
|
// int level;
|
|
// const char *arenaInfo;
|
|
// char *type;
|
|
//
|
|
// if ( selectedArena == -1 )
|
|
// {
|
|
// selectedArena = 0;
|
|
// }
|
|
//
|
|
//// if( selectedArenaSet == trainingTier || selectedArenaSet == finalTier )
|
|
//// {
|
|
//// selectedArena = 0;
|
|
//// }
|
|
//
|
|
// if( selectedArena != -1 )
|
|
// {
|
|
// trap_Cvar_SetValue( "ui_spSelection", selectedArenaSet * ARENAS_PER_TIER + selectedArena );
|
|
// }
|
|
//
|
|
// if( selectedArenaSet == trainingTier )
|
|
// {
|
|
// arenaInfo = UI_GetSpecialArenaInfo( "training" );
|
|
// level = atoi( Info_ValueForKey( arenaInfo, "num" ) );
|
|
// UI_SPLevelMenu_SetMenuArena( 0, level, arenaInfo );
|
|
// levelMenuInfo.selectedArenaInfo = arenaInfo;
|
|
//
|
|
//// levelMenuInfo.item_maps[0].generic.x = 256;
|
|
// Bitmap_Init( &levelMenuInfo.item_maps[0] );
|
|
// levelMenuInfo.item_maps[0].generic.bottom += 32;
|
|
// levelMenuInfo.numMaps = 1;
|
|
//
|
|
// levelMenuInfo.item_maps[1].generic.flags |= QMF_INACTIVE;
|
|
// levelMenuInfo.item_maps[2].generic.flags |= QMF_INACTIVE;
|
|
// levelMenuInfo.item_maps[3].generic.flags |= QMF_INACTIVE;
|
|
// levelMenuInfo.levelPicNames[1][0] = 0;
|
|
// levelMenuInfo.levelPicNames[2][0] = 0;
|
|
// levelMenuInfo.levelPicNames[3][0] = 0;
|
|
// levelMenuInfo.item_maps[1].shader = 0;
|
|
// levelMenuInfo.item_maps[2].shader = 0;
|
|
// levelMenuInfo.item_maps[3].shader = 0;
|
|
// }
|
|
// else if( selectedArenaSet == finalTier )
|
|
// {
|
|
// arenaInfo = UI_GetSpecialArenaInfo( "final" );
|
|
// level = atoi( Info_ValueForKey( arenaInfo, "num" ) );
|
|
// UI_SPLevelMenu_SetMenuArena( 0, level, arenaInfo );
|
|
// levelMenuInfo.selectedArenaInfo = arenaInfo;
|
|
//
|
|
//// levelMenuInfo.item_maps[0].generic.x = 256;
|
|
// Bitmap_Init( &levelMenuInfo.item_maps[0] );
|
|
// levelMenuInfo.item_maps[0].generic.bottom += 32;
|
|
// levelMenuInfo.numMaps = 1;
|
|
//
|
|
// levelMenuInfo.item_maps[1].generic.flags |= QMF_INACTIVE;
|
|
// levelMenuInfo.item_maps[2].generic.flags |= QMF_INACTIVE;
|
|
// levelMenuInfo.item_maps[3].generic.flags |= QMF_INACTIVE;
|
|
// levelMenuInfo.levelPicNames[1][0] = 0;
|
|
// levelMenuInfo.levelPicNames[2][0] = 0;
|
|
// levelMenuInfo.levelPicNames[3][0] = 0;
|
|
// levelMenuInfo.item_maps[1].shader = 0;
|
|
// levelMenuInfo.item_maps[2].shader = 0;
|
|
// levelMenuInfo.item_maps[3].shader = 0;
|
|
// }
|
|
// else
|
|
// {
|
|
// Bitmap_Init( &levelMenuInfo.item_maps[0] );
|
|
// levelMenuInfo.item_maps[0].generic.bottom += 18;
|
|
//
|
|
// memset( levelMenuInfo.levelNames,0, sizeof(levelMenuInfo.levelNames));
|
|
//
|
|
// // Zero out info
|
|
// for ( n = 0; n < MAX_ITEM_MAPS; n++ )
|
|
// {
|
|
// levelMenuInfo.item_maps[n].generic.flags |= QMF_HIDDEN | QMF_INACTIVE;
|
|
// levelMenuInfo.levelScores[n] = 0;
|
|
// }
|
|
//
|
|
// i = 0;
|
|
// for ( n = 0; n < MAX_ITEM_MAPS; n++ )
|
|
// {
|
|
// level = selectedArenaSet * ARENAS_PER_TIER + n;
|
|
// arenaInfo = UI_GetArenaInfoByNumber( level );
|
|
// type = Info_ValueForKey( arenaInfo, "type" );
|
|
// if( strstr( type, "single" ) )
|
|
// {
|
|
// UI_SPLevelMenu_SetMenuArena( n, level, arenaInfo );
|
|
// i++;
|
|
// }
|
|
// }
|
|
//
|
|
// levelMenuInfo.numMaps = i;
|
|
//
|
|
// if( selectedArena != -1 )
|
|
// {
|
|
// levelMenuInfo.selectedArenaInfo = UI_GetArenaInfoByNumber( selectedArenaSet * ARENAS_PER_TIER + selectedArena );
|
|
// }
|
|
// }
|
|
//
|
|
// // enable/disable arrows when they are valid/invalid
|
|
// if ( selectedArenaSet == minTier )
|
|
// {
|
|
// levelMenuInfo.item_leftarrow.generic.flags |= ( QMF_INACTIVE | QMF_GRAYED );
|
|
// }
|
|
// else
|
|
// {
|
|
// levelMenuInfo.item_leftarrow.generic.flags &= ~( QMF_INACTIVE | QMF_GRAYED );
|
|
// }
|
|
//
|
|
// if ( selectedArenaSet >= maxTier )
|
|
// {
|
|
// levelMenuInfo.item_rightarrow.generic.flags |= ( QMF_INACTIVE | QMF_GRAYED );
|
|
// }
|
|
// else
|
|
// {
|
|
// levelMenuInfo.item_rightarrow.generic.flags &= ~( QMF_INACTIVE | QMF_GRAYED );
|
|
// }
|
|
//
|
|
//
|
|
// UI_SPLevelMenu_SetBots();
|
|
//}
|
|
//
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_SPLevelMenu_ResetAction
|
|
//=================
|
|
//*/
|
|
//static void UI_SPLevelMenu_ResetAction( qboolean result )
|
|
//{
|
|
// if( !result )
|
|
// {
|
|
// return;
|
|
// }
|
|
//
|
|
// // clear game variables
|
|
// UI_NewGame();
|
|
// trap_Cvar_SetValue( "ui_spSelection", 0 );
|
|
//
|
|
// // make the level select menu re-initialize
|
|
// UI_PopMenu();
|
|
// UI_SPLevelMenu();
|
|
//}
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_SPLevelMenu_ResetEvent
|
|
//=================
|
|
//*/
|
|
//static void UI_SPLevelMenu_ResetEvent( void* ptr, int event )
|
|
//{
|
|
// if (event != QM_ACTIVATED)
|
|
// {
|
|
// return;
|
|
// }
|
|
//
|
|
// UI_ResetGameMenu();
|
|
//
|
|
//}
|
|
//
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_SPLevelMenu_LevelEvent
|
|
//=================
|
|
//*/
|
|
//static void UI_SPLevelMenu_LevelEvent( void* ptr, int notification )
|
|
//{
|
|
// if (notification != QM_ACTIVATED)
|
|
// {
|
|
// return;
|
|
// }
|
|
//
|
|
// selectedArena = ((menucommon_s*)ptr)->id - ID_PICTURE0;
|
|
// levelMenuInfo.selectedArenaInfo = UI_GetArenaInfoByNumber( selectedArenaSet * ARENAS_PER_TIER + selectedArena );
|
|
// UI_SPLevelMenu_SetBots();
|
|
//
|
|
// trap_Cvar_SetValue( "ui_spSelection", selectedArenaSet * ARENAS_PER_TIER + selectedArena );
|
|
//}
|
|
//
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_SPLevelMenu_LeftArrowEvent
|
|
//=================
|
|
//*/
|
|
//static void UI_SPLevelMenu_LeftArrowEvent( void* ptr, int notification )
|
|
//{
|
|
// if (notification != QM_ACTIVATED)
|
|
// {
|
|
// return;
|
|
// }
|
|
//
|
|
// if ( selectedArenaSet == minTier )
|
|
// {
|
|
// return;
|
|
// }
|
|
//
|
|
// selectedArena = 0;
|
|
// selectedArenaSet--;
|
|
// UI_SPLevelMenu_SetMenuItems();
|
|
//}
|
|
//
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_SPLevelMenu_RightArrowEvent
|
|
//=================
|
|
//*/
|
|
//static void UI_SPLevelMenu_RightArrowEvent( void* ptr, int notification )
|
|
//{
|
|
// if (notification != QM_ACTIVATED)
|
|
// {
|
|
// return;
|
|
// }
|
|
//
|
|
// if ( selectedArenaSet == maxTier )
|
|
// {
|
|
// return;
|
|
// }
|
|
//
|
|
// selectedArena = 0;
|
|
// selectedArenaSet++;
|
|
// UI_SPLevelMenu_SetMenuItems();
|
|
//}
|
|
//
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_SPLevelMenu_PlayerEvent
|
|
//=================
|
|
//*/
|
|
//static void UI_SPLevelMenu_PlayerEvent( void* ptr, int notification )
|
|
//{
|
|
// if (notification != QM_ACTIVATED)
|
|
// {
|
|
// return;
|
|
// }
|
|
//
|
|
// UI_PlayerSettingsMenu(PS_MENU_SINGLEPLAYER);
|
|
//}
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_SPLevelMenu_CreateEvent
|
|
//=================
|
|
//*/
|
|
//static void UI_SPLevelMenu_CreateEvent( void* ptr, int notification )
|
|
//{
|
|
// if (notification != QM_ACTIVATED)
|
|
// {
|
|
// return;
|
|
// }
|
|
// UI_StartServerMenu( qfalse );
|
|
//}
|
|
//
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_SPLevelMenu_AdvancedEvent
|
|
//=================
|
|
//*/
|
|
//static void UI_SPLevelMenu_AdvancedEvent( void* ptr, int notification )
|
|
//{
|
|
// if (notification != QM_ACTIVATED)
|
|
// {
|
|
// return;
|
|
// }
|
|
//
|
|
// switch (((menucommon_s*)ptr)->id)
|
|
// {
|
|
// case ID_ADVANCED:
|
|
// UI_ServerAdvancedOptions(1);
|
|
// break;
|
|
// }
|
|
//}
|
|
//
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_SPLevelMenu_AwardEvent
|
|
//=================
|
|
//*/
|
|
//static void UI_SPLevelMenu_AwardEvent( void* ptr, int notification )
|
|
//{
|
|
// int n;
|
|
//
|
|
// if (notification != QM_ACTIVATED)
|
|
// {
|
|
// return;
|
|
// }
|
|
//
|
|
// n = ((menucommon_s*)ptr)->id - ID_AWARD1;
|
|
// trap_S_StartLocalSound( levelMenuInfo.awardSounds[n], CHAN_ANNOUNCER );
|
|
//}
|
|
//
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_SPLevelMenu_NextEvent
|
|
//=================
|
|
//*/
|
|
//static void UI_SPLevelMenu_NextEvent( void* ptr, int notification )
|
|
//{
|
|
// if (notification != QM_ACTIVATED)
|
|
// {
|
|
// return;
|
|
// }
|
|
//
|
|
// if ( selectedArena == -1 )
|
|
// {
|
|
// selectedArena = 0;
|
|
// }
|
|
//
|
|
// UI_SPSkillMenu( levelMenuInfo.selectedArenaInfo );
|
|
//}
|
|
//
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_SPLevelMenu_BackEvent
|
|
//=================
|
|
//*/
|
|
//static void UI_SPLevelMenu_BackEvent( void* ptr, int notification )
|
|
//{
|
|
// if (notification != QM_ACTIVATED)
|
|
// {
|
|
// return;
|
|
// }
|
|
//
|
|
// if ( selectedArena == -1 )
|
|
// {
|
|
// selectedArena = 0;
|
|
// }
|
|
//
|
|
// switch (((menucommon_s*)ptr)->id)
|
|
// {
|
|
// case ID_MAINMENU:
|
|
// UI_PopMenu ();
|
|
// UI_MainMenu();
|
|
// break;
|
|
//
|
|
// case ID_BACK:
|
|
// UI_PopMenu ();
|
|
// break;
|
|
// }
|
|
//}
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_SPLevelMenu_MenuDraw
|
|
//=================
|
|
//*/
|
|
//#define LEVEL_DESC_LEFT_MARGIN 332
|
|
//#define MAP_WIDTH 118
|
|
//
|
|
//static void UI_SPLevelMenu_MenuDraw( void )
|
|
//{
|
|
// int n;//, i;
|
|
// int x, y;
|
|
// vec4_t color;
|
|
//// int level;
|
|
// int fraglimit;
|
|
// int pad;
|
|
// char buf[MAX_INFO_VALUE];
|
|
// char string[64];
|
|
//
|
|
// if( levelMenuInfo.reinit )
|
|
// {
|
|
// UI_PopMenu();
|
|
// UI_SPLevelMenu();
|
|
// return;
|
|
// }
|
|
//
|
|
// UI_MenuFrame2(&levelMenuInfo.menu);
|
|
//
|
|
// trap_R_SetColor( colorTable[CT_LTBROWN1]);
|
|
// UI_DrawHandlePic( 30, 203, 47, 186, uis.whiteShader); // Left side of frame
|
|
//
|
|
// // Map pics frame
|
|
// trap_R_SetColor( colorTable[CT_LTPURPLE3]);
|
|
// UI_DrawHandlePic( 84, 50, 64, -32, levelMenuInfo.corner_ll_18_34); // Corner at bottom
|
|
// UI_DrawHandlePic( 84, 190, 64, 32, levelMenuInfo.corner_ll_18_34); // Corner at bottom
|
|
// UI_DrawHandlePic( 108, 60, 506, 18, uis.whiteShader); // Top line
|
|
// UI_DrawHandlePic( 84, 85, 34, 102, uis.whiteShader); // Left side of frame
|
|
//
|
|
// UI_DrawHandlePic( 93, 194, 34, 18, uis.whiteShader); // Bottom line after corner
|
|
// UI_DrawHandlePic( 130, 194, 26, 18, uis.whiteShader); // Line under left arrow
|
|
// UI_DrawHandlePic( 159, 194, 391, 18, uis.whiteShader); // Line between next and previous buttons
|
|
// UI_DrawHandlePic( 553, 194, 26, 18, uis.whiteShader); // Line under right arrow
|
|
// UI_DrawHandlePic( 582, 194, 30, 18, uis.whiteShader); // Line after right arrow
|
|
//
|
|
// UI_DrawProportionalString( 133, 61, va( (char*)menu_normal_text[MNT_LEVELS],
|
|
// ((selectedArenaSet*ARENAS_PER_TIER)+1),
|
|
// ((selectedArenaSet*ARENAS_PER_TIER)+levelMenuInfo.numMaps)),
|
|
// UI_SMALLFONT, colorTable[CT_BLACK]);
|
|
//
|
|
// UI_DrawProportionalString( 74, 27, "111611",UI_RIGHT|UI_TINYFONT, colorTable[CT_BLACK]);
|
|
// UI_DrawProportionalString( 74, 188, "81454",UI_RIGHT|UI_TINYFONT, colorTable[CT_BLACK]);
|
|
// UI_DrawProportionalString( 74, 206, "71",UI_RIGHT|UI_TINYFONT, colorTable[CT_BLACK]);
|
|
// UI_DrawProportionalString( 74, 395, "345-5",UI_RIGHT|UI_TINYFONT, colorTable[CT_BLACK]);
|
|
//
|
|
// // Opponents frame
|
|
// trap_R_SetColor( colorTable[CT_DKBROWN1]);
|
|
// UI_DrawHandlePic( 348, 221, 16, 32, levelMenuInfo.corner_ur_18_12); // Corner at top
|
|
// UI_DrawHandlePic( 349, 373, 16, 16, levelMenuInfo.corner_lr_7_12); // Corner at bottom
|
|
// UI_DrawHandlePic( 84, 221, 270, 18, uis.whiteShader); // Top of level info frame
|
|
// UI_DrawHandlePic( 352, 245, 12, 125, uis.whiteShader); // Right side of level info frame
|
|
// UI_DrawHandlePic( 83, 376, 272, 7, uis.whiteShader); // Bottom of frame
|
|
// UI_DrawProportionalString( 88, 223, menu_normal_text[MNT_OPPONENTS], UI_SMALLFONT, colorTable[CT_BLACK] );
|
|
//
|
|
// // Player info frame
|
|
// trap_R_SetColor( colorTable[CT_DKBROWN1]);
|
|
// UI_DrawHandlePic( 367, 221, 16, 32, levelMenuInfo.corner_ul_18_12); // Corner at top
|
|
// UI_DrawHandlePic( 366, 373, -16, 16, levelMenuInfo.corner_lr_7_12); // Corner at bottom
|
|
// UI_DrawHandlePic( 377, 221, 235, 18, uis.whiteShader); // Top of player info frame
|
|
// UI_DrawHandlePic( 367, 245, 12, 125, uis.whiteShader); // Left side of frame
|
|
// UI_DrawHandlePic( 379, 376, 233, 7, uis.whiteShader); // Bottom of frame
|
|
//
|
|
//
|
|
// // Draw player name
|
|
// trap_Cvar_VariableStringBuffer( "name", string, 32 );
|
|
// Q_CleanStr( string );
|
|
// UI_DrawProportionalString( 390, 223, string, UI_SMALLFONT, colorTable[CT_BLACK] );
|
|
//
|
|
// // check for model changes
|
|
// trap_Cvar_VariableStringBuffer( "model", buf, sizeof(buf) );
|
|
// if( Q_stricmp( buf, levelMenuInfo.playerModel ) != 0 )
|
|
// {
|
|
// Q_strncpyz( levelMenuInfo.playerModel, buf, sizeof(levelMenuInfo.playerModel) );
|
|
// PlayerIcon( levelMenuInfo.playerModel, levelMenuInfo.playerPicName, sizeof(levelMenuInfo.playerPicName) );
|
|
// levelMenuInfo.item_player.shader = 0;
|
|
// }
|
|
//
|
|
// // standard menu drawing
|
|
// Menu_Draw( &levelMenuInfo.menu );
|
|
//
|
|
// // draw player award levels
|
|
///* y = AWARDS_Y;
|
|
// i = 0;
|
|
// for( n = 0; n < AWARD_MAX; n++ )
|
|
// {
|
|
// level = levelMenuInfo.awardLevels[n];
|
|
// if( level > 0 )
|
|
// {
|
|
// x = 385 + (i * 38);
|
|
// i++;
|
|
//
|
|
// if( level == 1 )
|
|
// {
|
|
// continue;
|
|
// }
|
|
//
|
|
// if( level >= 1000000 )
|
|
// {
|
|
// Com_sprintf( string, sizeof(string), "%im", level / 1000000 );
|
|
// }
|
|
// else if( level >= 1000 ) {
|
|
// Com_sprintf( string, sizeof(string), "%ik", level / 1000 );
|
|
// }
|
|
// else
|
|
// {
|
|
// Com_sprintf( string, sizeof(string), "%i", level );
|
|
// }
|
|
//
|
|
// UI_DrawString( x + 19, y + 38, string, UI_CENTER, colorTable[CT_LTGOLD1] );
|
|
// }
|
|
// }
|
|
//*/
|
|
// // Print black rectangle below map picture
|
|
// for ( n = 0; n < levelMenuInfo.numMaps; n++ )
|
|
// {
|
|
// x = levelMenuInfo.item_maps[n].generic.x;
|
|
// y = levelMenuInfo.item_maps[n].generic.y;
|
|
// UI_FillRect( x, y + 87, 116, 18, colorTable[CT_BLACK] );
|
|
// }
|
|
//
|
|
// // show levelshots for levels of current tier
|
|
// Vector4Copy( color_white, color );
|
|
// color[3] = 0.5+0.5*sin(uis.realtime/PULSE_DIVISOR);
|
|
// for ( n = 0; n < levelMenuInfo.numMaps; n++ )
|
|
// {
|
|
// x = levelMenuInfo.item_maps[n].generic.x;
|
|
// y = levelMenuInfo.item_maps[n].generic.y;
|
|
//
|
|
// // Map name below picture
|
|
// UI_DrawProportionalString( x + (MAP_WIDTH/2), y + 90, levelMenuInfo.levelLongNames[n], UI_CENTER|UI_TINYFONT, colorTable[CT_WHITE] );
|
|
//
|
|
// if( levelMenuInfo.levelScores[n] == 1 )
|
|
// {
|
|
// UI_DrawHandlePic( x, y, 48, 48, levelMenuInfo.levelCompletePic[levelMenuInfo.levelScoresSkill[n] - 1] );
|
|
// }
|
|
//
|
|
// if ( n == selectedArena )
|
|
// {
|
|
// if( Menu_ItemAtCursor( &levelMenuInfo.menu ) == &levelMenuInfo.item_maps[n] )
|
|
// {
|
|
// trap_R_SetColor( color );
|
|
// }
|
|
//
|
|
// UI_DrawHandlePic( x-1, y-1, MAP_WIDTH, 118 - 14, levelMenuInfo.levelSelectedPic );
|
|
//
|
|
// trap_R_SetColor( NULL );
|
|
// }
|
|
// else if( Menu_ItemAtCursor( &levelMenuInfo.menu ) == &levelMenuInfo.item_maps[n] )
|
|
// {
|
|
// trap_R_SetColor( color );
|
|
// UI_DrawHandlePic( x-1, y-1, MAP_WIDTH, 118 - 14, levelMenuInfo.levelSelectedPic );
|
|
// trap_R_SetColor( NULL );
|
|
// }
|
|
// }
|
|
//
|
|
// // show map name and long name of selected level
|
|
// Q_strncpyz( buf, Info_ValueForKey( levelMenuInfo.selectedArenaInfo, "map" ), 20 );
|
|
// Q_strupr( buf );
|
|
// Com_sprintf(string, sizeof(string),"%s",buf);
|
|
// UI_DrawProportionalString( 169, 197, string, UI_TINYFONT, colorTable[CT_BLACK] );
|
|
//
|
|
// fraglimit = atoi( Info_ValueForKey( levelMenuInfo.selectedArenaInfo, "fraglimit" ) );
|
|
// UI_DrawProportionalString( 372, 197, va("%s %i", menu_normal_text[MNT_POINTLIMIT],fraglimit) , UI_TINYFONT, colorTable[CT_BLACK] );
|
|
//
|
|
// // draw bot opponents
|
|
// y = 242;
|
|
// pad = 64 + 3;
|
|
// x = 84 - pad;
|
|
// for( n = 0; n < levelMenuInfo.numBots; n++ )
|
|
// {
|
|
// if (n == 4) // Next line of bad guys
|
|
// {
|
|
// y +=68;
|
|
// x = 84 - pad;
|
|
// }
|
|
//
|
|
// x += pad;
|
|
// if( levelMenuInfo.botPics[n] )
|
|
// {
|
|
// UI_DrawHandlePic( x, y, 64, 64, levelMenuInfo.botPics[n]);
|
|
// }
|
|
// else
|
|
// {
|
|
// UI_FillRect( x, y, 64, 64, colorTable[CT_BLACK] );
|
|
// UI_DrawProportionalString( x+22, y+18, "?", UI_BIGFONT, color_orange );
|
|
// }
|
|
//
|
|
// UI_DrawProportionalString( x, y + 54, levelMenuInfo.botNames[n], UI_TINYFONT, colorTable[CT_LTORANGE] );
|
|
//
|
|
// }
|
|
//
|
|
//
|
|
// // Left rounded ends for buttons
|
|
// trap_R_SetColor( colorTable[levelMenuInfo.mainmenu.color]);
|
|
// UI_DrawHandlePic(110 - 14, levelMenuInfo.mainmenu.generic.y,
|
|
// MENU_BUTTON_MED_HEIGHT, MENU_BUTTON_MED_HEIGHT, uis.graphicButtonLeftEnd);
|
|
//
|
|
// trap_R_SetColor( colorTable[levelMenuInfo.back.color]);
|
|
// UI_DrawHandlePic(110 - 14, levelMenuInfo.back.generic.y,
|
|
// MENU_BUTTON_MED_HEIGHT, MENU_BUTTON_MED_HEIGHT, uis.graphicButtonLeftEnd);
|
|
//
|
|
// trap_R_SetColor( colorTable[levelMenuInfo.item_reset.color]);
|
|
// UI_DrawHandlePic(levelMenuInfo.item_reset.generic.x - 14, levelMenuInfo.item_reset.generic.y,
|
|
// MENU_BUTTON_MED_HEIGHT, MENU_BUTTON_MED_HEIGHT, uis.graphicButtonLeftEnd);
|
|
//
|
|
// trap_R_SetColor( colorTable[levelMenuInfo.playerinfo.color]);
|
|
// UI_DrawHandlePic(levelMenuInfo.playerinfo.generic.x - 14, levelMenuInfo.playerinfo.generic.y,
|
|
// MENU_BUTTON_MED_HEIGHT, MENU_BUTTON_MED_HEIGHT, uis.graphicButtonLeftEnd);
|
|
//
|
|
// trap_R_SetColor( colorTable[levelMenuInfo.create.color]);
|
|
// UI_DrawHandlePic(levelMenuInfo.create.generic.x - 14, levelMenuInfo.create.generic.y,
|
|
// MENU_BUTTON_MED_HEIGHT, MENU_BUTTON_MED_HEIGHT, uis.graphicButtonLeftEnd);
|
|
//
|
|
// trap_R_SetColor( colorTable[levelMenuInfo.advanced.color]);
|
|
// UI_DrawHandlePic(levelMenuInfo.advanced.generic.x - 14, levelMenuInfo.advanced.generic.y,
|
|
// MENU_BUTTON_MED_HEIGHT, MENU_BUTTON_MED_HEIGHT, uis.graphicButtonLeftEnd);
|
|
//
|
|
//
|
|
//}
|
|
//
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_SPLevelMenu_Cache
|
|
//=================
|
|
//*/
|
|
//void UI_SPLevelMenu_Cache( void )
|
|
//{
|
|
// int n;
|
|
//
|
|
// trap_R_RegisterShaderNoMip( ART_MAP_UNKNOWN );
|
|
//
|
|
// for( n = 0; n < AWARD_MAX; n++ )
|
|
// {
|
|
// trap_R_RegisterShaderNoMip( ui_medalPicNames[n] );
|
|
// levelMenuInfo.awardSounds[n] = trap_S_RegisterSound( ui_medalSounds[n] );
|
|
// }
|
|
//
|
|
// levelMenuInfo.corner_ul_18_12 = trap_R_RegisterShaderNoMip("menu/common/corner_ul_18_12");
|
|
// levelMenuInfo.corner_ur_18_12 = trap_R_RegisterShaderNoMip("menu/common/corner_ur_18_12");
|
|
// levelMenuInfo.corner_lr_7_12 = trap_R_RegisterShaderNoMip("menu/common/corner_lr_7_12");
|
|
// levelMenuInfo.corner_ll_18_34 = trap_R_RegisterShaderNoMip("menu/common/corner_ll_18_34");
|
|
//
|
|
// levelMenuInfo.levelSelectedPic = trap_R_RegisterShaderNoMip( ART_LEVELFRAME_SELECTED );
|
|
// levelMenuInfo.levelFocusPic = trap_R_RegisterShaderNoMip( ART_LEVELFRAME_FOCUS );
|
|
// levelMenuInfo.levelCompletePic[0] = trap_R_RegisterShaderNoMip( ART_MAP_COMPLETE1 );
|
|
// levelMenuInfo.levelCompletePic[1] = trap_R_RegisterShaderNoMip( ART_MAP_COMPLETE2 );
|
|
// levelMenuInfo.levelCompletePic[2] = trap_R_RegisterShaderNoMip( ART_MAP_COMPLETE3 );
|
|
// levelMenuInfo.levelCompletePic[3] = trap_R_RegisterShaderNoMip( ART_MAP_COMPLETE4 );
|
|
// levelMenuInfo.levelCompletePic[4] = trap_R_RegisterShaderNoMip( ART_MAP_COMPLETE5 );
|
|
//
|
|
//}
|
|
//
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_SPLevelMenu_Init
|
|
//=================
|
|
//*/
|
|
//static void UI_SPLevelMenu_Init( void )
|
|
//{
|
|
// int skill;
|
|
// int n;
|
|
// int x, y;
|
|
// int count;
|
|
// char buf[MAX_QPATH];
|
|
// int mapHeight,mapWidth;
|
|
//
|
|
//
|
|
// // What skill level are we playing at??
|
|
// skill = (int)trap_Cvar_VariableValue( "g_spSkill" );
|
|
// if( skill < 1 || skill > 5 )
|
|
// {
|
|
// trap_Cvar_Set( "g_spSkill", "2" );
|
|
// skill = 2;
|
|
// }
|
|
//
|
|
// memset( &levelMenuInfo, 0, sizeof(levelMenuInfo) );
|
|
// levelMenuInfo.menu.fullscreen = qtrue;
|
|
// levelMenuInfo.menu.wrapAround = qtrue;
|
|
// levelMenuInfo.menu.draw = UI_SPLevelMenu_MenuDraw;
|
|
// levelMenuInfo.menu.descX = MENU_DESC_X;
|
|
// levelMenuInfo.menu.descY = MENU_DESC_Y;
|
|
// levelMenuInfo.menu.titleX = MENU_TITLE_X;
|
|
// levelMenuInfo.menu.titleY = MENU_TITLE_Y;
|
|
// levelMenuInfo.menu.titleI = MNT_SINGLEPLAYER_TITLE;
|
|
// levelMenuInfo.menu.footNoteEnum = MNT_SINGLEPLAYER;
|
|
//
|
|
// UI_SPLevelMenu_Cache();
|
|
//
|
|
// levelMenuInfo.mainmenu.generic.type = MTYPE_BITMAP;
|
|
// levelMenuInfo.mainmenu.generic.flags = QMF_HIGHLIGHT_IF_FOCUS;
|
|
// levelMenuInfo.mainmenu.generic.x = 110;
|
|
// levelMenuInfo.mainmenu.generic.y = 391;
|
|
// levelMenuInfo.mainmenu.generic.name = BUTTON_GRAPHIC_LONGRIGHT;
|
|
// levelMenuInfo.mainmenu.generic.id = ID_MAINMENU;
|
|
// levelMenuInfo.mainmenu.generic.callback = UI_SPLevelMenu_BackEvent;
|
|
// levelMenuInfo.mainmenu.width = MENU_BUTTON_MED_WIDTH;
|
|
// levelMenuInfo.mainmenu.height = MENU_BUTTON_MED_HEIGHT;
|
|
// levelMenuInfo.mainmenu.color = CT_DKPURPLE1;
|
|
// levelMenuInfo.mainmenu.color2 = CT_LTPURPLE1;
|
|
// levelMenuInfo.mainmenu.textX = MENU_BUTTON_TEXT_X;
|
|
// levelMenuInfo.mainmenu.textY = MENU_BUTTON_TEXT_Y;
|
|
// levelMenuInfo.mainmenu.textEnum = MBT_MAINMENU;
|
|
// levelMenuInfo.mainmenu.textcolor = CT_BLACK;
|
|
// levelMenuInfo.mainmenu.textcolor2 = CT_WHITE;
|
|
//
|
|
// levelMenuInfo.back.generic.type = MTYPE_BITMAP;
|
|
// levelMenuInfo.back.generic.flags = QMF_HIGHLIGHT_IF_FOCUS;
|
|
// levelMenuInfo.back.generic.x = 110;
|
|
// levelMenuInfo.back.generic.y = 415;
|
|
// levelMenuInfo.back.generic.name = BUTTON_GRAPHIC_LONGRIGHT;
|
|
// levelMenuInfo.back.generic.id = ID_BACK;
|
|
// levelMenuInfo.back.generic.callback = UI_SPLevelMenu_BackEvent;
|
|
// levelMenuInfo.back.width = MENU_BUTTON_MED_WIDTH;
|
|
// levelMenuInfo.back.height = MENU_BUTTON_MED_HEIGHT;
|
|
// levelMenuInfo.back.color = CT_DKPURPLE1;
|
|
// levelMenuInfo.back.color2 = CT_LTPURPLE1;
|
|
// levelMenuInfo.back.textX = MENU_BUTTON_TEXT_X;
|
|
// levelMenuInfo.back.textY = MENU_BUTTON_TEXT_Y;
|
|
// levelMenuInfo.back.textEnum = MBT_BACK;
|
|
// levelMenuInfo.back.textcolor = CT_BLACK;
|
|
// levelMenuInfo.back.textcolor2 = CT_WHITE;
|
|
//
|
|
// levelMenuInfo.item_leftarrow.generic.type = MTYPE_BITMAP;
|
|
// levelMenuInfo.item_leftarrow.generic.flags = QMF_HIGHLIGHT_IF_FOCUS;
|
|
// levelMenuInfo.item_leftarrow.generic.name = "menu/common/arrow_left_16.tga";
|
|
// levelMenuInfo.item_leftarrow.generic.x = 135;
|
|
// levelMenuInfo.item_leftarrow.generic.y = 195;
|
|
// levelMenuInfo.item_leftarrow.generic.callback = UI_SPLevelMenu_LeftArrowEvent;
|
|
// levelMenuInfo.item_leftarrow.generic.id = ID_LEFTARROW;
|
|
// levelMenuInfo.item_leftarrow.width = 16;
|
|
// levelMenuInfo.item_leftarrow.height = 16;
|
|
// levelMenuInfo.item_leftarrow.color = CT_DKGOLD1;
|
|
// levelMenuInfo.item_leftarrow.color2 = CT_LTGOLD1;
|
|
// levelMenuInfo.item_leftarrow.textX = MENU_BUTTON_TEXT_X;
|
|
// levelMenuInfo.item_leftarrow.textY = MENU_BUTTON_TEXT_Y;
|
|
// levelMenuInfo.item_leftarrow.textEnum = MBT_PREVMAPS;
|
|
// levelMenuInfo.item_leftarrow.textcolor = CT_BLACK;
|
|
// levelMenuInfo.item_leftarrow.textcolor2 = CT_WHITE;
|
|
//
|
|
// levelMenuInfo.item_rightarrow.generic.type = MTYPE_BITMAP;
|
|
// levelMenuInfo.item_rightarrow.generic.name = "menu/common/arrow_right_16.tga";
|
|
// levelMenuInfo.item_rightarrow.generic.flags = QMF_HIGHLIGHT_IF_FOCUS;
|
|
// levelMenuInfo.item_rightarrow.generic.x = 558;
|
|
// levelMenuInfo.item_rightarrow.generic.y = 195;
|
|
// levelMenuInfo.item_rightarrow.generic.callback = UI_SPLevelMenu_RightArrowEvent;
|
|
// levelMenuInfo.item_rightarrow.generic.id = ID_RIGHTARROW;
|
|
// levelMenuInfo.item_rightarrow.width = 16;
|
|
// levelMenuInfo.item_rightarrow.height = 16;
|
|
// levelMenuInfo.item_rightarrow.color = CT_DKGOLD1;
|
|
// levelMenuInfo.item_rightarrow.color2 = CT_LTGOLD1;
|
|
// levelMenuInfo.item_rightarrow.textX = MENU_BUTTON_TEXT_X;
|
|
// levelMenuInfo.item_rightarrow.textY = MENU_BUTTON_TEXT_Y;
|
|
// levelMenuInfo.item_rightarrow.textEnum = MBT_PREVMAPS;
|
|
// levelMenuInfo.item_rightarrow.textcolor = CT_BLACK;
|
|
// levelMenuInfo.item_rightarrow.textcolor2 = CT_WHITE;
|
|
//
|
|
//
|
|
//
|
|
// // Map pics
|
|
// y = 84;
|
|
// x = 130;
|
|
// mapHeight = 87;
|
|
// mapWidth = 116;
|
|
// levelMenuInfo.item_maps[0].generic.type = MTYPE_BITMAP;
|
|
// levelMenuInfo.item_maps[0].generic.name = levelMenuInfo.levelPicNames[0];
|
|
// levelMenuInfo.item_maps[0].generic.flags = QMF_LEFT_JUSTIFY;
|
|
// levelMenuInfo.item_maps[0].generic.x = x;
|
|
// levelMenuInfo.item_maps[0].generic.y = y;
|
|
// levelMenuInfo.item_maps[0].generic.id = ID_PICTURE0;
|
|
// levelMenuInfo.item_maps[0].generic.callback = UI_SPLevelMenu_LevelEvent;
|
|
// levelMenuInfo.item_maps[0].width = mapWidth;
|
|
// levelMenuInfo.item_maps[0].height = mapHeight;
|
|
//
|
|
// x += mapWidth + 6;
|
|
// levelMenuInfo.item_maps[1].generic.type = MTYPE_BITMAP;
|
|
// levelMenuInfo.item_maps[1].generic.name = levelMenuInfo.levelPicNames[1];
|
|
// levelMenuInfo.item_maps[1].generic.flags = QMF_LEFT_JUSTIFY;
|
|
// levelMenuInfo.item_maps[1].generic.x = x;
|
|
// levelMenuInfo.item_maps[1].generic.y = y;
|
|
// levelMenuInfo.item_maps[1].generic.id = ID_PICTURE1;
|
|
// levelMenuInfo.item_maps[1].generic.callback = UI_SPLevelMenu_LevelEvent;
|
|
// levelMenuInfo.item_maps[1].width = mapWidth;
|
|
// levelMenuInfo.item_maps[1].height = mapHeight;
|
|
//
|
|
// x += mapWidth + 6;
|
|
// levelMenuInfo.item_maps[2].generic.type = MTYPE_BITMAP;
|
|
// levelMenuInfo.item_maps[2].generic.name = levelMenuInfo.levelPicNames[2];
|
|
// levelMenuInfo.item_maps[2].generic.flags = QMF_LEFT_JUSTIFY;
|
|
// levelMenuInfo.item_maps[2].generic.x = x;
|
|
// levelMenuInfo.item_maps[2].generic.y = y;
|
|
// levelMenuInfo.item_maps[2].generic.id = ID_PICTURE2;
|
|
// levelMenuInfo.item_maps[2].generic.callback = UI_SPLevelMenu_LevelEvent;
|
|
// levelMenuInfo.item_maps[2].width = mapWidth;
|
|
// levelMenuInfo.item_maps[2].height = mapHeight;
|
|
//
|
|
// x += mapWidth + 6;
|
|
// levelMenuInfo.item_maps[3].generic.type = MTYPE_BITMAP;
|
|
// levelMenuInfo.item_maps[3].generic.name = levelMenuInfo.levelPicNames[3];
|
|
// levelMenuInfo.item_maps[3].generic.flags = QMF_LEFT_JUSTIFY;
|
|
// levelMenuInfo.item_maps[3].generic.x = x;
|
|
// levelMenuInfo.item_maps[3].generic.y = y;
|
|
// levelMenuInfo.item_maps[3].generic.id = ID_PICTURE3;
|
|
// levelMenuInfo.item_maps[3].generic.callback = UI_SPLevelMenu_LevelEvent;
|
|
// levelMenuInfo.item_maps[3].width = mapWidth;
|
|
// levelMenuInfo.item_maps[3].height = mapHeight;
|
|
//
|
|
// levelMenuInfo.item_reset.generic.type = MTYPE_BITMAP;
|
|
// levelMenuInfo.item_reset.generic.flags = QMF_HIGHLIGHT_IF_FOCUS;
|
|
// levelMenuInfo.item_reset.generic.x = 432;
|
|
// levelMenuInfo.item_reset.generic.y = 350;
|
|
// levelMenuInfo.item_reset.generic.name = BUTTON_GRAPHIC_LONGRIGHT;
|
|
// levelMenuInfo.item_reset.generic.id = ID_RESET;
|
|
// levelMenuInfo.item_reset.generic.callback = UI_SPLevelMenu_ResetEvent;
|
|
// levelMenuInfo.item_reset.width = MENU_BUTTON_MED_WIDTH;
|
|
// levelMenuInfo.item_reset.height = MENU_BUTTON_MED_HEIGHT;
|
|
// levelMenuInfo.item_reset.color = CT_DKPURPLE1;
|
|
// levelMenuInfo.item_reset.color2 = CT_LTPURPLE1;
|
|
// levelMenuInfo.item_reset.textX = MENU_BUTTON_TEXT_X;
|
|
// levelMenuInfo.item_reset.textY = MENU_BUTTON_TEXT_Y;
|
|
// levelMenuInfo.item_reset.textEnum = MBT_RESETPROGRESS;
|
|
// levelMenuInfo.item_reset.textcolor = CT_BLACK;
|
|
// levelMenuInfo.item_reset.textcolor2 = CT_WHITE;
|
|
//
|
|
// // Player pic
|
|
// trap_Cvar_VariableStringBuffer( "model", levelMenuInfo.playerModel, sizeof(levelMenuInfo.playerModel) );
|
|
// PlayerIcon( levelMenuInfo.playerModel, levelMenuInfo.playerPicName, sizeof(levelMenuInfo.playerPicName) );
|
|
// levelMenuInfo.item_player.generic.type = MTYPE_BITMAP;
|
|
// levelMenuInfo.item_player.generic.flags = QMF_INACTIVE;
|
|
// levelMenuInfo.item_player.generic.name = levelMenuInfo.playerPicName;
|
|
// levelMenuInfo.item_player.generic.x = 461;
|
|
// levelMenuInfo.item_player.generic.y = 247;
|
|
// levelMenuInfo.item_player.generic.id = ID_PLAYERPIC;
|
|
// levelMenuInfo.item_player.width = 64;
|
|
// levelMenuInfo.item_player.height = 64;
|
|
//
|
|
// levelMenuInfo.playerinfo.generic.type = MTYPE_BITMAP;
|
|
// levelMenuInfo.playerinfo.generic.name = BUTTON_GRAPHIC_LONGRIGHT;
|
|
// levelMenuInfo.playerinfo.generic.flags = QMF_HIGHLIGHT_IF_FOCUS;
|
|
// levelMenuInfo.playerinfo.generic.x = 432;
|
|
// levelMenuInfo.playerinfo.generic.y = 325;
|
|
// levelMenuInfo.playerinfo.generic.callback = UI_SPLevelMenu_PlayerEvent;
|
|
// levelMenuInfo.playerinfo.generic.id = ID_PLAYERINFO;
|
|
// levelMenuInfo.playerinfo.width = MENU_BUTTON_MED_WIDTH;
|
|
// levelMenuInfo.playerinfo.height = MENU_BUTTON_MED_HEIGHT;
|
|
// levelMenuInfo.playerinfo.color = CT_DKPURPLE1;
|
|
// levelMenuInfo.playerinfo.color2 = CT_LTPURPLE1;
|
|
// levelMenuInfo.playerinfo.textX = MENU_BUTTON_TEXT_X;
|
|
// levelMenuInfo.playerinfo.textY = MENU_BUTTON_TEXT_Y;
|
|
// levelMenuInfo.playerinfo.textEnum = MBT_PLAYERINFO;
|
|
// levelMenuInfo.playerinfo.textcolor = CT_BLACK;
|
|
// levelMenuInfo.playerinfo.textcolor2 = CT_WHITE;
|
|
//
|
|
//
|
|
// for( n = 0; n < AWARD_MAX; n++ )
|
|
// {
|
|
// levelMenuInfo.awardLevels[n] = UI_GetAwardLevel( n );
|
|
// }
|
|
//// levelMenuInfo.awardLevels[AWARD_FRAGS] = 100 * (levelMenuInfo.awardLevels[AWARD_FRAGS] / 100);
|
|
//
|
|
// y = AWARDS_Y;
|
|
// count = 0;
|
|
// for( n = 0; n < AWARD_MAX; n++ )
|
|
// {
|
|
// if( levelMenuInfo.awardLevels[n] )
|
|
// {
|
|
// x = 385 + (count * 38);
|
|
//
|
|
// levelMenuInfo.item_awards[count].generic.type = MTYPE_BITMAP;
|
|
// levelMenuInfo.item_awards[count].generic.name = ui_medalPicNames[n];
|
|
// levelMenuInfo.item_awards[count].generic.flags = QMF_LEFT_JUSTIFY|QMF_SILENT|QMF_MOUSEONLY;
|
|
// levelMenuInfo.item_awards[count].generic.x = x;
|
|
// levelMenuInfo.item_awards[count].generic.y = y;
|
|
// levelMenuInfo.item_awards[count].generic.id = ID_AWARD1 + n;
|
|
// levelMenuInfo.item_awards[count].generic.callback = UI_SPLevelMenu_AwardEvent;
|
|
// levelMenuInfo.item_awards[count].width = 34;
|
|
// levelMenuInfo.item_awards[count].height = 34;
|
|
// count++;
|
|
// }
|
|
// }
|
|
//
|
|
// levelMenuInfo.create.generic.type = MTYPE_BITMAP;
|
|
// levelMenuInfo.create.generic.flags = QMF_HIGHLIGHT_IF_FOCUS;
|
|
// levelMenuInfo.create.generic.x = 293;
|
|
// levelMenuInfo.create.generic.y = 391;
|
|
// levelMenuInfo.create.generic.name = BUTTON_GRAPHIC_LONGRIGHT;
|
|
// levelMenuInfo.create.generic.id = ID_CUSTOM;
|
|
// levelMenuInfo.create.generic.callback = UI_SPLevelMenu_CreateEvent;
|
|
// levelMenuInfo.create.width = MENU_BUTTON_MED_WIDTH;
|
|
// levelMenuInfo.create.height = MENU_BUTTON_MED_HEIGHT;
|
|
// levelMenuInfo.create.color = CT_DKPURPLE1;
|
|
// levelMenuInfo.create.color2 = CT_LTPURPLE1;
|
|
// levelMenuInfo.create.textX = MENU_BUTTON_TEXT_X;
|
|
// levelMenuInfo.create.textY = MENU_BUTTON_TEXT_Y;
|
|
// levelMenuInfo.create.textEnum = MBT_CREATEMATCH;
|
|
// levelMenuInfo.create.textcolor = CT_BLACK;
|
|
// levelMenuInfo.create.textcolor2 = CT_WHITE;
|
|
//
|
|
// levelMenuInfo.advanced.generic.type = MTYPE_BITMAP;
|
|
// levelMenuInfo.advanced.generic.flags = QMF_HIGHLIGHT_IF_FOCUS;
|
|
// levelMenuInfo.advanced.generic.x = 293;
|
|
// levelMenuInfo.advanced.generic.y = 415;
|
|
// levelMenuInfo.advanced.generic.name = BUTTON_GRAPHIC_LONGRIGHT;
|
|
// levelMenuInfo.advanced.generic.id = ID_ADVANCED;
|
|
// levelMenuInfo.advanced.generic.callback = UI_SPLevelMenu_AdvancedEvent;
|
|
// levelMenuInfo.advanced.width = MENU_BUTTON_MED_WIDTH;
|
|
// levelMenuInfo.advanced.height = MENU_BUTTON_MED_HEIGHT;
|
|
// levelMenuInfo.advanced.color = CT_DKPURPLE1;
|
|
// levelMenuInfo.advanced.color2 = CT_LTPURPLE1;
|
|
// levelMenuInfo.advanced.textX = MENU_BUTTON_TEXT_X;
|
|
// levelMenuInfo.advanced.textY = MENU_BUTTON_TEXT_Y;
|
|
// levelMenuInfo.advanced.textEnum = MBT_ADVANCEDSERVER;
|
|
// levelMenuInfo.advanced.textcolor = CT_BLACK;
|
|
// levelMenuInfo.advanced.textcolor2 = CT_WHITE;
|
|
//
|
|
// levelMenuInfo.fight.generic.type = MTYPE_BITMAP;
|
|
// levelMenuInfo.fight.generic.flags = QMF_HIGHLIGHT_IF_FOCUS;
|
|
// levelMenuInfo.fight.generic.x = 462;
|
|
// levelMenuInfo.fight.generic.y = 391;
|
|
// levelMenuInfo.fight.generic.name = "menu/common/square.tga";
|
|
// levelMenuInfo.fight.generic.id = ID_NEXT;
|
|
// levelMenuInfo.fight.generic.callback = UI_SPLevelMenu_NextEvent;
|
|
// levelMenuInfo.fight.width = 150;
|
|
// levelMenuInfo.fight.height = 42;
|
|
// levelMenuInfo.fight.color = CT_DKPURPLE1;
|
|
// levelMenuInfo.fight.color2 = CT_LTPURPLE1;
|
|
// levelMenuInfo.fight.textX = 2;
|
|
// levelMenuInfo.fight.textY = 2;
|
|
// levelMenuInfo.fight.textEnum = MBT_ENGAGE;
|
|
// levelMenuInfo.fight.textcolor = CT_BLACK;
|
|
// levelMenuInfo.fight.textcolor2 = CT_WHITE;
|
|
//
|
|
// levelMenuInfo.item_null.generic.type = MTYPE_BITMAP;
|
|
// levelMenuInfo.item_null.generic.flags = QMF_LEFT_JUSTIFY|QMF_MOUSEONLY|QMF_SILENT;
|
|
// levelMenuInfo.item_null.generic.x = 0;
|
|
// levelMenuInfo.item_null.generic.y = 0;
|
|
// levelMenuInfo.item_null.width = 640;
|
|
// levelMenuInfo.item_null.height = 480;
|
|
//
|
|
// Menu_AddItem( &levelMenuInfo.menu, &levelMenuInfo.mainmenu );
|
|
// Menu_AddItem( &levelMenuInfo.menu, &levelMenuInfo.back );
|
|
// Menu_AddItem( &levelMenuInfo.menu, &levelMenuInfo.item_leftarrow );
|
|
// Menu_AddItem( &levelMenuInfo.menu, &levelMenuInfo.item_rightarrow );
|
|
// Menu_AddItem( &levelMenuInfo.menu, &levelMenuInfo.item_maps[0] );
|
|
// Menu_AddItem( &levelMenuInfo.menu, &levelMenuInfo.item_maps[1] );
|
|
// Menu_AddItem( &levelMenuInfo.menu, &levelMenuInfo.item_maps[2] );
|
|
// Menu_AddItem( &levelMenuInfo.menu, &levelMenuInfo.item_maps[3] );
|
|
// // Extend to pick up names at bottom of pictures
|
|
// levelMenuInfo.item_maps[0].generic.bottom += 18;
|
|
// levelMenuInfo.item_maps[1].generic.bottom += 18;
|
|
// levelMenuInfo.item_maps[2].generic.bottom += 18;
|
|
// levelMenuInfo.item_maps[3].generic.bottom += 18;
|
|
//
|
|
// Menu_AddItem( &levelMenuInfo.menu, &levelMenuInfo.item_player );
|
|
//
|
|
//// for( n = 0; n < count; n++ )
|
|
//// {
|
|
//// Menu_AddItem( &levelMenuInfo.menu, &levelMenuInfo.item_awards[n] );
|
|
//// }
|
|
//
|
|
// Menu_AddItem( &levelMenuInfo.menu, &levelMenuInfo.item_reset );
|
|
// Menu_AddItem( &levelMenuInfo.menu, &levelMenuInfo.playerinfo );
|
|
// Menu_AddItem( &levelMenuInfo.menu, &levelMenuInfo.create );
|
|
// Menu_AddItem( &levelMenuInfo.menu, &levelMenuInfo.advanced );
|
|
// Menu_AddItem( &levelMenuInfo.menu, &levelMenuInfo.fight );
|
|
// Menu_AddItem( &levelMenuInfo.menu, &levelMenuInfo.item_null );
|
|
//
|
|
// trap_Cvar_VariableStringBuffer( "ui_spSelection", buf, sizeof(buf) );
|
|
// if( *buf )
|
|
// {
|
|
// n = atoi( buf );
|
|
// selectedArenaSet = n / ARENAS_PER_TIER;
|
|
// selectedArena = n % ARENAS_PER_TIER;
|
|
// }
|
|
// else
|
|
// {
|
|
// selectedArenaSet = currentSet;
|
|
// selectedArena = currentGame;
|
|
// }
|
|
//
|
|
// UI_SPLevelMenu_SetMenuItems();
|
|
//}
|
|
//
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_SPLevelMenu
|
|
//=================
|
|
//*/
|
|
//void UI_SPLevelMenu( void )
|
|
//{
|
|
// int level;
|
|
// int trainingLevel;
|
|
// const char *arenaInfo;
|
|
//
|
|
// trainingTier = -1;
|
|
// arenaInfo = UI_GetSpecialArenaInfo( "training" );
|
|
// if( arenaInfo )
|
|
// {
|
|
// minTier = trainingTier;
|
|
// trainingLevel = atoi( Info_ValueForKey( arenaInfo, "num" ) );
|
|
// }
|
|
// else
|
|
// {
|
|
// minTier = 0;
|
|
// trainingLevel = -2;
|
|
// }
|
|
//
|
|
// finalTier = UI_GetNumSPTiers();
|
|
// arenaInfo = UI_GetSpecialArenaInfo( "final" );
|
|
// if( arenaInfo ) {
|
|
// maxTier = finalTier;
|
|
// }
|
|
// else
|
|
// {
|
|
// maxTier = finalTier - 1;
|
|
// if( maxTier < minTier )
|
|
// {
|
|
// maxTier = minTier;
|
|
// }
|
|
// }
|
|
//
|
|
// level = UI_GetCurrentGame(-1);
|
|
//
|
|
// if ( level == -1 ) {
|
|
// level = UI_GetNumSPArenas() - 1;
|
|
// if( maxTier == finalTier )
|
|
// {
|
|
// level++;
|
|
// }
|
|
// }
|
|
//
|
|
// if( level == trainingLevel )
|
|
// {
|
|
// currentSet = -1;
|
|
// currentGame = 0;
|
|
// }
|
|
// else {
|
|
// currentSet = level / ARENAS_PER_TIER;
|
|
// currentGame = level % ARENAS_PER_TIER;
|
|
// }
|
|
//
|
|
// UI_SPLevelMenu_Init();
|
|
// UI_PushMenu( &levelMenuInfo.menu );
|
|
// Menu_SetCursorToItem( &levelMenuInfo.menu, &levelMenuInfo.fight );
|
|
//
|
|
//}
|
|
//
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_SPLevelMenu_f
|
|
//=================
|
|
//*/
|
|
//void UI_SPLevelMenu_f( void )
|
|
//{
|
|
// trap_Key_SetCatcher( KEYCATCH_UI );
|
|
// uis.menusp = 0;
|
|
// Mouse_Show();
|
|
// UI_SPLevelMenu();
|
|
//}
|
|
//
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_SPLevelMenu_ReInit
|
|
//=================
|
|
//*/
|
|
//void UI_SPLevelMenu_ReInit( void )
|
|
//{
|
|
// levelMenuInfo.reinit = qtrue;
|
|
//}
|
|
//
|
|
//
|
|
///*
|
|
//===============
|
|
//ResetGameMenu_Event
|
|
//===============
|
|
//*/
|
|
//static void ResetGameMenu_Event (void* ptr, int notification)
|
|
//{
|
|
// if (notification != QM_ACTIVATED)
|
|
// return;
|
|
//
|
|
// switch (((menucommon_s*)ptr)->id)
|
|
// {
|
|
// case ID_MAINMENU:
|
|
// UI_PopMenu ();
|
|
// UI_MainMenu();
|
|
// break;
|
|
//
|
|
// case ID_BACK:
|
|
// case ID_NO:
|
|
// UI_PopMenu ();
|
|
// break;
|
|
//
|
|
// case ID_YES:
|
|
// UI_SPLevelMenu_ResetAction(qtrue);
|
|
// break;
|
|
// }
|
|
//}
|
|
//
|
|
///*
|
|
//===============
|
|
//UI_resetGameMenu_Draw
|
|
//===============
|
|
//*/
|
|
//static void UI_resetGameMenu_Draw( void )
|
|
//{
|
|
// int y;
|
|
//
|
|
// // Draw the basic screen layout
|
|
// UI_MenuFrame2(&resetGameMenuInfo.menu);
|
|
//
|
|
// trap_R_SetColor( colorTable[CT_LTBROWN1]);
|
|
// UI_DrawHandlePic(30,203, 47, 186, uis.whiteShader); // Long left column square on bottom 3rd
|
|
//
|
|
// // Box around text
|
|
// trap_R_SetColor( colorTable[CT_LTPURPLE3]);
|
|
// UI_DrawHandlePic(122, 103, 32, 64,resetGameMenuInfo.corner_ul); // Upper left corner
|
|
// UI_DrawHandlePic(122, 284, 32, 32,resetGameMenuInfo.corner_ll); // Lower left corner
|
|
// UI_DrawHandlePic(544, 103, 32, 64,resetGameMenuInfo.corner_ur); // Upper right corner
|
|
// UI_DrawHandlePic(545, 285, 32, 32,resetGameMenuInfo.corner_lr); // Lower right corner
|
|
//
|
|
// UI_DrawHandlePic(132,103, 426, 31, uis.whiteShader); // Top of box
|
|
// UI_DrawHandlePic(122,143, 19, 138, uis.whiteShader); // Left side of box
|
|
// UI_DrawHandlePic(549,143, 19, 138, uis.whiteShader); // Right side of box
|
|
//
|
|
// UI_DrawHandlePic(132,288, 32, 18, uis.whiteShader); // Bottom Left line
|
|
// UI_DrawHandlePic(526,288, 32, 18, uis.whiteShader); // Bottom Right line
|
|
// UI_DrawHandlePic(167,288, 356, 18, uis.whiteShader); // Bottom Middle line
|
|
//
|
|
// // Numbers on frame
|
|
// UI_DrawProportionalString( 74, 66, "66917",UI_RIGHT|UI_TINYFONT, colorTable[CT_BLACK]);
|
|
// UI_DrawProportionalString( 74, 188, "098-145",UI_RIGHT|UI_TINYFONT, colorTable[CT_BLACK]);
|
|
// UI_DrawProportionalString( 74, 206, "324-76",UI_RIGHT|UI_TINYFONT, colorTable[CT_BLACK]);
|
|
// UI_DrawProportionalString( 74, 395, "774570",UI_RIGHT|UI_TINYFONT, colorTable[CT_BLACK]);
|
|
//
|
|
// UI_DrawProportionalString( 150, 107, "63-0999712",UI_TINYFONT, colorTable[CT_BLACK]);
|
|
//
|
|
// y = 172;
|
|
// UI_DrawProportionalString( 176, y, menu_normal_text[MNT_PLAYER_RESET1], UI_SMALLFONT, colorTable[CT_RED] );
|
|
// y+=24;
|
|
// UI_DrawProportionalString( 176, y, menu_normal_text[MNT_PLAYER_RESET2], UI_SMALLFONT, colorTable[CT_RED] );
|
|
// y+=24;
|
|
// UI_DrawProportionalString( 176, y, menu_normal_text[MNT_PLAYER_RESET3], UI_SMALLFONT, colorTable[CT_RED] );
|
|
// y+=24*2;
|
|
// UI_DrawProportionalString( 262, y, menu_normal_text[MNT_RESET_PLAYER],UI_BLINK | UI_SMALLFONT, colorTable[CT_RED] );
|
|
//
|
|
// trap_R_SetColor( colorTable[resetGameMenuInfo.mainmenu.color]);
|
|
// UI_DrawHandlePic(110 - 14, resetGameMenuInfo.mainmenu.generic.y,
|
|
// MENU_BUTTON_MED_HEIGHT, MENU_BUTTON_MED_HEIGHT, uis.graphicButtonLeftEnd);
|
|
//
|
|
// trap_R_SetColor( colorTable[resetGameMenuInfo.back.color]);
|
|
// UI_DrawHandlePic(110 - 14, resetGameMenuInfo.back.generic.y,
|
|
// MENU_BUTTON_MED_HEIGHT, MENU_BUTTON_MED_HEIGHT, uis.graphicButtonLeftEnd);
|
|
//
|
|
// // standard menu drawing
|
|
// Menu_Draw( &resetGameMenuInfo.menu );
|
|
//}
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_ResetGameMenu_Cache
|
|
//=================
|
|
//*/
|
|
//void UI_ResetGameMenu_Cache(void)
|
|
//{
|
|
// resetGameMenuInfo.corner_ul = trap_R_RegisterShaderNoMip("menu/common/corner_ul_19_31.tga");
|
|
// resetGameMenuInfo.corner_ur = trap_R_RegisterShaderNoMip("menu/common/corner_ur_19_31.tga");
|
|
// resetGameMenuInfo.corner_ll = trap_R_RegisterShaderNoMip("menu/common/corner_ll_18_19.tga");
|
|
// resetGameMenuInfo.corner_lr = trap_R_RegisterShaderNoMip("menu/common/corner_lr_18_19.tga");
|
|
//}
|
|
//
|
|
///*
|
|
//=================
|
|
//ResetGameMenu_Init
|
|
//=================
|
|
//*/
|
|
//void ResetGameMenu_Init( void )
|
|
//{
|
|
//
|
|
// memset( &resetGameMenuInfo, 0, sizeof(resetGameMenuInfo) );
|
|
//
|
|
// UI_ResetGameMenu_Cache();
|
|
//
|
|
// resetGameMenuInfo.menu.fullscreen = qtrue;
|
|
// resetGameMenuInfo.menu.wrapAround = qtrue;
|
|
// resetGameMenuInfo.menu.draw = UI_resetGameMenu_Draw;
|
|
// resetGameMenuInfo.menu.descX = MENU_DESC_X;
|
|
// resetGameMenuInfo.menu.descY = MENU_DESC_Y;
|
|
// resetGameMenuInfo.menu.titleX = MENU_TITLE_X;
|
|
// resetGameMenuInfo.menu.titleY = MENU_TITLE_Y;
|
|
// resetGameMenuInfo.menu.titleI = MNT_CONTROLSMENU_TITLE;
|
|
// resetGameMenuInfo.menu.footNoteEnum = MNT_RESETPLAYER;
|
|
//
|
|
// resetGameMenuInfo.mainmenu.generic.type = MTYPE_BITMAP;
|
|
// resetGameMenuInfo.mainmenu.generic.flags = QMF_HIGHLIGHT_IF_FOCUS;
|
|
// resetGameMenuInfo.mainmenu.generic.x = 110;
|
|
// resetGameMenuInfo.mainmenu.generic.y = 391;
|
|
// resetGameMenuInfo.mainmenu.generic.name = BUTTON_GRAPHIC_LONGRIGHT;
|
|
// resetGameMenuInfo.mainmenu.generic.id = ID_MAINMENU;
|
|
// resetGameMenuInfo.mainmenu.generic.callback = ResetGameMenu_Event;
|
|
// resetGameMenuInfo.mainmenu.width = MENU_BUTTON_MED_WIDTH;
|
|
// resetGameMenuInfo.mainmenu.height = MENU_BUTTON_MED_HEIGHT;
|
|
// resetGameMenuInfo.mainmenu.color = CT_DKPURPLE1;
|
|
// resetGameMenuInfo.mainmenu.color2 = CT_LTPURPLE1;
|
|
// resetGameMenuInfo.mainmenu.textX = MENU_BUTTON_TEXT_X;
|
|
// resetGameMenuInfo.mainmenu.textY = MENU_BUTTON_TEXT_Y;
|
|
// resetGameMenuInfo.mainmenu.textEnum = MBT_MAINMENU;
|
|
// resetGameMenuInfo.mainmenu.textcolor = CT_BLACK;
|
|
// resetGameMenuInfo.mainmenu.textcolor2 = CT_WHITE;
|
|
//
|
|
// resetGameMenuInfo.back.generic.type = MTYPE_BITMAP;
|
|
// resetGameMenuInfo.back.generic.flags = QMF_HIGHLIGHT_IF_FOCUS;
|
|
// resetGameMenuInfo.back.generic.x = 110;
|
|
// resetGameMenuInfo.back.generic.y = 415;
|
|
// resetGameMenuInfo.back.generic.name = BUTTON_GRAPHIC_LONGRIGHT;
|
|
// resetGameMenuInfo.back.generic.id = ID_BACK;
|
|
// resetGameMenuInfo.back.generic.callback = ResetGameMenu_Event;
|
|
// resetGameMenuInfo.back.width = MENU_BUTTON_MED_WIDTH;
|
|
// resetGameMenuInfo.back.height = MENU_BUTTON_MED_HEIGHT;
|
|
// resetGameMenuInfo.back.color = CT_DKPURPLE1;
|
|
// resetGameMenuInfo.back.color2 = CT_LTPURPLE1;
|
|
// resetGameMenuInfo.back.textX = MENU_BUTTON_TEXT_X;
|
|
// resetGameMenuInfo.back.textY = MENU_BUTTON_TEXT_Y;
|
|
// resetGameMenuInfo.back.textEnum = MBT_BACK;
|
|
// resetGameMenuInfo.back.textcolor = CT_BLACK;
|
|
// resetGameMenuInfo.back.textcolor2 = CT_WHITE;
|
|
//
|
|
// resetGameMenuInfo.yes.generic.type = MTYPE_BITMAP;
|
|
// resetGameMenuInfo.yes.generic.flags = QMF_HIGHLIGHT_IF_FOCUS;
|
|
// resetGameMenuInfo.yes.generic.x = 462;
|
|
// resetGameMenuInfo.yes.generic.y = 391;
|
|
// resetGameMenuInfo.yes.generic.name = GRAPHIC_SQUARE;
|
|
// resetGameMenuInfo.yes.generic.id = ID_YES;
|
|
// resetGameMenuInfo.yes.generic.callback = ResetGameMenu_Event;
|
|
// resetGameMenuInfo.yes.width = 150;
|
|
// resetGameMenuInfo.yes.height = 42;
|
|
// resetGameMenuInfo.yes.color = CT_DKPURPLE1;
|
|
// resetGameMenuInfo.yes.color2 = CT_LTPURPLE1;
|
|
// resetGameMenuInfo.yes.textX = MENU_BUTTON_TEXT_X;
|
|
// resetGameMenuInfo.yes.textY = MENU_BUTTON_TEXT_Y;
|
|
// resetGameMenuInfo.yes.textEnum = MBT_YESRESET;
|
|
// resetGameMenuInfo.yes.textcolor = CT_BLACK;
|
|
// resetGameMenuInfo.yes.textcolor2 = CT_WHITE;
|
|
//
|
|
//
|
|
// Menu_AddItem( &resetGameMenuInfo.menu, &resetGameMenuInfo.mainmenu );
|
|
// Menu_AddItem( &resetGameMenuInfo.menu, &resetGameMenuInfo.back );
|
|
// Menu_AddItem( &resetGameMenuInfo.menu, &resetGameMenuInfo.yes );
|
|
//
|
|
//}
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_ResetGameMenu
|
|
//=================
|
|
//*/
|
|
//void UI_ResetGameMenu( void )
|
|
//{
|
|
// ResetGameMenu_Init();
|
|
//
|
|
// UI_PushMenu( &resetGameMenuInfo.menu );
|
|
// Menu_SetCursorToItem( &resetGameMenuInfo.menu, &resetGameMenuInfo.back );
|
|
//}
|
|
//
|
|
//
|
|
///*
|
|
//===============
|
|
//M_SPChoose_Event
|
|
//===============
|
|
//*/
|
|
//void M_SPChoose_Event (void* ptr, int notification)
|
|
//{
|
|
// if (notification != QM_ACTIVATED)
|
|
// return;
|
|
//
|
|
// switch (((menucommon_s*)ptr)->id)
|
|
// {
|
|
// case ID_MAINMENU:
|
|
// UI_PopMenu ();
|
|
// break;
|
|
//
|
|
// case ID_CUSTOM:
|
|
// UI_StartServerMenu( qfalse );
|
|
// break;
|
|
//
|
|
// case ID_PRESET:
|
|
// UI_SPLevelMenu();
|
|
// break;
|
|
// }
|
|
//}
|
|
///*
|
|
//===============
|
|
//SPChoose_MenuKey
|
|
//===============
|
|
//*/
|
|
//static sfxHandle_t SPChoose_MenuKey( int key )
|
|
//{
|
|
// return ( Menu_DefaultKey( &s_spchoose.menu, key ) );
|
|
//}
|
|
//
|
|
///*
|
|
//===============
|
|
//SPChoose_MenuDraw
|
|
//===============
|
|
//*/
|
|
//static void SPChoose_MenuDraw( void )
|
|
//{
|
|
// // Draw the basic screen layout
|
|
// UI_MenuFrame(&s_spchoose.menu);
|
|
//
|
|
// trap_R_SetColor( colorTable[CT_LTBROWN1]);
|
|
// UI_DrawHandlePic(30,203, 47, 186, uis.whiteShader); // Long left column square on bottom 3rd
|
|
//
|
|
// UI_DrawProportionalString( 74, 66, "45",UI_RIGHT|UI_TINYFONT, colorTable[CT_BLACK]);
|
|
// UI_DrawProportionalString( 74, 84, "8341",UI_RIGHT|UI_TINYFONT, colorTable[CT_BLACK]);
|
|
// UI_DrawProportionalString( 74, 188, "90902",UI_RIGHT|UI_TINYFONT, colorTable[CT_BLACK]);
|
|
// UI_DrawProportionalString( 74, 206, "44",UI_RIGHT|UI_TINYFONT, colorTable[CT_BLACK]);
|
|
// UI_DrawProportionalString( 74, 395, "6801",UI_RIGHT|UI_TINYFONT, colorTable[CT_BLACK]);
|
|
//
|
|
// trap_R_SetColor( colorTable[CT_DKPURPLE1]);
|
|
//
|
|
// // Left rounded ends
|
|
// UI_DrawHandlePic(290 - 14, 240, MENU_BUTTON_MED_HEIGHT, MENU_BUTTON_MED_HEIGHT, uis.graphicButtonLeftEnd);
|
|
// UI_DrawHandlePic(290 - 14, 310, MENU_BUTTON_MED_HEIGHT, MENU_BUTTON_MED_HEIGHT, uis.graphicButtonLeftEnd);
|
|
//
|
|
// Menu_Draw( &s_spchoose.menu );
|
|
//}
|
|
//
|
|
///*
|
|
//===============
|
|
//SPChooseMenu_Cache
|
|
//===============
|
|
//*/
|
|
//void SPChooseMenu_Cache( void )
|
|
//{
|
|
//}
|
|
//
|
|
///*
|
|
//=================
|
|
//SPChoose_MenuInit
|
|
//=================
|
|
//*/
|
|
//static void SPChoose_MenuInit(void)
|
|
//{
|
|
// int x,y;
|
|
//
|
|
// SPChooseMenu_Cache();
|
|
//
|
|
// s_spchoose.menu.nitems = 0;
|
|
// s_spchoose.menu.draw = SPChoose_MenuDraw;
|
|
// s_spchoose.menu.key = SPChoose_MenuKey;
|
|
// s_spchoose.menu.wrapAround = qtrue;
|
|
// s_spchoose.menu.descX = MENU_DESC_X;
|
|
// s_spchoose.menu.descY = MENU_DESC_Y;
|
|
// s_spchoose.menu.titleX = MENU_TITLE_X;
|
|
// s_spchoose.menu.titleY = MENU_TITLE_Y;
|
|
// s_spchoose.menu.titleI = MNT_SINGLEPLAYER_TITLE;
|
|
// s_spchoose.menu.footNoteEnum = MNT_SOLOMATCHTYPES;
|
|
// s_spchoose.menu.fullscreen = qtrue;
|
|
//
|
|
// s_spchoose.mainmenu.generic.type = MTYPE_BITMAP;
|
|
// s_spchoose.mainmenu.generic.flags = QMF_HIGHLIGHT_IF_FOCUS;
|
|
// s_spchoose.mainmenu.generic.x = 482;
|
|
// s_spchoose.mainmenu.generic.y = 136;
|
|
// s_spchoose.mainmenu.generic.name = BUTTON_GRAPHIC_LONGRIGHT;
|
|
// s_spchoose.mainmenu.generic.id = ID_MAINMENU;
|
|
// s_spchoose.mainmenu.generic.callback = M_SPChoose_Event;
|
|
// s_spchoose.mainmenu.width = MENU_BUTTON_MED_WIDTH;
|
|
// s_spchoose.mainmenu.height = MENU_BUTTON_MED_HEIGHT;
|
|
// s_spchoose.mainmenu.color = CT_DKPURPLE1;
|
|
// s_spchoose.mainmenu.color2 = CT_LTPURPLE1;
|
|
// s_spchoose.mainmenu.textX = MENU_BUTTON_TEXT_X;
|
|
// s_spchoose.mainmenu.textY = MENU_BUTTON_TEXT_Y;
|
|
// s_spchoose.mainmenu.textEnum = MBT_MAINMENU;
|
|
// s_spchoose.mainmenu.textcolor = CT_BLACK;
|
|
// s_spchoose.mainmenu.textcolor2 = CT_WHITE;
|
|
//
|
|
// x = 290;
|
|
// y = 240;
|
|
// s_spchoose.preset.generic.type = MTYPE_BITMAP;
|
|
// s_spchoose.preset.generic.flags = QMF_HIGHLIGHT_IF_FOCUS;
|
|
// s_spchoose.preset.generic.x = x;
|
|
// s_spchoose.preset.generic.y = y;
|
|
// s_spchoose.preset.generic.name = BUTTON_GRAPHIC_LONGRIGHT;
|
|
// s_spchoose.preset.generic.id = ID_PRESET;
|
|
// s_spchoose.preset.generic.callback = M_SPChoose_Event;
|
|
// s_spchoose.preset.width = MENU_BUTTON_MED_WIDTH;
|
|
// s_spchoose.preset.height = MENU_BUTTON_MED_HEIGHT;
|
|
// s_spchoose.preset.color = CT_DKPURPLE1;
|
|
// s_spchoose.preset.color2 = CT_LTPURPLE1;
|
|
// s_spchoose.preset.textX = MENU_BUTTON_TEXT_X;
|
|
// s_spchoose.preset.textY = MENU_BUTTON_TEXT_Y;
|
|
// s_spchoose.preset.textEnum = MBT_PRESETGAME;
|
|
// s_spchoose.preset.textcolor = CT_BLACK;
|
|
// s_spchoose.preset.textcolor2 = CT_WHITE;
|
|
//
|
|
// y += 70;
|
|
// s_spchoose.create.generic.type = MTYPE_BITMAP;
|
|
// s_spchoose.create.generic.flags = QMF_HIGHLIGHT_IF_FOCUS;
|
|
// s_spchoose.create.generic.x = x;
|
|
// s_spchoose.create.generic.y = y;
|
|
// s_spchoose.create.generic.name = BUTTON_GRAPHIC_LONGRIGHT;
|
|
// s_spchoose.create.generic.id = ID_CUSTOM;
|
|
// s_spchoose.create.generic.callback = M_SPChoose_Event;
|
|
// s_spchoose.create.width = MENU_BUTTON_MED_WIDTH;
|
|
// s_spchoose.create.height = MENU_BUTTON_MED_HEIGHT;
|
|
// s_spchoose.create.color = CT_DKPURPLE1;
|
|
// s_spchoose.create.color2 = CT_LTPURPLE1;
|
|
// s_spchoose.create.textX = MENU_BUTTON_TEXT_X;
|
|
// s_spchoose.create.textY = MENU_BUTTON_TEXT_Y;
|
|
// s_spchoose.create.textEnum = MBT_CREATEMATCH;
|
|
// s_spchoose.create.textcolor = CT_BLACK;
|
|
// s_spchoose.create.textcolor2 = CT_WHITE;
|
|
//
|
|
// Menu_AddItem( &s_spchoose.menu, &s_spchoose.mainmenu );
|
|
// Menu_AddItem( &s_spchoose.menu, &s_spchoose.preset );
|
|
// Menu_AddItem( &s_spchoose.menu, &s_spchoose.create );
|
|
//
|
|
//}
|
|
//
|
|
///*
|
|
//=================
|
|
//UI_SPChooseMenu
|
|
//=================
|
|
//*/
|
|
//void UI_SPChooseMenu( void )
|
|
//{
|
|
//
|
|
// SPChoose_MenuInit();
|
|
//
|
|
// UI_PushMenu( &s_spchoose.menu );
|
|
// Menu_SetCursorToItem( &s_spchoose.menu, &s_spchoose.preset );
|
|
//}
|