mirror of
https://github.com/ReactionQuake3/reaction.git
synced 2024-11-24 05:01:24 +00:00
Elder:
VM 0-20-00 UI
This commit is contained in:
parent
322e8aa7de
commit
d090ed8331
6 changed files with 419 additions and 153 deletions
|
@ -21,6 +21,12 @@ CONTROLS MENU
|
|||
//Elder: RQ3 Setup assets
|
||||
#define RQ3_SETUP_ICON "menu/art/rq3-setup-controls.jpg"
|
||||
#define RQ3_SETUP_TITLE "menu/art/rq3-title-setup.jpg"
|
||||
#define RQ3_FOCUS_BUTTON "menu/art/rq3-menu-focus.tga"
|
||||
#define RQ3_LOOKING_BUTTON "menu/art/rq3-controls-looking.jpg"
|
||||
#define RQ3_MOVEMENT_BUTTON "menu/art/rq3-controls-movement.jpg"
|
||||
#define RQ3_WEAPONS_BUTTON "menu/art/rq3-controls-weapons.jpg"
|
||||
#define RQ3_MISC_BUTTON "menu/art/rq3-controls-misc.jpg"
|
||||
#define RQ3_REACTION_BUTTON "menu/art/rq3-controls-reaction.jpg"
|
||||
|
||||
|
||||
typedef struct {
|
||||
|
@ -172,15 +178,23 @@ typedef struct
|
|||
//Elder: RQ3 Stuff
|
||||
menubitmap_s rq3_setupicon;
|
||||
menubitmap_s rq3_setuptitle;
|
||||
menutext_s rq3_statustext;
|
||||
|
||||
menubitmap_s player;
|
||||
|
||||
|
||||
/*
|
||||
menutext_s movement;
|
||||
menutext_s looking;
|
||||
menutext_s weapons;
|
||||
menutext_s misc;
|
||||
*/
|
||||
menubitmap_s movement;
|
||||
menubitmap_s looking;
|
||||
menubitmap_s weapons;
|
||||
menubitmap_s misc;
|
||||
|
||||
//Blaze: Reaction Menu
|
||||
menutext_s reaction;
|
||||
menubitmap_s reaction;
|
||||
|
||||
menuaction_s walkforward;
|
||||
menuaction_s backpedal;
|
||||
|
@ -278,15 +292,15 @@ static bind_t g_bindings[] =
|
|||
{"+zoom", "zoom view", ID_ZOOMVIEW, ANIM_IDLE, -1, -1, -1, -1},
|
||||
//Blaze: Reaction Weapon binds
|
||||
//Jbravo: order is important.
|
||||
{"weapon 1", "MK23 Pistol", ID_WEAPON1, ANIM_WEAPON1, '1', -1, -1, -1},
|
||||
{"weapon 2", "M3 Super 90 Assault Shotgun", ID_WEAPON2, ANIM_WEAPON2, '2', -1, -1, -1},
|
||||
{"weapon 3", "MP5/10 Submachinegun", ID_WEAPON3, ANIM_WEAPON3, '3', -1, -1, -1},
|
||||
{"weapon 4", "Handcannon", ID_WEAPON4, ANIM_WEAPON4, '4', -1, -1, -1},
|
||||
{"weapon 5", "Sniper Rifle", ID_WEAPON5, ANIM_WEAPON5, '5', -1, -1, -1},
|
||||
{"weapon 6", "M4 Assault Rifle", ID_WEAPON6, ANIM_WEAPON6, '6', -1, -1, -1},
|
||||
{"weapon 7", "Dual MK23 Pistols", ID_WEAPON7, ANIM_WEAPON7, '7', -1, -1, -1},
|
||||
{"weapon 8", "Combat Knife", ID_WEAPON8, ANIM_WEAPON8, '8', -1, -1, -1},
|
||||
{"weapon 9", "M26 Fragmentation Grenade", ID_WEAPON9, ANIM_WEAPON9, '9', -1, -1, -1},
|
||||
{"weapon 1", "MK23 Pistol", ID_WEAPON1, ANIM_WEAPON1, '1', -1, -1, -1},
|
||||
{"weapon 2", "M3 Assault Shotgun", ID_WEAPON2, ANIM_WEAPON2, '2', -1, -1, -1},
|
||||
{"weapon 3", "MP5/10 Submachinegun", ID_WEAPON3, ANIM_WEAPON3, '3', -1, -1, -1},
|
||||
{"weapon 4", "Handcannon", ID_WEAPON4, ANIM_WEAPON4, '4', -1, -1, -1},
|
||||
{"weapon 5", "Sniper Rifle", ID_WEAPON5, ANIM_WEAPON5, '5', -1, -1, -1},
|
||||
{"weapon 6", "M4 Assault Rifle", ID_WEAPON6, ANIM_WEAPON6, '6', -1, -1, -1},
|
||||
{"weapon 7", "Dual MK23 Pistols", ID_WEAPON7, ANIM_WEAPON7, '7', -1, -1, -1},
|
||||
{"weapon 8", "Combat Knife", ID_WEAPON8, ANIM_WEAPON8, '8', -1, -1, -1},
|
||||
{"weapon 9", "M26 Frag Grenade", ID_WEAPON9, ANIM_WEAPON9, '9', -1, -1, -1},
|
||||
{"+attack", "attack", ID_ATTACK, ANIM_ATTACK, K_CTRL, -1, -1, -1},
|
||||
{"weapprev", "prev weapon", ID_WEAPPREV, ANIM_IDLE, '[', -1, -1, -1},
|
||||
{"weapnext", "next weapon", ID_WEAPNEXT, ANIM_IDLE, ']', -1, -1, -1},
|
||||
|
@ -551,43 +565,56 @@ static void Controls_UpdateModel( int anim ) {
|
|||
*/
|
||||
//Blaze: Reaction weapons
|
||||
case ANIM_WEAPON1:
|
||||
s_controls.playerTorso = TORSO_STAND;
|
||||
s_controls.playerWeapon = WP_PISTOL;
|
||||
break;
|
||||
|
||||
case ANIM_WEAPON2:
|
||||
s_controls.playerTorso = TORSO_STAND;
|
||||
s_controls.playerWeapon = WP_M3;
|
||||
break;
|
||||
|
||||
case ANIM_WEAPON3:
|
||||
s_controls.playerTorso = TORSO_STAND;
|
||||
s_controls.playerWeapon = WP_MP5;
|
||||
break;
|
||||
|
||||
case ANIM_WEAPON4:
|
||||
s_controls.playerTorso = TORSO_STAND;
|
||||
s_controls.playerWeapon = WP_HANDCANNON;
|
||||
break;
|
||||
|
||||
case ANIM_WEAPON5:
|
||||
s_controls.playerTorso = TORSO_STAND;
|
||||
s_controls.playerWeapon = WP_SSG3000;
|
||||
break;
|
||||
|
||||
case ANIM_WEAPON6:
|
||||
s_controls.playerTorso = TORSO_STAND;
|
||||
s_controls.playerWeapon = WP_M4;
|
||||
break;
|
||||
|
||||
case ANIM_WEAPON7:
|
||||
s_controls.playerTorso = TORSO_STAND;
|
||||
s_controls.playerWeapon = WP_AKIMBO;
|
||||
break;
|
||||
|
||||
case ANIM_WEAPON8:
|
||||
s_controls.playerTorso = TORSO_STAND2;
|
||||
s_controls.playerWeapon = WP_KNIFE;
|
||||
break;
|
||||
|
||||
case ANIM_WEAPON9:
|
||||
s_controls.playerTorso = TORSO_STAND2;
|
||||
s_controls.playerWeapon = WP_GRENADE;
|
||||
break;
|
||||
|
||||
case ANIM_ATTACK:
|
||||
s_controls.playerTorso = TORSO_ATTACK;
|
||||
if ( s_controls.playerWeapon == WP_GRENADE ||
|
||||
s_controls.playerWeapon == WP_KNIFE )
|
||||
s_controls.playerTorso = TORSO_ATTACK2;
|
||||
else
|
||||
s_controls.playerTorso = TORSO_ATTACK;
|
||||
break;
|
||||
|
||||
case ANIM_GESTURE:
|
||||
|
@ -650,10 +677,10 @@ static void Controls_Update( void ) {
|
|||
// bk001204 - parentheses
|
||||
for( j = 0; (control = controls[j]) ; j++, y += SMALLCHAR_HEIGHT ) {
|
||||
//Elder: changed from 320
|
||||
control->x = 320;
|
||||
control->x = 200;
|
||||
control->y = y;
|
||||
control->left = 320 - 19*SMALLCHAR_WIDTH;
|
||||
control->right = 320 + 21*SMALLCHAR_WIDTH;
|
||||
control->left = 200 - 19*SMALLCHAR_WIDTH;
|
||||
control->right = 200 + 21*SMALLCHAR_WIDTH;
|
||||
control->top = y;
|
||||
control->bottom = y + SMALLCHAR_HEIGHT;
|
||||
}
|
||||
|
@ -668,7 +695,7 @@ static void Controls_Update( void ) {
|
|||
((menucommon_s*)(s_controls.menu.items[s_controls.menu.cursor]))->flags &= ~QMF_GRAYED;
|
||||
|
||||
// don't gray out player's name
|
||||
s_controls.name.generic.flags &= ~QMF_GRAYED;
|
||||
//s_controls.name.generic.flags &= ~QMF_GRAYED;
|
||||
|
||||
return;
|
||||
}
|
||||
|
@ -679,19 +706,17 @@ static void Controls_Update( void ) {
|
|||
}
|
||||
|
||||
// makes sure flags are right on the group selection controls
|
||||
s_controls.looking.generic.flags &= ~(QMF_GRAYED|QMF_HIGHLIGHT|QMF_HIGHLIGHT_IF_FOCUS);
|
||||
s_controls.movement.generic.flags &= ~(QMF_GRAYED|QMF_HIGHLIGHT|QMF_HIGHLIGHT_IF_FOCUS);
|
||||
s_controls.weapons.generic.flags &= ~(QMF_GRAYED|QMF_HIGHLIGHT|QMF_HIGHLIGHT_IF_FOCUS);
|
||||
s_controls.misc.generic.flags &= ~(QMF_GRAYED|QMF_HIGHLIGHT|QMF_HIGHLIGHT_IF_FOCUS);
|
||||
//Blaze: Reaction stuff
|
||||
s_controls.reaction.generic.flags &= ~(QMF_GRAYED|QMF_HIGHLIGHT|QMF_HIGHLIGHT_IF_FOCUS);
|
||||
s_controls.looking.generic.flags &= ~(QMF_GRAYED|QMF_HIGHLIGHT|QMF_PULSEIFFOCUS);
|
||||
s_controls.movement.generic.flags &= ~(QMF_GRAYED|QMF_HIGHLIGHT|QMF_PULSEIFFOCUS);
|
||||
s_controls.weapons.generic.flags &= ~(QMF_GRAYED|QMF_HIGHLIGHT|QMF_PULSEIFFOCUS);
|
||||
s_controls.misc.generic.flags &= ~(QMF_GRAYED|QMF_HIGHLIGHT|QMF_PULSEIFFOCUS);
|
||||
s_controls.reaction.generic.flags &= ~(QMF_GRAYED|QMF_HIGHLIGHT|QMF_PULSEIFFOCUS);
|
||||
|
||||
s_controls.looking.generic.flags |= QMF_PULSEIFFOCUS;
|
||||
s_controls.movement.generic.flags |= QMF_PULSEIFFOCUS;
|
||||
s_controls.weapons.generic.flags |= QMF_PULSEIFFOCUS;
|
||||
s_controls.misc.generic.flags |= QMF_PULSEIFFOCUS;
|
||||
//Blaze: Reaction menu
|
||||
s_controls.reaction.generic.flags |= QMF_PULSEIFFOCUS;
|
||||
s_controls.looking.generic.flags |= QMF_HIGHLIGHT_IF_FOCUS;
|
||||
s_controls.movement.generic.flags |= QMF_HIGHLIGHT_IF_FOCUS;
|
||||
s_controls.weapons.generic.flags |= QMF_HIGHLIGHT_IF_FOCUS;
|
||||
s_controls.misc.generic.flags |= QMF_HIGHLIGHT_IF_FOCUS;
|
||||
s_controls.reaction.generic.flags |= QMF_HIGHLIGHT_IF_FOCUS;
|
||||
|
||||
// set buttons
|
||||
switch( s_controls.section ) {
|
||||
|
@ -1127,91 +1152,126 @@ Controls_MenuEvent
|
|||
*/
|
||||
static void Controls_MenuEvent( void* ptr, int event )
|
||||
{
|
||||
switch (((menucommon_s*)ptr)->id)
|
||||
//Elder: for status bar
|
||||
if( event == QM_LOSTFOCUS ) {
|
||||
s_controls.rq3_statustext.string = "";
|
||||
return;
|
||||
}
|
||||
else if ( event == QM_GOTFOCUS )
|
||||
{
|
||||
case ID_MOVEMENT:
|
||||
if (event == QM_ACTIVATED)
|
||||
{
|
||||
s_controls.section = C_MOVEMENT;
|
||||
Controls_Update();
|
||||
}
|
||||
break;
|
||||
switch( ((menucommon_s*)ptr)->id )
|
||||
{
|
||||
case ID_MOVEMENT:
|
||||
s_controls.rq3_statustext.string = "Change movement keys";
|
||||
break;
|
||||
case ID_LOOKING:
|
||||
s_controls.rq3_statustext.string = "Change view keys";
|
||||
break;
|
||||
case ID_WEAPONS:
|
||||
s_controls.rq3_statustext.string = "Change weapon keys";
|
||||
break;
|
||||
case ID_MISC:
|
||||
s_controls.rq3_statustext.string = "Change miscellaneous keys";
|
||||
break;
|
||||
case ID_REACTION:
|
||||
s_controls.rq3_statustext.string = "Change Reaction-specific keys";
|
||||
break;
|
||||
case ID_BACK:
|
||||
s_controls.rq3_statustext.string = "Return to setup menu";
|
||||
break;
|
||||
default:
|
||||
s_controls.rq3_statustext.string = "";
|
||||
break;
|
||||
}
|
||||
}
|
||||
else if ( event == QM_ACTIVATED )
|
||||
{
|
||||
switch (((menucommon_s*)ptr)->id)
|
||||
{
|
||||
case ID_MOVEMENT:
|
||||
//if (event == QM_ACTIVATED)
|
||||
//{
|
||||
s_controls.section = C_MOVEMENT;
|
||||
Controls_Update();
|
||||
//}
|
||||
break;
|
||||
|
||||
case ID_LOOKING:
|
||||
if (event == QM_ACTIVATED)
|
||||
{
|
||||
s_controls.section = C_LOOKING;
|
||||
Controls_Update();
|
||||
}
|
||||
break;
|
||||
case ID_LOOKING:
|
||||
//if (event == QM_ACTIVATED)
|
||||
//{
|
||||
s_controls.section = C_LOOKING;
|
||||
Controls_Update();
|
||||
//}
|
||||
break;
|
||||
|
||||
case ID_WEAPONS:
|
||||
if (event == QM_ACTIVATED)
|
||||
{
|
||||
s_controls.section = C_WEAPONS;
|
||||
Controls_Update();
|
||||
}
|
||||
break;
|
||||
case ID_WEAPONS:
|
||||
//if (event == QM_ACTIVATED)
|
||||
//{
|
||||
s_controls.section = C_WEAPONS;
|
||||
Controls_Update();
|
||||
//}
|
||||
break;
|
||||
|
||||
case ID_MISC:
|
||||
if (event == QM_ACTIVATED)
|
||||
{
|
||||
s_controls.section = C_MISC;
|
||||
Controls_Update();
|
||||
}
|
||||
break;
|
||||
//Blaze: Reaction Menu
|
||||
case ID_REACTION:
|
||||
if (event == QM_ACTIVATED)
|
||||
{
|
||||
s_controls.section = C_REACTION;
|
||||
Controls_Update();
|
||||
}
|
||||
break;
|
||||
case ID_DEFAULTS:
|
||||
if (event == QM_ACTIVATED)
|
||||
{
|
||||
UI_ConfirmMenu( "SET TO DEFAULTS?", Controls_ResetDefaults_Draw, Controls_ResetDefaults_Action );
|
||||
}
|
||||
break;
|
||||
case ID_MISC:
|
||||
//if (event == QM_ACTIVATED)
|
||||
//{
|
||||
s_controls.section = C_MISC;
|
||||
Controls_Update();
|
||||
//}
|
||||
break;
|
||||
//Blaze: Reaction Menu
|
||||
case ID_REACTION:
|
||||
//if (event == QM_ACTIVATED)
|
||||
//{
|
||||
s_controls.section = C_REACTION;
|
||||
Controls_Update();
|
||||
//}
|
||||
break;
|
||||
case ID_DEFAULTS:
|
||||
//if (event == QM_ACTIVATED)
|
||||
//{
|
||||
UI_ConfirmMenu( "SET TO DEFAULTS?", Controls_ResetDefaults_Draw, Controls_ResetDefaults_Action );
|
||||
//}
|
||||
break;
|
||||
|
||||
case ID_BACK:
|
||||
if (event == QM_ACTIVATED)
|
||||
{
|
||||
if (s_controls.changesmade)
|
||||
case ID_BACK:
|
||||
//if (event == QM_ACTIVATED)
|
||||
//{
|
||||
if (s_controls.changesmade)
|
||||
Controls_SetConfig();
|
||||
UI_PopMenu();
|
||||
//}
|
||||
break;
|
||||
|
||||
case ID_SAVEANDEXIT:
|
||||
//if (event == QM_ACTIVATED)
|
||||
//{
|
||||
Controls_SetConfig();
|
||||
UI_PopMenu();
|
||||
}
|
||||
break;
|
||||
UI_PopMenu();
|
||||
//}
|
||||
break;
|
||||
|
||||
case ID_SAVEANDEXIT:
|
||||
if (event == QM_ACTIVATED)
|
||||
{
|
||||
Controls_SetConfig();
|
||||
UI_PopMenu();
|
||||
}
|
||||
break;
|
||||
case ID_EXIT:
|
||||
//if (event == QM_ACTIVATED)
|
||||
//{
|
||||
UI_PopMenu();
|
||||
//}
|
||||
break;
|
||||
|
||||
case ID_EXIT:
|
||||
if (event == QM_ACTIVATED)
|
||||
{
|
||||
UI_PopMenu();
|
||||
}
|
||||
break;
|
||||
|
||||
case ID_FREELOOK:
|
||||
case ID_MOUSESPEED:
|
||||
case ID_INVERTMOUSE:
|
||||
case ID_SMOOTHMOUSE:
|
||||
case ID_ALWAYSRUN:
|
||||
case ID_AUTOSWITCH:
|
||||
case ID_JOYENABLE:
|
||||
case ID_JOYTHRESHOLD:
|
||||
if (event == QM_ACTIVATED)
|
||||
{
|
||||
s_controls.changesmade = qtrue;
|
||||
}
|
||||
break;
|
||||
case ID_FREELOOK:
|
||||
case ID_MOUSESPEED:
|
||||
case ID_INVERTMOUSE:
|
||||
case ID_SMOOTHMOUSE:
|
||||
case ID_ALWAYSRUN:
|
||||
case ID_AUTOSWITCH:
|
||||
case ID_JOYENABLE:
|
||||
case ID_JOYTHRESHOLD:
|
||||
//if (event == QM_ACTIVATED)
|
||||
//{
|
||||
s_controls.changesmade = qtrue;
|
||||
//}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1293,6 +1353,9 @@ Controls_MenuInit
|
|||
static void Controls_MenuInit( void )
|
||||
{
|
||||
static char playername[32];
|
||||
// Elder: added
|
||||
int buttonCount = 0;
|
||||
int y = 12;
|
||||
|
||||
// zero set all our globals
|
||||
memset( &s_controls, 0 ,sizeof(controls_t) );
|
||||
|
@ -1389,6 +1452,17 @@ static void Controls_MenuInit( void )
|
|||
s_controls.rq3_setuptitle.width = 256;
|
||||
s_controls.rq3_setuptitle.height = 32;
|
||||
|
||||
//Elder: RQ3 Status Text
|
||||
s_controls.rq3_statustext.generic.type = MTYPE_TEXT;
|
||||
s_controls.rq3_statustext.generic.flags = QMF_CENTER_JUSTIFY;
|
||||
s_controls.rq3_statustext.generic.x = RQ3_STATUSBAR_X;
|
||||
s_controls.rq3_statustext.generic.y = RQ3_STATUSBAR_Y;
|
||||
s_controls.rq3_statustext.string = "";
|
||||
s_controls.rq3_statustext.style = UI_CENTER|UI_SMALLFONT;
|
||||
s_controls.rq3_statustext.color = color_orange;
|
||||
|
||||
|
||||
/*
|
||||
s_controls.looking.generic.type = MTYPE_PTEXT;
|
||||
s_controls.looking.generic.flags = QMF_RIGHT_JUSTIFY|QMF_PULSEIFFOCUS;
|
||||
s_controls.looking.generic.id = ID_LOOKING;
|
||||
|
@ -1398,7 +1472,21 @@ static void Controls_MenuInit( void )
|
|||
s_controls.looking.string = "LOOK";
|
||||
s_controls.looking.style = UI_RIGHT;
|
||||
s_controls.looking.color = color_red;
|
||||
*/
|
||||
|
||||
//Elder: RQ3 Looking Button
|
||||
s_controls.looking.generic.type = MTYPE_BITMAP;
|
||||
s_controls.looking.generic.name = RQ3_LOOKING_BUTTON;
|
||||
s_controls.looking.generic.flags = QMF_LEFT_JUSTIFY|QMF_HIGHLIGHT_IF_FOCUS;
|
||||
s_controls.looking.generic.x = 320 + (RQ3_BUTTON_PADDING + RQ3_BUTTON_WIDTH) * buttonCount++;
|
||||
s_controls.looking.generic.y = y;
|
||||
s_controls.looking.generic.id = ID_LOOKING;
|
||||
s_controls.looking.generic.callback = Controls_MenuEvent;
|
||||
s_controls.looking.width = RQ3_BUTTON_WIDTH;
|
||||
s_controls.looking.height = RQ3_BUTTON_HEIGHT;
|
||||
s_controls.looking.focuspic = RQ3_FOCUS_BUTTON;
|
||||
|
||||
/*
|
||||
s_controls.movement.generic.type = MTYPE_PTEXT;
|
||||
s_controls.movement.generic.flags = QMF_RIGHT_JUSTIFY|QMF_PULSEIFFOCUS;
|
||||
s_controls.movement.generic.id = ID_MOVEMENT;
|
||||
|
@ -1408,7 +1496,21 @@ static void Controls_MenuInit( void )
|
|||
s_controls.movement.string = "MOVE";
|
||||
s_controls.movement.style = UI_RIGHT;
|
||||
s_controls.movement.color = color_red;
|
||||
*/
|
||||
|
||||
//Elder: RQ3 Movement Button
|
||||
s_controls.movement.generic.type = MTYPE_BITMAP;
|
||||
s_controls.movement.generic.name = RQ3_MOVEMENT_BUTTON;
|
||||
s_controls.movement.generic.flags = QMF_LEFT_JUSTIFY|QMF_HIGHLIGHT_IF_FOCUS;
|
||||
s_controls.movement.generic.x = 320 + (RQ3_BUTTON_PADDING + RQ3_BUTTON_WIDTH) * buttonCount++;
|
||||
s_controls.movement.generic.y = y;
|
||||
s_controls.movement.generic.id = ID_MOVEMENT;
|
||||
s_controls.movement.generic.callback = Controls_MenuEvent;
|
||||
s_controls.movement.width = RQ3_BUTTON_WIDTH;
|
||||
s_controls.movement.height = RQ3_BUTTON_HEIGHT;
|
||||
s_controls.movement.focuspic = RQ3_FOCUS_BUTTON;
|
||||
|
||||
/*
|
||||
s_controls.weapons.generic.type = MTYPE_PTEXT;
|
||||
s_controls.weapons.generic.flags = QMF_RIGHT_JUSTIFY|QMF_PULSEIFFOCUS;
|
||||
s_controls.weapons.generic.id = ID_WEAPONS;
|
||||
|
@ -1418,7 +1520,21 @@ static void Controls_MenuInit( void )
|
|||
s_controls.weapons.string = "SHOOT";
|
||||
s_controls.weapons.style = UI_RIGHT;
|
||||
s_controls.weapons.color = color_red;
|
||||
*/
|
||||
|
||||
//Elder: RQ3 Weapons Button
|
||||
s_controls.weapons.generic.type = MTYPE_BITMAP;
|
||||
s_controls.weapons.generic.name = RQ3_WEAPONS_BUTTON;
|
||||
s_controls.weapons.generic.flags = QMF_LEFT_JUSTIFY|QMF_HIGHLIGHT_IF_FOCUS;
|
||||
s_controls.weapons.generic.x = 320 + (RQ3_BUTTON_PADDING + RQ3_BUTTON_WIDTH) * buttonCount++;
|
||||
s_controls.weapons.generic.y = y;
|
||||
s_controls.weapons.generic.id = ID_WEAPONS;
|
||||
s_controls.weapons.generic.callback = Controls_MenuEvent;
|
||||
s_controls.weapons.width = RQ3_BUTTON_WIDTH;
|
||||
s_controls.weapons.height = RQ3_BUTTON_HEIGHT;
|
||||
s_controls.weapons.focuspic = RQ3_FOCUS_BUTTON;
|
||||
|
||||
/*
|
||||
s_controls.misc.generic.type = MTYPE_PTEXT;
|
||||
s_controls.misc.generic.flags = QMF_RIGHT_JUSTIFY|QMF_PULSEIFFOCUS;
|
||||
s_controls.misc.generic.id = ID_MISC;
|
||||
|
@ -1428,18 +1544,44 @@ static void Controls_MenuInit( void )
|
|||
s_controls.misc.string = "MISC";
|
||||
s_controls.misc.style = UI_RIGHT;
|
||||
s_controls.misc.color = color_red;
|
||||
*/
|
||||
|
||||
//Elder: RQ3 Misc Button
|
||||
s_controls.misc.generic.type = MTYPE_BITMAP;
|
||||
s_controls.misc.generic.name = RQ3_MISC_BUTTON;
|
||||
s_controls.misc.generic.flags = QMF_LEFT_JUSTIFY|QMF_HIGHLIGHT_IF_FOCUS;
|
||||
s_controls.misc.generic.x = 320 + (RQ3_BUTTON_PADDING + RQ3_BUTTON_WIDTH) * buttonCount++;
|
||||
s_controls.misc.generic.y = y;
|
||||
s_controls.misc.generic.id = ID_MISC;
|
||||
s_controls.misc.generic.callback = Controls_MenuEvent;
|
||||
s_controls.misc.width = RQ3_BUTTON_WIDTH;
|
||||
s_controls.misc.height = RQ3_BUTTON_HEIGHT;
|
||||
s_controls.misc.focuspic = RQ3_FOCUS_BUTTON;
|
||||
|
||||
//Blaze: Reaction section
|
||||
/*
|
||||
s_controls.reaction.generic.type = MTYPE_PTEXT;
|
||||
s_controls.reaction.generic.flags = QMF_RIGHT_JUSTIFY|QMF_PULSEIFFOCUS;
|
||||
s_controls.reaction.generic.id = ID_REACTION;
|
||||
s_controls.reaction.generic.callback = Controls_MenuEvent;
|
||||
s_controls.reaction.generic.x = 152;
|
||||
s_controls.reaction.generic.y = 240 + 2 * PROP_HEIGHT;
|
||||
s_controls.reaction.string = "RXN";
|
||||
s_controls.reaction.string = "REACTION";
|
||||
s_controls.reaction.style = UI_RIGHT;
|
||||
s_controls.reaction.color = color_red;
|
||||
*/
|
||||
|
||||
//Elder: RQ3 Reaction Button
|
||||
s_controls.reaction.generic.type = MTYPE_BITMAP;
|
||||
s_controls.reaction.generic.name = RQ3_REACTION_BUTTON;
|
||||
s_controls.reaction.generic.flags = QMF_LEFT_JUSTIFY|QMF_HIGHLIGHT_IF_FOCUS;
|
||||
s_controls.reaction.generic.x = 320 + (RQ3_BUTTON_PADDING + RQ3_BUTTON_WIDTH) * buttonCount++;
|
||||
s_controls.reaction.generic.y = y;
|
||||
s_controls.reaction.generic.id = ID_REACTION;
|
||||
s_controls.reaction.generic.callback = Controls_MenuEvent;
|
||||
s_controls.reaction.width = RQ3_BUTTON_WIDTH;
|
||||
s_controls.reaction.height = RQ3_BUTTON_HEIGHT;
|
||||
s_controls.reaction.focuspic = RQ3_FOCUS_BUTTON;
|
||||
|
||||
s_controls.back.generic.type = MTYPE_BITMAP;
|
||||
s_controls.back.generic.name = ART_BACK0;
|
||||
|
@ -1745,7 +1887,7 @@ static void Controls_MenuInit( void )
|
|||
s_controls.reload.generic.id = ID_RELOAD;
|
||||
|
||||
s_controls.weapon.generic.type = MTYPE_ACTION;
|
||||
s_controls.weapon.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS|QMF_GRAYED|QMF_HIDDEN;
|
||||
s_controls.weapon.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS|QMF_GRAYED|QMF_HIDDEN;
|
||||
s_controls.weapon.generic.callback = Controls_ActionEvent;
|
||||
s_controls.weapon.generic.ownerdraw = Controls_DrawKeyBinding;
|
||||
s_controls.weapon.generic.id = ID_WEAPON;
|
||||
|
@ -1786,6 +1928,7 @@ static void Controls_MenuInit( void )
|
|||
s_controls.joythreshold.maxvalue = 0.75f;
|
||||
s_controls.joythreshold.generic.statusbar = Controls_StatusBar;
|
||||
|
||||
/*
|
||||
s_controls.name.generic.type = MTYPE_PTEXT;
|
||||
s_controls.name.generic.flags = QMF_CENTER_JUSTIFY|QMF_INACTIVE;
|
||||
s_controls.name.generic.x = 320;
|
||||
|
@ -1793,7 +1936,7 @@ static void Controls_MenuInit( void )
|
|||
s_controls.name.string = playername;
|
||||
s_controls.name.style = UI_CENTER;
|
||||
s_controls.name.color = text_color_normal;
|
||||
|
||||
*/
|
||||
// Menu_AddItem( &s_controls.menu, &s_controls.banner );
|
||||
// Menu_AddItem( &s_controls.menu, &s_controls.framel );
|
||||
// Menu_AddItem( &s_controls.menu, &s_controls.framer );
|
||||
|
@ -1806,9 +1949,10 @@ static void Controls_MenuInit( void )
|
|||
*/
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.rq3_setupicon );
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.rq3_setuptitle );
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.rq3_statustext);
|
||||
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.player );
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.name );
|
||||
//Menu_AddItem( &s_controls.menu, &s_controls.name );
|
||||
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.looking );
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.movement );
|
||||
|
@ -1878,8 +2022,8 @@ static void Controls_MenuInit( void )
|
|||
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.back );
|
||||
|
||||
trap_Cvar_VariableStringBuffer( "name", s_controls.name.string, 16 );
|
||||
Q_CleanStr( s_controls.name.string );
|
||||
//trap_Cvar_VariableStringBuffer( "name", s_controls.name.string, 16 );
|
||||
//Q_CleanStr( s_controls.name.string );
|
||||
|
||||
// initialize the configurable cvars
|
||||
Controls_InitCvars();
|
||||
|
@ -1911,6 +2055,12 @@ void Controls_Cache( void ) {
|
|||
trap_R_RegisterShaderNoMip( ART_BACK1 );
|
||||
trap_R_RegisterShaderNoMip( RQ3_SETUP_ICON );
|
||||
trap_R_RegisterShaderNoMip( RQ3_SETUP_TITLE );
|
||||
trap_R_RegisterShaderNoMip( RQ3_LOOKING_BUTTON );
|
||||
trap_R_RegisterShaderNoMip( RQ3_MOVEMENT_BUTTON );
|
||||
trap_R_RegisterShaderNoMip( RQ3_WEAPONS_BUTTON );
|
||||
trap_R_RegisterShaderNoMip( RQ3_MISC_BUTTON );
|
||||
trap_R_RegisterShaderNoMip( RQ3_REACTION_BUTTON );
|
||||
trap_R_RegisterShaderNoMip( RQ3_FOCUS_BUTTON );
|
||||
//trap_R_RegisterShaderNoMip( ART_FRAMEL );
|
||||
//trap_R_RegisterShaderNoMip( ART_FRAMER );
|
||||
}
|
||||
|
|
|
@ -12,7 +12,7 @@ INGAME MENU
|
|||
#include "ui_local.h"
|
||||
|
||||
|
||||
#define INGAME_FRAME "menu/art/addbotframe"
|
||||
//#define INGAME_FRAME "menu/art/addbotframe"
|
||||
//#define INGAME_FRAME "menu/art/cut_frame"
|
||||
#define INGAME_MENU_VERTICAL_SPACING 28
|
||||
|
||||
|
@ -31,7 +31,7 @@ INGAME MENU
|
|||
typedef struct {
|
||||
menuframework_s menu;
|
||||
|
||||
menubitmap_s frame;
|
||||
//menubitmap_s frame;
|
||||
menutext_s team;
|
||||
menutext_s setup;
|
||||
menutext_s server;
|
||||
|
@ -151,6 +151,7 @@ void InGame_MenuInit( void ) {
|
|||
s_ingame.menu.wrapAround = qtrue;
|
||||
s_ingame.menu.fullscreen = qfalse;//Blaze: Test
|
||||
|
||||
/*
|
||||
s_ingame.frame.generic.type = MTYPE_BITMAP;
|
||||
s_ingame.frame.generic.flags = QMF_INACTIVE;
|
||||
s_ingame.frame.generic.name = INGAME_FRAME;
|
||||
|
@ -158,6 +159,7 @@ void InGame_MenuInit( void ) {
|
|||
s_ingame.frame.generic.y = 240-166;//118;
|
||||
s_ingame.frame.width = 466;//359;
|
||||
s_ingame.frame.height = 332;//256;
|
||||
*/
|
||||
|
||||
//y = 96;
|
||||
y = 88;
|
||||
|
@ -290,7 +292,7 @@ void InGame_MenuInit( void ) {
|
|||
s_ingame.quit.color = color_red;
|
||||
s_ingame.quit.style = UI_CENTER|UI_SMALLFONT;
|
||||
|
||||
Menu_AddItem( &s_ingame.menu, &s_ingame.frame );
|
||||
//Menu_AddItem( &s_ingame.menu, &s_ingame.frame );
|
||||
Menu_AddItem( &s_ingame.menu, &s_ingame.team );
|
||||
Menu_AddItem( &s_ingame.menu, &s_ingame.addbots );
|
||||
Menu_AddItem( &s_ingame.menu, &s_ingame.removebots );
|
||||
|
@ -310,7 +312,7 @@ InGame_Cache
|
|||
=================
|
||||
*/
|
||||
void InGame_Cache( void ) {
|
||||
trap_R_RegisterShaderNoMip( INGAME_FRAME );
|
||||
//trap_R_RegisterShaderNoMip( INGAME_FRAME );
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -204,7 +204,7 @@ static void Preferences_Event( void* ptr, int event ) {
|
|||
break;
|
||||
|
||||
case ID_BACK:
|
||||
s_preferences.rq3_statustext.string = "Return to main menu";
|
||||
s_preferences.rq3_statustext.string = "Return to setup menu";
|
||||
break;
|
||||
|
||||
default:
|
||||
|
|
|
@ -23,8 +23,11 @@ MULTIPLAYER MENU (SERVER BROWSER)
|
|||
#define MAX_LEAGUELENGTH 28
|
||||
#define MAX_LISTBOXWIDTH 61
|
||||
|
||||
#define ART_BACK0 "menu/art/back_0"
|
||||
#define ART_BACK1 "menu/art/back_1"
|
||||
//#define ART_BACK0 "menu/art/back_0"
|
||||
//#define ART_BACK1 "menu/art/back_1"
|
||||
#define ART_BACK0 "menu/art/rq3-menu-back.tga"
|
||||
#define ART_BACK1 "menu/art/rq3-menu-back-focus.tga"
|
||||
|
||||
#define ART_CREATE0 "menu/art/create_0"
|
||||
#define ART_CREATE1 "menu/art/create_1"
|
||||
#define ART_SPECIFY0 "menu/art/specify_0"
|
||||
|
@ -40,6 +43,10 @@ MULTIPLAYER MENU (SERVER BROWSER)
|
|||
#define ART_REMOVE0 "menu/art/delete_0"
|
||||
#define ART_REMOVE1 "menu/art/delete_1"
|
||||
|
||||
//Elder: RQ3 Setup assets
|
||||
#define RQ3_START_ICON "menu/art/rq3-menu-start.jpg"
|
||||
#define RQ3_START_TITLE "menu/art/rq3-title-start.jpg"
|
||||
|
||||
#define ID_MASTER 10
|
||||
#define ID_GAMETYPE 11
|
||||
#define ID_SORTKEY 12
|
||||
|
@ -157,11 +164,17 @@ typedef struct {
|
|||
|
||||
//Blaze: No need for this banner
|
||||
//menutext_s banner;
|
||||
/*
|
||||
menutext_s multim;
|
||||
menutext_s setupm;
|
||||
menutext_s demom;
|
||||
menutext_s modsm;
|
||||
menutext_s exitm;
|
||||
*/
|
||||
|
||||
//Elder: RQ3 Stuff
|
||||
menubitmap_s rq3_starticon;
|
||||
menubitmap_s rq3_starttitle;
|
||||
|
||||
menulist_s master;
|
||||
menulist_s gametype;
|
||||
|
@ -1216,9 +1229,17 @@ ArenaServers_MenuDraw
|
|||
*/
|
||||
static void ArenaServers_MenuDraw( void )
|
||||
{
|
||||
//Elder: "Dim" and "Letterbox" mask
|
||||
UI_FillRect( 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, color_deepdim );
|
||||
UI_FillRect( 0, 0, SCREEN_WIDTH, 54, color_black);
|
||||
UI_FillRect( 0, 426, SCREEN_WIDTH, 54, color_black);
|
||||
UI_FillRect( 0, 54, SCREEN_WIDTH, 2, color_red);
|
||||
UI_FillRect( 0, 426, SCREEN_WIDTH, 2, color_red);
|
||||
|
||||
if (g_arenaservers.refreshservers)
|
||||
ArenaServers_DoRefresh();
|
||||
|
||||
|
||||
Menu_Draw( &g_arenaservers.menu );
|
||||
}
|
||||
|
||||
|
@ -1283,6 +1304,7 @@ static void ArenaServers_MenuInit( void ) {
|
|||
g_arenaservers.banner.style = UI_CENTER;
|
||||
g_arenaservers.banner.color = color_white;
|
||||
*/
|
||||
/*
|
||||
g_arenaservers.multim.generic.type = MTYPE_PTEXT;
|
||||
g_arenaservers.multim.generic.flags = QMF_CENTER_JUSTIFY|QMF_INACTIVE|QMF_HIGHLIGHT;
|
||||
g_arenaservers.multim.generic.x = 120;
|
||||
|
@ -1322,7 +1344,26 @@ static void ArenaServers_MenuInit( void ) {
|
|||
g_arenaservers.exitm.string = "EXIT";
|
||||
g_arenaservers.exitm.color = color_red;
|
||||
g_arenaservers.exitm.style = UI_CENTER | UI_DROPSHADOW;
|
||||
|
||||
*/
|
||||
|
||||
//Elder: Info for setup icon
|
||||
g_arenaservers.rq3_starticon.generic.type = MTYPE_BITMAP;
|
||||
g_arenaservers.rq3_starticon.generic.name = RQ3_START_ICON;
|
||||
g_arenaservers.rq3_starticon.generic.flags = QMF_LEFT_JUSTIFY|QMF_INACTIVE;
|
||||
g_arenaservers.rq3_starticon.generic.x = 0;
|
||||
g_arenaservers.rq3_starticon.generic.y = 4;
|
||||
g_arenaservers.rq3_starticon.width = RQ3_ICON_WIDTH;
|
||||
g_arenaservers.rq3_starticon.height = RQ3_ICON_HEIGHT;
|
||||
|
||||
//Elder: Info for setup title
|
||||
g_arenaservers.rq3_starttitle.generic.type = MTYPE_BITMAP;
|
||||
g_arenaservers.rq3_starttitle.generic.name = RQ3_START_TITLE;
|
||||
g_arenaservers.rq3_starttitle.generic.flags = QMF_LEFT_JUSTIFY|QMF_INACTIVE;
|
||||
g_arenaservers.rq3_starttitle.generic.x = 64;
|
||||
g_arenaservers.rq3_starttitle.generic.y = 12;
|
||||
g_arenaservers.rq3_starttitle.width = 256;
|
||||
g_arenaservers.rq3_starttitle.height = 32;
|
||||
|
||||
y = 80;
|
||||
g_arenaservers.master.generic.type = MTYPE_SPINCONTROL;
|
||||
g_arenaservers.master.generic.name = "Servers:";
|
||||
|
@ -1454,10 +1495,10 @@ static void ArenaServers_MenuInit( void ) {
|
|||
g_arenaservers.back.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS;
|
||||
g_arenaservers.back.generic.callback = ArenaServers_Event;
|
||||
g_arenaservers.back.generic.id = ID_BACK;
|
||||
g_arenaservers.back.generic.x = 0;
|
||||
g_arenaservers.back.generic.y = 480-64;
|
||||
g_arenaservers.back.width = 128;
|
||||
g_arenaservers.back.height = 64;
|
||||
g_arenaservers.back.generic.x = 8;
|
||||
g_arenaservers.back.generic.y = 480-44;
|
||||
g_arenaservers.back.width = 32;
|
||||
g_arenaservers.back.height = 32;
|
||||
g_arenaservers.back.focuspic = ART_BACK1;
|
||||
|
||||
g_arenaservers.specify.generic.type = MTYPE_BITMAP;
|
||||
|
@ -1466,9 +1507,9 @@ static void ArenaServers_MenuInit( void ) {
|
|||
g_arenaservers.specify.generic.callback = ArenaServers_Event;
|
||||
g_arenaservers.specify.generic.id = ID_SPECIFY;
|
||||
g_arenaservers.specify.generic.x = 128;
|
||||
g_arenaservers.specify.generic.y = 480-64;
|
||||
g_arenaservers.specify.width = 128;
|
||||
g_arenaservers.specify.height = 64;
|
||||
g_arenaservers.specify.generic.y = 480-44;
|
||||
g_arenaservers.specify.width = 64;
|
||||
g_arenaservers.specify.height = 32;
|
||||
g_arenaservers.specify.focuspic = ART_SPECIFY1;
|
||||
|
||||
g_arenaservers.refresh.generic.type = MTYPE_BITMAP;
|
||||
|
@ -1477,9 +1518,9 @@ static void ArenaServers_MenuInit( void ) {
|
|||
g_arenaservers.refresh.generic.callback = ArenaServers_Event;
|
||||
g_arenaservers.refresh.generic.id = ID_REFRESH;
|
||||
g_arenaservers.refresh.generic.x = 256;
|
||||
g_arenaservers.refresh.generic.y = 480-64;
|
||||
g_arenaservers.refresh.width = 128;
|
||||
g_arenaservers.refresh.height = 64;
|
||||
g_arenaservers.refresh.generic.y = 480-44;
|
||||
g_arenaservers.refresh.width = 64;
|
||||
g_arenaservers.refresh.height = 32;
|
||||
g_arenaservers.refresh.focuspic = ART_REFRESH1;
|
||||
|
||||
g_arenaservers.create.generic.type = MTYPE_BITMAP;
|
||||
|
@ -1488,9 +1529,9 @@ static void ArenaServers_MenuInit( void ) {
|
|||
g_arenaservers.create.generic.callback = ArenaServers_Event;
|
||||
g_arenaservers.create.generic.id = ID_CREATE;
|
||||
g_arenaservers.create.generic.x = 384;
|
||||
g_arenaservers.create.generic.y = 480-64;
|
||||
g_arenaservers.create.width = 128;
|
||||
g_arenaservers.create.height = 64;
|
||||
g_arenaservers.create.generic.y = 480-44;
|
||||
g_arenaservers.create.width = 64;
|
||||
g_arenaservers.create.height = 32;
|
||||
g_arenaservers.create.focuspic = ART_CREATE1;
|
||||
|
||||
g_arenaservers.go.generic.type = MTYPE_BITMAP;
|
||||
|
@ -1498,19 +1539,24 @@ static void ArenaServers_MenuInit( void ) {
|
|||
g_arenaservers.go.generic.flags = QMF_RIGHT_JUSTIFY|QMF_PULSEIFFOCUS;
|
||||
g_arenaservers.go.generic.callback = ArenaServers_Event;
|
||||
g_arenaservers.go.generic.id = ID_CONNECT;
|
||||
g_arenaservers.go.generic.x = 640;
|
||||
g_arenaservers.go.generic.y = 480-64;
|
||||
g_arenaservers.go.width = 128;
|
||||
g_arenaservers.go.height = 64;
|
||||
g_arenaservers.go.generic.x = 640 - 8;
|
||||
g_arenaservers.go.generic.y = 480-44;
|
||||
g_arenaservers.go.width = 64;
|
||||
g_arenaservers.go.height = 32;
|
||||
g_arenaservers.go.focuspic = ART_CONNECT1;
|
||||
|
||||
//Blaze: This banner is not needed
|
||||
// Menu_AddItem( &g_arenaservers.menu, (void*) &g_arenaservers.banner );
|
||||
/*
|
||||
Menu_AddItem( &g_arenaservers.menu, &g_arenaservers.multim );
|
||||
Menu_AddItem( &g_arenaservers.menu, &g_arenaservers.setupm );
|
||||
Menu_AddItem( &g_arenaservers.menu, &g_arenaservers.demom );
|
||||
Menu_AddItem( &g_arenaservers.menu, &g_arenaservers.modsm );
|
||||
Menu_AddItem( &g_arenaservers.menu, &g_arenaservers.exitm );
|
||||
*/
|
||||
|
||||
Menu_AddItem( &g_arenaservers.menu, (void*) &g_arenaservers.rq3_starticon );
|
||||
Menu_AddItem( &g_arenaservers.menu, (void*) &g_arenaservers.rq3_starttitle );
|
||||
|
||||
Menu_AddItem( &g_arenaservers.menu, (void*) &g_arenaservers.master );
|
||||
Menu_AddItem( &g_arenaservers.menu, (void*) &g_arenaservers.gametype );
|
||||
|
@ -1579,6 +1625,8 @@ void ArenaServers_Cache( void ) {
|
|||
trap_R_RegisterShaderNoMip( ART_ARROWS_UP );
|
||||
trap_R_RegisterShaderNoMip( ART_ARROWS_DOWN );
|
||||
trap_R_RegisterShaderNoMip( ART_UNKNOWNMAP );
|
||||
trap_R_RegisterShaderNoMip( RQ3_START_ICON );
|
||||
trap_R_RegisterShaderNoMip( RQ3_START_TITLE );
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -6,20 +6,27 @@
|
|||
SPECIFY SERVER
|
||||
*********************************************************************************/
|
||||
|
||||
#define SPECIFYSERVER_FRAMEL "menu/art/frame2_l"
|
||||
#define SPECIFYSERVER_FRAMER "menu/art/frame1_r"
|
||||
#define SPECIFYSERVER_BACK0 "menu/art/back_0"
|
||||
#define SPECIFYSERVER_BACK1 "menu/art/back_1"
|
||||
//#define SPECIFYSERVER_FRAMEL "menu/art/frame2_l"
|
||||
//#define SPECIFYSERVER_FRAMER "menu/art/frame1_r"
|
||||
|
||||
//#define SPECIFYSERVER_BACK0 "menu/art/back_0"
|
||||
//#define SPECIFYSERVER_BACK1 "menu/art/back_1"
|
||||
#define SPECIFYSERVER_BACK0 "menu/art/rq3-menu-back.tga"
|
||||
#define SPECIFYSERVER_BACK1 "menu/art/rq3-menu-back-focus.tga"
|
||||
#define SPECIFYSERVER_FIGHT0 "menu/art/fight_0"
|
||||
#define SPECIFYSERVER_FIGHT1 "menu/art/fight_1"
|
||||
|
||||
//Elder: RQ3 Setup assets
|
||||
#define RQ3_START_ICON "menu/art/rq3-menu-start.jpg"
|
||||
#define RQ3_START_TITLE "menu/art/rq3-title-start.jpg"
|
||||
|
||||
#define ID_SPECIFYSERVERBACK 102
|
||||
#define ID_SPECIFYSERVERGO 103
|
||||
|
||||
static char* specifyserver_artlist[] =
|
||||
{
|
||||
SPECIFYSERVER_FRAMEL,
|
||||
SPECIFYSERVER_FRAMER,
|
||||
//SPECIFYSERVER_FRAMEL,
|
||||
//SPECIFYSERVER_FRAMER,
|
||||
SPECIFYSERVER_BACK0,
|
||||
SPECIFYSERVER_BACK1,
|
||||
SPECIFYSERVER_FIGHT0,
|
||||
|
@ -34,11 +41,18 @@ typedef struct
|
|||
// menutext_s banner;
|
||||
// menubitmap_s framel;
|
||||
// menubitmap_s framer;
|
||||
/*
|
||||
menutext_s multim;
|
||||
menutext_s setupm;
|
||||
menutext_s demom;
|
||||
menutext_s modsm;
|
||||
menutext_s exitm;
|
||||
*/
|
||||
|
||||
|
||||
//Elder: RQ3 Stuff
|
||||
menubitmap_s rq3_starticon;
|
||||
menubitmap_s rq3_starttitle;
|
||||
|
||||
menufield_s domain;
|
||||
menufield_s port;
|
||||
|
@ -48,6 +62,26 @@ typedef struct
|
|||
|
||||
static specifyserver_t s_specifyserver;
|
||||
|
||||
|
||||
/*
|
||||
===============
|
||||
Added by Elder
|
||||
Preferences_MenuDraw
|
||||
===============
|
||||
*/
|
||||
static void SpecifyServer_MenuDraw( void ) {
|
||||
//Elder: "Dim" and "Letterbox" mask
|
||||
UI_FillRect( 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, color_deepdim );
|
||||
UI_FillRect( 0, 0, SCREEN_WIDTH, 54, color_black);
|
||||
UI_FillRect( 0, 426, SCREEN_WIDTH, 54, color_black);
|
||||
UI_FillRect( 0, 54, SCREEN_WIDTH, 2, color_red);
|
||||
UI_FillRect( 0, 426, SCREEN_WIDTH, 2, color_red);
|
||||
|
||||
// standard menu drawing
|
||||
Menu_Draw( &s_specifyserver.menu );
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
=================
|
||||
SpecifyServer_Event
|
||||
|
@ -94,6 +128,7 @@ void SpecifyServer_MenuInit( void )
|
|||
|
||||
SpecifyServer_Cache();
|
||||
|
||||
s_specifyserver.menu.draw = SpecifyServer_MenuDraw;
|
||||
s_specifyserver.menu.wrapAround = qtrue;
|
||||
s_specifyserver.menu.fullscreen = qtrue;
|
||||
s_specifyserver.menu.showlogo = qtrue;
|
||||
|
@ -124,6 +159,7 @@ void SpecifyServer_MenuInit( void )
|
|||
s_specifyserver.framer.width = 256;
|
||||
s_specifyserver.framer.height = 334;
|
||||
*/
|
||||
/*
|
||||
s_specifyserver.multim.generic.type = MTYPE_PTEXT;
|
||||
s_specifyserver.multim.generic.flags = QMF_CENTER_JUSTIFY|QMF_INACTIVE|QMF_HIGHLIGHT;
|
||||
s_specifyserver.multim.generic.x = 120;
|
||||
|
@ -164,8 +200,28 @@ void SpecifyServer_MenuInit( void )
|
|||
s_specifyserver.exitm.string = "EXIT";
|
||||
s_specifyserver.exitm.color = color_red;
|
||||
s_specifyserver.exitm.style = UI_CENTER | UI_DROPSHADOW;
|
||||
*/
|
||||
|
||||
s_specifyserver.domain.generic.type = MTYPE_FIELD;
|
||||
//Elder: Info for setup icon
|
||||
s_specifyserver.rq3_starticon.generic.type = MTYPE_BITMAP;
|
||||
s_specifyserver.rq3_starticon.generic.name = RQ3_START_ICON;
|
||||
s_specifyserver.rq3_starticon.generic.flags = QMF_LEFT_JUSTIFY|QMF_INACTIVE;
|
||||
s_specifyserver.rq3_starticon.generic.x = 0;
|
||||
s_specifyserver.rq3_starticon.generic.y = 4;
|
||||
s_specifyserver.rq3_starticon.width = RQ3_ICON_WIDTH;
|
||||
s_specifyserver.rq3_starticon.height = RQ3_ICON_HEIGHT;
|
||||
|
||||
//Elder: Info for setup title
|
||||
s_specifyserver.rq3_starttitle.generic.type = MTYPE_BITMAP;
|
||||
s_specifyserver.rq3_starttitle.generic.name = RQ3_START_TITLE;
|
||||
s_specifyserver.rq3_starttitle.generic.flags = QMF_LEFT_JUSTIFY|QMF_INACTIVE;
|
||||
s_specifyserver.rq3_starttitle.generic.x = 64;
|
||||
s_specifyserver.rq3_starttitle.generic.y = 12;
|
||||
s_specifyserver.rq3_starttitle.width = 256;
|
||||
s_specifyserver.rq3_starttitle.height = 32;
|
||||
|
||||
|
||||
s_specifyserver.domain.generic.type = MTYPE_FIELD;
|
||||
s_specifyserver.domain.generic.name = "Address:";
|
||||
s_specifyserver.domain.generic.flags = QMF_PULSEIFFOCUS|QMF_SMALLFONT;
|
||||
s_specifyserver.domain.generic.x = 206;
|
||||
|
@ -186,10 +242,10 @@ s_specifyserver.domain.generic.type = MTYPE_FIELD;
|
|||
s_specifyserver.go.generic.flags = QMF_RIGHT_JUSTIFY|QMF_PULSEIFFOCUS;
|
||||
s_specifyserver.go.generic.callback = SpecifyServer_Event;
|
||||
s_specifyserver.go.generic.id = ID_SPECIFYSERVERGO;
|
||||
s_specifyserver.go.generic.x = 640;
|
||||
s_specifyserver.go.generic.y = 480-64;
|
||||
s_specifyserver.go.width = 128;
|
||||
s_specifyserver.go.height = 64;
|
||||
s_specifyserver.go.generic.x = 640-8;
|
||||
s_specifyserver.go.generic.y = 480-44;
|
||||
s_specifyserver.go.width = 64;
|
||||
s_specifyserver.go.height = 32;
|
||||
s_specifyserver.go.focuspic = SPECIFYSERVER_FIGHT1;
|
||||
|
||||
s_specifyserver.back.generic.type = MTYPE_BITMAP;
|
||||
|
@ -197,22 +253,26 @@ s_specifyserver.domain.generic.type = MTYPE_FIELD;
|
|||
s_specifyserver.back.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS;
|
||||
s_specifyserver.back.generic.callback = SpecifyServer_Event;
|
||||
s_specifyserver.back.generic.id = ID_SPECIFYSERVERBACK;
|
||||
s_specifyserver.back.generic.x = 0;
|
||||
s_specifyserver.back.generic.y = 480-64;
|
||||
s_specifyserver.back.width = 128;
|
||||
s_specifyserver.back.height = 64;
|
||||
s_specifyserver.back.generic.x = 8;
|
||||
s_specifyserver.back.generic.y = 480-44;
|
||||
s_specifyserver.back.width = 32;
|
||||
s_specifyserver.back.height = 32;
|
||||
s_specifyserver.back.focuspic = SPECIFYSERVER_BACK1;
|
||||
|
||||
//Blaze: This banner is not needed
|
||||
//Menu_AddItem( &s_specifyserver.menu, &s_specifyserver.banner );
|
||||
//Menu_AddItem( &s_specifyserver.menu, &s_specifyserver.framel );
|
||||
//Menu_AddItem( &s_specifyserver.menu, &s_specifyserver.framer );
|
||||
/*
|
||||
Menu_AddItem( &s_specifyserver.menu, &s_specifyserver.multim );
|
||||
Menu_AddItem( &s_specifyserver.menu, &s_specifyserver.setupm );
|
||||
Menu_AddItem( &s_specifyserver.menu, &s_specifyserver.demom );
|
||||
Menu_AddItem( &s_specifyserver.menu, &s_specifyserver.modsm );
|
||||
Menu_AddItem( &s_specifyserver.menu, &s_specifyserver.exitm );
|
||||
*/
|
||||
|
||||
Menu_AddItem( &s_specifyserver.menu, &s_specifyserver.rq3_starticon );
|
||||
Menu_AddItem( &s_specifyserver.menu, &s_specifyserver.rq3_starttitle );
|
||||
Menu_AddItem( &s_specifyserver.menu, &s_specifyserver.domain );
|
||||
Menu_AddItem( &s_specifyserver.menu, &s_specifyserver.port );
|
||||
Menu_AddItem( &s_specifyserver.menu, &s_specifyserver.go );
|
||||
|
|
|
@ -50,11 +50,13 @@ typedef struct {
|
|||
// menutext_s banner;
|
||||
// menubitmap_s framel;
|
||||
// menubitmap_s framer;
|
||||
/*
|
||||
menutext_s multim;
|
||||
menutext_s setupm;
|
||||
menutext_s demom;
|
||||
menutext_s modsm;
|
||||
menutext_s exitm;
|
||||
*/
|
||||
|
||||
menulist_s gametype;
|
||||
menubitmap_s mappics[MAX_MAPSPERPAGE];
|
||||
|
@ -404,6 +406,7 @@ static void StartServer_MenuInit( void ) {
|
|||
s_startserver.framer.width = 256;
|
||||
s_startserver.framer.height = 334;
|
||||
*/
|
||||
/*
|
||||
s_startserver.multim.generic.type = MTYPE_PTEXT;
|
||||
s_startserver.multim.generic.flags = QMF_CENTER_JUSTIFY|QMF_INACTIVE|QMF_HIGHLIGHT;
|
||||
s_startserver.multim.generic.x = 120;
|
||||
|
@ -443,6 +446,7 @@ static void StartServer_MenuInit( void ) {
|
|||
s_startserver.exitm.string = "EXIT";
|
||||
s_startserver.exitm.color = color_red;
|
||||
s_startserver.exitm.style = UI_CENTER | UI_DROPSHADOW;
|
||||
*/
|
||||
|
||||
s_startserver.gametype.generic.type = MTYPE_SPINCONTROL;
|
||||
s_startserver.gametype.generic.name = "Game Type:";
|
||||
|
@ -553,11 +557,13 @@ static void StartServer_MenuInit( void ) {
|
|||
// Menu_AddItem( &s_startserver.menu, &s_startserver.banner );
|
||||
// Menu_AddItem( &s_startserver.menu, &s_startserver.framel );
|
||||
// Menu_AddItem( &s_startserver.menu, &s_startserver.framer );
|
||||
/*
|
||||
Menu_AddItem( &s_startserver.menu, &s_startserver.multim );
|
||||
Menu_AddItem( &s_startserver.menu, &s_startserver.setupm );
|
||||
Menu_AddItem( &s_startserver.menu, &s_startserver.demom );
|
||||
Menu_AddItem( &s_startserver.menu, &s_startserver.modsm );
|
||||
Menu_AddItem( &s_startserver.menu, &s_startserver.exitm );
|
||||
*/
|
||||
|
||||
Menu_AddItem( &s_startserver.menu, &s_startserver.gametype );
|
||||
for (i=0; i<MAX_MAPSPERPAGE; i++)
|
||||
|
@ -594,8 +600,8 @@ void StartServer_Cache( void )
|
|||
trap_R_RegisterShaderNoMip( GAMESERVER_BACK1 );
|
||||
trap_R_RegisterShaderNoMip( GAMESERVER_NEXT0 );
|
||||
trap_R_RegisterShaderNoMip( GAMESERVER_NEXT1 );
|
||||
trap_R_RegisterShaderNoMip( GAMESERVER_FRAMEL );
|
||||
trap_R_RegisterShaderNoMip( GAMESERVER_FRAMER );
|
||||
//trap_R_RegisterShaderNoMip( GAMESERVER_FRAMEL );
|
||||
//trap_R_RegisterShaderNoMip( GAMESERVER_FRAMER );
|
||||
trap_R_RegisterShaderNoMip( GAMESERVER_SELECT );
|
||||
trap_R_RegisterShaderNoMip( GAMESERVER_SELECTED );
|
||||
trap_R_RegisterShaderNoMip( GAMESERVER_UNKNOWNMAP );
|
||||
|
|
Loading…
Reference in a new issue