mirror of
https://github.com/ReactionQuake3/reaction.git
synced 2025-02-17 09:34:02 +00:00
Elder:
0-19-00 VMs UI
This commit is contained in:
parent
1ee916a8c3
commit
da77ea9bef
6 changed files with 355 additions and 183 deletions
|
@ -182,16 +182,16 @@ void UI_DrawConnectScreen( qboolean overlay ) {
|
|||
}
|
||||
|
||||
//320 64
|
||||
UI_DrawProportionalString( x, 72, va("Connecting to %s", cstate.servername), UI_LEFT|UI_SMALLFONT, menu_text_color );
|
||||
UI_DrawProportionalString( x, 72, va("Connect: %s", cstate.servername), UI_LEFT|UI_SMALLFONT|UI_DROPSHADOW, color_red );
|
||||
//UI_DrawProportionalString( 320, 96, "Press Esc to abort", UI_CENTER|UI_SMALLFONT|UI_DROPSHADOW, menu_text_color );
|
||||
|
||||
// display global MOTD at bottom
|
||||
UI_DrawProportionalString( x, 352,
|
||||
Info_ValueForKey( cstate.updateInfoString, "motd" ), UI_LEFT|UI_SMALLFONT, menu_text_color );
|
||||
Info_ValueForKey( cstate.updateInfoString, "motd" ), UI_LEFT|UI_SMALLFONT|UI_DROPSHADOW, menu_text_color );
|
||||
|
||||
// print any server info (server full, bad version, etc)
|
||||
if ( cstate.connState < CA_CONNECTED ) {
|
||||
UI_DrawProportionalString( x, 384, cstate.messageString, UI_LEFT|UI_SMALLFONT, menu_text_color );
|
||||
UI_DrawProportionalString( x, 384, cstate.messageString, UI_LEFT|UI_SMALLFONT|UI_DROPSHADOW, menu_text_color );
|
||||
}
|
||||
|
||||
#if 0
|
||||
|
@ -249,7 +249,7 @@ void UI_DrawConnectScreen( qboolean overlay ) {
|
|||
return;
|
||||
}
|
||||
|
||||
UI_DrawProportionalString( x, 400, s, UI_LEFT|UI_SMALLFONT, color_white );
|
||||
UI_DrawProportionalString( x, 400, s, UI_LEFT|UI_SMALLFONT|UI_DROPSHADOW, color_red );
|
||||
|
||||
//Elder: "Letterbox" mask - why it has to be here... *shrugs*
|
||||
UI_FillRect( 0, 0, SCREEN_WIDTH, 54, color_black);
|
||||
|
|
|
@ -11,10 +11,16 @@ CONTROLS MENU
|
|||
|
||||
#include "ui_local.h"
|
||||
|
||||
#define ART_BACK0 "menu/art/back_0"
|
||||
#define ART_BACK1 "menu/art/back_1"
|
||||
#define ART_FRAMEL "menu/art/frame2_l"
|
||||
#define ART_FRAMER "menu/art/frame1_r"
|
||||
#define ART_BACK0 "menu/art/rq3-menu-back.tga"
|
||||
#define ART_BACK1 "menu/art/rq3-menu-back-focus.tga"
|
||||
//#define ART_BACK0 "menu/art/back_0"
|
||||
//#define ART_BACK1 "menu/art/back_1"
|
||||
//#define ART_FRAMEL "menu/art/frame2_l"
|
||||
//#define ART_FRAMER "menu/art/frame1_r"
|
||||
|
||||
//Elder: RQ3 Setup assets
|
||||
#define RQ3_SETUP_ICON "menu/art/rq3-setup-controls.jpg"
|
||||
#define RQ3_SETUP_TITLE "menu/art/rq3-title-setup.jpg"
|
||||
|
||||
|
||||
typedef struct {
|
||||
|
@ -79,9 +85,8 @@ typedef struct
|
|||
#define ID_MOUSELOOK 14
|
||||
#define ID_CENTERVIEW 15
|
||||
#define ID_ZOOMVIEW 16
|
||||
//Blaze: Reaction Bins = knife
|
||||
// Elder: WEAPON1 is now pistol
|
||||
#define ID_WEAPON1 17
|
||||
//Blaze: Reaction Binds = Pistol
|
||||
#define ID_WEAPON2 18
|
||||
#define ID_WEAPON3 19
|
||||
#define ID_WEAPON4 20
|
||||
|
@ -128,9 +133,7 @@ typedef struct
|
|||
#define ANIM_TURNRIGHT 9
|
||||
#define ANIM_LOOKUP 10
|
||||
#define ANIM_LOOKDOWN 11
|
||||
//Blaze: Reaction Knife
|
||||
#define ANIM_WEAPON1 12
|
||||
//Blaze: Reaction Pistol
|
||||
#define ANIM_WEAPON2 13
|
||||
#define ANIM_WEAPON3 14
|
||||
#define ANIM_WEAPON4 15
|
||||
|
@ -155,15 +158,21 @@ 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;
|
||||
*/
|
||||
// menutext_s load;
|
||||
// menutext_s save;
|
||||
menutext_s defaults;
|
||||
|
||||
//Elder: RQ3 Stuff
|
||||
menubitmap_s rq3_setupicon;
|
||||
menubitmap_s rq3_setuptitle;
|
||||
|
||||
menubitmap_s player;
|
||||
|
||||
menutext_s movement;
|
||||
|
@ -188,15 +197,15 @@ typedef struct
|
|||
//menuaction_s chainsaw;
|
||||
//menuaction_s machinegun;
|
||||
//Blaze: Reaction weapons binds
|
||||
menuaction_s knife;
|
||||
menuaction_s mk23;
|
||||
menuaction_s m3;
|
||||
menuaction_s mp5;
|
||||
menuaction_s handcannon;
|
||||
menuaction_s ssg3000;
|
||||
menuaction_s m4;
|
||||
menuaction_s grenadelauncher;
|
||||
menuaction_s rocketlauncher;
|
||||
menuaction_s lightning;
|
||||
menuaction_s railgun;
|
||||
menuaction_s plasma;
|
||||
menuaction_s bfg;
|
||||
menuaction_s akimbos;
|
||||
menuaction_s knife;
|
||||
menuaction_s grenade;
|
||||
menuaction_s attack;
|
||||
menuaction_s prevweapon;
|
||||
menuaction_s nextweapon;
|
||||
|
@ -269,16 +278,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.
|
||||
//Elder: my comment isn't important heh :)
|
||||
{"weapon 1", "MK23", ID_WEAPON2, ANIM_WEAPON2, '2', -1, -1, -1},
|
||||
{"weapon 2", "Shotgun", ID_WEAPON7, ANIM_WEAPON7, '7', -1, -1, -1},
|
||||
{"weapon 3", "MP5", ID_WEAPON5, ANIM_WEAPON5, '5', -1, -1, -1},
|
||||
{"weapon 4", "Hand Cannon", ID_WEAPON6, ANIM_WEAPON6, '6', -1, -1, -1},
|
||||
{"weapon 5", "SSG3000", ID_WEAPON4, ANIM_WEAPON4, '4', -1, -1, -1},
|
||||
{"weapon 6", "M4", ID_WEAPON3, ANIM_WEAPON3, '3', -1, -1, -1},
|
||||
{"weapon 7", "Akimbo Pistols", ID_WEAPON8, ANIM_WEAPON8, '8', -1, -1, -1},
|
||||
{"weapon 8", "Knife", ID_WEAPON1, ANIM_WEAPON1, '1', -1, -1, -1},
|
||||
{"weapon 9", "Grenade", ID_WEAPON9, ANIM_WEAPON9, '9', -1, -1, -1},
|
||||
{"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},
|
||||
{"+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},
|
||||
|
@ -289,7 +297,7 @@ static bind_t g_bindings[] =
|
|||
{"messagemode4", "chat - attacker", ID_CHAT4, ANIM_CHAT, -1, -1, -1, -1},
|
||||
{"bandage", "Bandage", ID_BANDAGE, ANIM_IDLE, -1, -1, -1, -1},
|
||||
{"+button5", "Reload", ID_RELOAD, ANIM_RELOAD, -1, -1, -1, -1},
|
||||
{"weapon", "Weapon Mode", ID_WEAPON, ANIM_IDLE, -1, -1, -1, -1},
|
||||
{"weapon", "Weapon mode", ID_WEAPON, ANIM_IDLE, -1, -1, -1, -1},
|
||||
{"opendoor", "Open door", ID_OPENDOOR, ANIM_IDLE, -1, -1, -1, -1},
|
||||
{"dropweapon", "Drop Weapon", ID_DROPWEAP, ANIM_IDLE, -1, -1, -1, -1},
|
||||
{"dropitem", "Drop Item", ID_DROPITEM, ANIM_IDLE, -1, -1, -1, -1},
|
||||
|
@ -330,21 +338,20 @@ static menucommon_s *g_weapons_controls[] = {
|
|||
(menucommon_s *)&s_controls.nextweapon,
|
||||
(menucommon_s *)&s_controls.prevweapon,
|
||||
(menucommon_s *)&s_controls.autoswitch,
|
||||
//Blaze: No need for the chainsaw??? <- Gauntlet
|
||||
// (menucommon_s *)&s_controls.chainsaw,
|
||||
//Blaze: No need for the machinegun
|
||||
// (menucommon_s *)&s_controls.machinegun,
|
||||
//Blaze: Reaction knife menu addition
|
||||
(menucommon_s *)&s_controls.knife,
|
||||
//Blaze: Reaction pistol menu addition
|
||||
//Blaze: No need for the chainsaw/gauntlet or machinegun
|
||||
/*
|
||||
(menucommon_s *)&s_controls.chainsaw,
|
||||
(menucommon_s *)&s_controls.machinegun,
|
||||
*/
|
||||
(menucommon_s *)&s_controls.mk23,
|
||||
(menucommon_s *)&s_controls.m4,
|
||||
(menucommon_s *)&s_controls.grenadelauncher,
|
||||
(menucommon_s *)&s_controls.rocketlauncher,
|
||||
(menucommon_s *)&s_controls.lightning,
|
||||
(menucommon_s *)&s_controls.railgun,
|
||||
(menucommon_s *)&s_controls.plasma,
|
||||
(menucommon_s *)&s_controls.bfg,
|
||||
(menucommon_s *)&s_controls.m3,
|
||||
(menucommon_s *)&s_controls.mp5,
|
||||
(menucommon_s *)&s_controls.handcannon,
|
||||
(menucommon_s *)&s_controls.ssg3000,
|
||||
(menucommon_s *)&s_controls.m4,
|
||||
(menucommon_s *)&s_controls.akimbos,
|
||||
(menucommon_s *)&s_controls.knife,
|
||||
(menucommon_s *)&s_controls.grenade,
|
||||
NULL,
|
||||
};
|
||||
|
||||
|
@ -544,37 +551,37 @@ static void Controls_UpdateModel( int anim ) {
|
|||
*/
|
||||
//Blaze: Reaction weapons
|
||||
case ANIM_WEAPON1:
|
||||
s_controls.playerWeapon = WP_KNIFE;
|
||||
break;
|
||||
|
||||
case ANIM_WEAPON2:
|
||||
s_controls.playerWeapon = WP_PISTOL;
|
||||
break;
|
||||
|
||||
case ANIM_WEAPON3:
|
||||
s_controls.playerWeapon = WP_M4;
|
||||
break;
|
||||
|
||||
case ANIM_WEAPON4:
|
||||
s_controls.playerWeapon = WP_SSG3000;
|
||||
break;
|
||||
|
||||
case ANIM_WEAPON5:
|
||||
s_controls.playerWeapon = WP_MP5;
|
||||
break;
|
||||
|
||||
case ANIM_WEAPON6:
|
||||
s_controls.playerWeapon = WP_HANDCANNON;
|
||||
break;
|
||||
|
||||
case ANIM_WEAPON7:
|
||||
case ANIM_WEAPON2:
|
||||
s_controls.playerWeapon = WP_M3;
|
||||
break;
|
||||
|
||||
case ANIM_WEAPON8:
|
||||
case ANIM_WEAPON3:
|
||||
s_controls.playerWeapon = WP_MP5;
|
||||
break;
|
||||
|
||||
case ANIM_WEAPON4:
|
||||
s_controls.playerWeapon = WP_HANDCANNON;
|
||||
break;
|
||||
|
||||
case ANIM_WEAPON5:
|
||||
s_controls.playerWeapon = WP_SSG3000;
|
||||
break;
|
||||
|
||||
case ANIM_WEAPON6:
|
||||
s_controls.playerWeapon = WP_M4;
|
||||
break;
|
||||
|
||||
case ANIM_WEAPON7:
|
||||
s_controls.playerWeapon = WP_AKIMBO;
|
||||
break;
|
||||
|
||||
case ANIM_WEAPON8:
|
||||
s_controls.playerWeapon = WP_KNIFE;
|
||||
break;
|
||||
|
||||
case ANIM_WEAPON9:
|
||||
s_controls.playerWeapon = WP_GRENADE;
|
||||
break;
|
||||
|
@ -597,7 +604,7 @@ static void Controls_UpdateModel( int anim ) {
|
|||
s_controls.playerChat = qtrue;
|
||||
break;
|
||||
case ANIM_RELOAD:
|
||||
Com_Printf("At Reload");
|
||||
//Com_Printf("At Reload");
|
||||
//s_controls.weapon.generic.
|
||||
break;
|
||||
|
||||
|
@ -642,6 +649,7 @@ static void Controls_Update( void ) {
|
|||
y = ( SCREEN_HEIGHT - j * SMALLCHAR_HEIGHT ) / 2;
|
||||
// bk001204 - parentheses
|
||||
for( j = 0; (control = controls[j]) ; j++, y += SMALLCHAR_HEIGHT ) {
|
||||
//Elder: changed from 320
|
||||
control->x = 320;
|
||||
control->y = y;
|
||||
control->left = 320 - 19*SMALLCHAR_WIDTH;
|
||||
|
@ -1259,6 +1267,24 @@ static void Controls_InitWeapons( void ) {
|
|||
}
|
||||
}
|
||||
|
||||
/*
|
||||
===============
|
||||
Added by Elder
|
||||
Controls_MenuDraw
|
||||
===============
|
||||
*/
|
||||
static void Controls_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_controls.menu );
|
||||
}
|
||||
|
||||
/*
|
||||
=================
|
||||
Controls_MenuInit
|
||||
|
@ -1273,6 +1299,7 @@ static void Controls_MenuInit( void )
|
|||
|
||||
Controls_Cache();
|
||||
|
||||
s_controls.menu.draw = Controls_MenuDraw;
|
||||
s_controls.menu.key = Controls_MenuKey;
|
||||
s_controls.menu.wrapAround = qtrue;
|
||||
s_controls.menu.fullscreen = qtrue;
|
||||
|
@ -1302,6 +1329,7 @@ static void Controls_MenuInit( void )
|
|||
s_controls.framer.width = 256;
|
||||
s_controls.framer.height = 334;
|
||||
*/
|
||||
/*
|
||||
s_controls.multim.generic.type = MTYPE_PTEXT;
|
||||
s_controls.multim.generic.flags = QMF_CENTER_JUSTIFY|QMF_PULSEIFFOCUS|QMF_INACTIVE;
|
||||
s_controls.multim.generic.x = 120;
|
||||
|
@ -1341,7 +1369,25 @@ static void Controls_MenuInit( void )
|
|||
s_controls.exitm.string = "EXIT";
|
||||
s_controls.exitm.color = color_red;
|
||||
s_controls.exitm.style = UI_CENTER | UI_DROPSHADOW;
|
||||
*/
|
||||
|
||||
//Elder: Info for setup icon
|
||||
s_controls.rq3_setupicon.generic.type = MTYPE_BITMAP;
|
||||
s_controls.rq3_setupicon.generic.name = RQ3_SETUP_ICON;
|
||||
s_controls.rq3_setupicon.generic.flags = QMF_LEFT_JUSTIFY|QMF_INACTIVE;
|
||||
s_controls.rq3_setupicon.generic.x = 0;
|
||||
s_controls.rq3_setupicon.generic.y = 4;
|
||||
s_controls.rq3_setupicon.width = RQ3_ICON_WIDTH;
|
||||
s_controls.rq3_setupicon.height = RQ3_ICON_HEIGHT;
|
||||
|
||||
//Elder: Info for setup title
|
||||
s_controls.rq3_setuptitle.generic.type = MTYPE_BITMAP;
|
||||
s_controls.rq3_setuptitle.generic.name = RQ3_SETUP_TITLE;
|
||||
s_controls.rq3_setuptitle.generic.flags = QMF_LEFT_JUSTIFY|QMF_INACTIVE;
|
||||
s_controls.rq3_setuptitle.generic.x = 64;
|
||||
s_controls.rq3_setuptitle.generic.y = 12;
|
||||
s_controls.rq3_setuptitle.width = 256;
|
||||
s_controls.rq3_setuptitle.height = 32;
|
||||
|
||||
s_controls.looking.generic.type = MTYPE_PTEXT;
|
||||
s_controls.looking.generic.flags = QMF_RIGHT_JUSTIFY|QMF_PULSEIFFOCUS;
|
||||
|
@ -1398,12 +1444,12 @@ static void Controls_MenuInit( void )
|
|||
s_controls.back.generic.type = MTYPE_BITMAP;
|
||||
s_controls.back.generic.name = ART_BACK0;
|
||||
s_controls.back.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS;
|
||||
s_controls.back.generic.x = 0;
|
||||
s_controls.back.generic.y = 480-64;
|
||||
s_controls.back.generic.x = 8;
|
||||
s_controls.back.generic.y = 480-44;
|
||||
s_controls.back.generic.id = ID_BACK;
|
||||
s_controls.back.generic.callback = Controls_MenuEvent;
|
||||
s_controls.back.width = 128;
|
||||
s_controls.back.height = 64;
|
||||
s_controls.back.width = 32;
|
||||
s_controls.back.height = 32;
|
||||
s_controls.back.focuspic = ART_BACK1;
|
||||
|
||||
s_controls.player.generic.type = MTYPE_BITMAP;
|
||||
|
@ -1489,61 +1535,60 @@ static void Controls_MenuInit( void )
|
|||
s_controls.machinegun.generic.ownerdraw = Controls_DrawKeyBinding;
|
||||
s_controls.machinegun.generic.id = ID_WEAPON2;
|
||||
*/
|
||||
s_controls.m4.generic.type = MTYPE_ACTION;
|
||||
s_controls.m4.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS|QMF_GRAYED|QMF_HIDDEN;
|
||||
s_controls.m4.generic.callback = Controls_ActionEvent;
|
||||
s_controls.m4.generic.ownerdraw = Controls_DrawKeyBinding;
|
||||
s_controls.m4.generic.id = ID_WEAPON3;
|
||||
|
||||
s_controls.grenadelauncher.generic.type = MTYPE_ACTION;
|
||||
s_controls.grenadelauncher.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS|QMF_GRAYED|QMF_HIDDEN;
|
||||
s_controls.grenadelauncher.generic.callback = Controls_ActionEvent;
|
||||
s_controls.grenadelauncher.generic.ownerdraw = Controls_DrawKeyBinding;
|
||||
s_controls.grenadelauncher.generic.id = ID_WEAPON4;
|
||||
|
||||
s_controls.rocketlauncher.generic.type = MTYPE_ACTION;
|
||||
s_controls.rocketlauncher.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS|QMF_GRAYED|QMF_HIDDEN;
|
||||
s_controls.rocketlauncher.generic.callback = Controls_ActionEvent;
|
||||
s_controls.rocketlauncher.generic.ownerdraw = Controls_DrawKeyBinding;
|
||||
s_controls.rocketlauncher.generic.id = ID_WEAPON5;
|
||||
|
||||
s_controls.lightning.generic.type = MTYPE_ACTION;
|
||||
s_controls.lightning.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS|QMF_GRAYED|QMF_HIDDEN;
|
||||
s_controls.lightning.generic.callback = Controls_ActionEvent;
|
||||
s_controls.lightning.generic.ownerdraw = Controls_DrawKeyBinding;
|
||||
s_controls.lightning.generic.id = ID_WEAPON6;
|
||||
|
||||
s_controls.railgun.generic.type = MTYPE_ACTION;
|
||||
s_controls.railgun.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS|QMF_GRAYED|QMF_HIDDEN;
|
||||
s_controls.railgun.generic.callback = Controls_ActionEvent;
|
||||
s_controls.railgun.generic.ownerdraw = Controls_DrawKeyBinding;
|
||||
s_controls.railgun.generic.id = ID_WEAPON7;
|
||||
|
||||
s_controls.plasma.generic.type = MTYPE_ACTION;
|
||||
s_controls.plasma.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS|QMF_GRAYED|QMF_HIDDEN;
|
||||
s_controls.plasma.generic.callback = Controls_ActionEvent;
|
||||
s_controls.plasma.generic.ownerdraw = Controls_DrawKeyBinding;
|
||||
s_controls.plasma.generic.id = ID_WEAPON8;
|
||||
|
||||
s_controls.bfg.generic.type = MTYPE_ACTION;
|
||||
s_controls.bfg.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS|QMF_GRAYED|QMF_HIDDEN;
|
||||
s_controls.bfg.generic.callback = Controls_ActionEvent;
|
||||
s_controls.bfg.generic.ownerdraw = Controls_DrawKeyBinding;
|
||||
s_controls.bfg.generic.id = ID_WEAPON9;
|
||||
|
||||
//Blaze: Reaction Binds
|
||||
s_controls.knife.generic.type = MTYPE_ACTION;
|
||||
s_controls.knife.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS|QMF_GRAYED|QMF_HIDDEN;
|
||||
s_controls.knife.generic.callback = Controls_ActionEvent;
|
||||
s_controls.knife.generic.ownerdraw = Controls_DrawKeyBinding;
|
||||
s_controls.knife.generic.id = ID_WEAPON1;
|
||||
|
||||
|
||||
s_controls.mk23.generic.type = MTYPE_ACTION;
|
||||
s_controls.mk23.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS|QMF_GRAYED|QMF_HIDDEN;
|
||||
s_controls.mk23.generic.callback = Controls_ActionEvent;
|
||||
s_controls.mk23.generic.ownerdraw = Controls_DrawKeyBinding;
|
||||
s_controls.mk23.generic.id = ID_WEAPON2;
|
||||
s_controls.mk23.generic.id = ID_WEAPON1;
|
||||
|
||||
s_controls.m3.generic.type = MTYPE_ACTION;
|
||||
s_controls.m3.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS|QMF_GRAYED|QMF_HIDDEN;
|
||||
s_controls.m3.generic.callback = Controls_ActionEvent;
|
||||
s_controls.m3.generic.ownerdraw = Controls_DrawKeyBinding;
|
||||
s_controls.m3.generic.id = ID_WEAPON2;
|
||||
|
||||
s_controls.mp5.generic.type = MTYPE_ACTION;
|
||||
s_controls.mp5.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS|QMF_GRAYED|QMF_HIDDEN;
|
||||
s_controls.mp5.generic.callback = Controls_ActionEvent;
|
||||
s_controls.mp5.generic.ownerdraw = Controls_DrawKeyBinding;
|
||||
s_controls.mp5.generic.id = ID_WEAPON3;
|
||||
|
||||
s_controls.handcannon.generic.type = MTYPE_ACTION;
|
||||
s_controls.handcannon.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS|QMF_GRAYED|QMF_HIDDEN;
|
||||
s_controls.handcannon.generic.callback = Controls_ActionEvent;
|
||||
s_controls.handcannon.generic.ownerdraw = Controls_DrawKeyBinding;
|
||||
s_controls.handcannon.generic.id = ID_WEAPON4;
|
||||
|
||||
s_controls.ssg3000.generic.type = MTYPE_ACTION;
|
||||
s_controls.ssg3000.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS|QMF_GRAYED|QMF_HIDDEN;
|
||||
s_controls.ssg3000.generic.callback = Controls_ActionEvent;
|
||||
s_controls.ssg3000.generic.ownerdraw = Controls_DrawKeyBinding;
|
||||
s_controls.ssg3000.generic.id = ID_WEAPON5;
|
||||
|
||||
s_controls.m4.generic.type = MTYPE_ACTION;
|
||||
s_controls.m4.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS|QMF_GRAYED|QMF_HIDDEN;
|
||||
s_controls.m4.generic.callback = Controls_ActionEvent;
|
||||
s_controls.m4.generic.ownerdraw = Controls_DrawKeyBinding;
|
||||
s_controls.m4.generic.id = ID_WEAPON6;
|
||||
|
||||
s_controls.akimbos.generic.type = MTYPE_ACTION;
|
||||
s_controls.akimbos.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS|QMF_GRAYED|QMF_HIDDEN;
|
||||
s_controls.akimbos.generic.callback = Controls_ActionEvent;
|
||||
s_controls.akimbos.generic.ownerdraw = Controls_DrawKeyBinding;
|
||||
s_controls.akimbos.generic.id = ID_WEAPON7;
|
||||
|
||||
s_controls.knife.generic.type = MTYPE_ACTION;
|
||||
s_controls.knife.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS|QMF_GRAYED|QMF_HIDDEN;
|
||||
s_controls.knife.generic.callback = Controls_ActionEvent;
|
||||
s_controls.knife.generic.ownerdraw = Controls_DrawKeyBinding;
|
||||
s_controls.knife.generic.id = ID_WEAPON8;
|
||||
|
||||
s_controls.grenade.generic.type = MTYPE_ACTION;
|
||||
s_controls.grenade.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS|QMF_GRAYED|QMF_HIDDEN;
|
||||
s_controls.grenade.generic.callback = Controls_ActionEvent;
|
||||
s_controls.grenade.generic.ownerdraw = Controls_DrawKeyBinding;
|
||||
s_controls.grenade.generic.id = ID_WEAPON9;
|
||||
|
||||
|
||||
s_controls.attack.generic.type = MTYPE_ACTION;
|
||||
s_controls.attack.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS|QMF_GRAYED|QMF_HIDDEN;
|
||||
|
@ -1752,11 +1797,15 @@ static void Controls_MenuInit( void )
|
|||
// Menu_AddItem( &s_controls.menu, &s_controls.banner );
|
||||
// Menu_AddItem( &s_controls.menu, &s_controls.framel );
|
||||
// Menu_AddItem( &s_controls.menu, &s_controls.framer );
|
||||
/*
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.multim );
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.setupm );
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.demom );
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.modsm );
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.exitm );
|
||||
*/
|
||||
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.player );
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.name );
|
||||
|
@ -1799,16 +1848,16 @@ static void Controls_MenuInit( void )
|
|||
// Menu_AddItem( &s_controls.menu, &s_controls.chainsaw );
|
||||
// Menu_AddItem( &s_controls.menu, &s_controls.machinegun );
|
||||
//Blaze: Reaction weapon additions Pistol replaces machinegun
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.knife);
|
||||
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.mk23);
|
||||
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.m3);
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.mp5 );
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.handcannon );
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.ssg3000 );
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.m4 );
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.grenadelauncher );
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.rocketlauncher );
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.lightning );
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.railgun );
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.plasma );
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.bfg );
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.akimbos );
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.knife );
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.grenade );
|
||||
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.showscores );
|
||||
Menu_AddItem( &s_controls.menu, &s_controls.useitem );
|
||||
|
@ -1860,8 +1909,10 @@ Controls_Cache
|
|||
void Controls_Cache( void ) {
|
||||
trap_R_RegisterShaderNoMip( ART_BACK0 );
|
||||
trap_R_RegisterShaderNoMip( ART_BACK1 );
|
||||
trap_R_RegisterShaderNoMip( ART_FRAMEL );
|
||||
trap_R_RegisterShaderNoMip( ART_FRAMER );
|
||||
trap_R_RegisterShaderNoMip( RQ3_SETUP_ICON );
|
||||
trap_R_RegisterShaderNoMip( RQ3_SETUP_TITLE );
|
||||
//trap_R_RegisterShaderNoMip( ART_FRAMEL );
|
||||
//trap_R_RegisterShaderNoMip( ART_FRAMER );
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -39,7 +39,7 @@ Elder's modifications
|
|||
#define LEFT_JUSTIFY_POSITION 330
|
||||
|
||||
//Elder: fader code parameters - plus nicer to access vec4_t with COLOR_*
|
||||
#define FADE_START_TIME 5000
|
||||
#define FADE_START_TIME 4000
|
||||
#define FADE_DURATION 10000
|
||||
#define COLOR_R 0
|
||||
#define COLOR_G 1
|
||||
|
@ -130,7 +130,7 @@ cr_line credits[] = { // edit this as necessary for your credits
|
|||
// Artwork - models, textures, whatever
|
||||
{ "", UI_CENTER|UI_SMALLFONT, &color_blue, FIXEDWIDTH },
|
||||
{ "ART", UI_RIGHT|UI_SMALLFONT, &color_headertext, FIXEDWIDTH },
|
||||
{ "SONIC128", UI_LEFT|UI_SMALLFONT, &color_maintext, FIXEDWIDTH },
|
||||
{ "LINH NGUYEN (SONIC128)", UI_LEFT|UI_SMALLFONT, &color_maintext, FIXEDWIDTH },
|
||||
{ "IAN MCEACHERN (FROST)", UI_LEFT|UI_SMALLFONT, &color_maintext, FIXEDWIDTH },
|
||||
{ "BRIAN MILLS (BIRDMAN)", UI_LEFT|UI_SMALLFONT, &color_maintext, FIXEDWIDTH },
|
||||
{ "MARK POTNICK (CLOUD)", UI_LEFT|UI_SMALLFONT, &color_maintext, FIXEDWIDTH },
|
||||
|
|
|
@ -2,17 +2,22 @@
|
|||
//
|
||||
#include "ui_local.h"
|
||||
|
||||
#define MODEL_BACK0 "menu/art/back_0"
|
||||
#define MODEL_BACK1 "menu/art/back_1"
|
||||
// Elder: changed
|
||||
#define MODEL_BACK0 "menu/art/rq3-menu-back.tga"
|
||||
#define MODEL_BACK1 "menu/art/rq3-menu-back-focus"
|
||||
#define MODEL_SELECT "menu/art/opponents_select"
|
||||
#define MODEL_SELECTED "menu/art/opponents_selected"
|
||||
#define MODEL_FRAMEL "menu/art/frame1_l"
|
||||
#define MODEL_FRAMER "menu/art/frame1_r"
|
||||
#define MODEL_PORTS "menu/art/player_models_ports"
|
||||
//#define MODEL_FRAMEL "menu/art/frame1_l"
|
||||
//#define MODEL_FRAMER "menu/art/frame1_r"
|
||||
//#define MODEL_PORTS "menu/art/player_models_ports"
|
||||
#define MODEL_ARROWS "menu/art/gs_arrows_0"
|
||||
#define MODEL_ARROWSL "menu/art/gs_arrows_l"
|
||||
#define MODEL_ARROWSR "menu/art/gs_arrows_r"
|
||||
|
||||
//Elder: RQ3 stuff
|
||||
#define RQ3_SETUP_ICON "menu/art/rq3-setup-player.jpg"
|
||||
#define RQ3_SETUP_TITLE "menu/art/rq3-title-setup.tga"
|
||||
|
||||
#define LOW_MEMORY (5 * 1024 * 1024)
|
||||
|
||||
static char* playermodel_artlist[] =
|
||||
|
@ -21,9 +26,9 @@ static char* playermodel_artlist[] =
|
|||
MODEL_BACK1,
|
||||
MODEL_SELECT,
|
||||
MODEL_SELECTED,
|
||||
MODEL_FRAMEL,
|
||||
MODEL_FRAMER,
|
||||
MODEL_PORTS,
|
||||
//MODEL_FRAMEL,
|
||||
//MODEL_FRAMER,
|
||||
//MODEL_PORTS,
|
||||
MODEL_ARROWS,
|
||||
MODEL_ARROWSL,
|
||||
MODEL_ARROWSR,
|
||||
|
@ -64,13 +69,19 @@ typedef struct
|
|||
//Blaze: Dont need this any more
|
||||
// menubitmap_s framel;
|
||||
// menubitmap_s framer;
|
||||
/*
|
||||
menutext_s multim;
|
||||
menutext_s setupm;
|
||||
menutext_s demom;
|
||||
menutext_s modsm;
|
||||
menutext_s exitm;
|
||||
*/
|
||||
|
||||
menubitmap_s ports;
|
||||
//Elder: RQ3 stuff
|
||||
menubitmap_s rq3_setuptitle;
|
||||
menubitmap_s rq3_setupicon;
|
||||
|
||||
// menubitmap_s ports;
|
||||
// menutext_s banner;
|
||||
menubitmap_s back;
|
||||
menubitmap_s player;
|
||||
|
@ -79,7 +90,7 @@ typedef struct
|
|||
menubitmap_s right;
|
||||
menutext_s modelname;
|
||||
menutext_s skinname;
|
||||
menutext_s playername;
|
||||
// menutext_s playername;
|
||||
playerInfo_t playerinfo;
|
||||
int nummodels;
|
||||
char modelnames[MAX_PLAYERMODELS][128];
|
||||
|
@ -91,6 +102,26 @@ typedef struct
|
|||
|
||||
static playermodel_t s_playermodel;
|
||||
|
||||
|
||||
/*
|
||||
===============
|
||||
Added by Elder
|
||||
PlayerModel_MenuDraw
|
||||
===============
|
||||
*/
|
||||
static void PlayerModel_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_playermodel.menu );
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
=================
|
||||
PlayerModel_UpdateGrid
|
||||
|
@ -163,13 +194,13 @@ static void PlayerModel_UpdateModel( void )
|
|||
|
||||
memset( &s_playermodel.playerinfo, 0, sizeof(playerInfo_t) );
|
||||
|
||||
viewangles[YAW] = 180 - 30;
|
||||
viewangles[YAW] = 180 - 60;
|
||||
viewangles[PITCH] = 0;
|
||||
viewangles[ROLL] = 0;
|
||||
VectorClear( moveangles );
|
||||
|
||||
UI_PlayerInfo_SetModel( &s_playermodel.playerinfo, s_playermodel.modelskin );
|
||||
UI_PlayerInfo_SetInfo( &s_playermodel.playerinfo, LEGS_IDLE, TORSO_STAND, viewangles, moveangles, WP_KNIFE, qfalse );
|
||||
UI_PlayerInfo_SetInfo( &s_playermodel.playerinfo, LEGS_IDLE, TORSO_STAND, viewangles, moveangles, WP_M4, qfalse );
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -450,8 +481,8 @@ static void PlayerModel_SetMenuItems( void )
|
|||
char* pdest;
|
||||
|
||||
// name
|
||||
trap_Cvar_VariableStringBuffer( "name", s_playermodel.playername.string, 16 );
|
||||
Q_CleanStr( s_playermodel.playername.string );
|
||||
//trap_Cvar_VariableStringBuffer( "name", s_playermodel.playername.string, 16 );
|
||||
//Q_CleanStr( s_playermodel.playername.string );
|
||||
|
||||
// model
|
||||
trap_Cvar_VariableStringBuffer( "model", s_playermodel.modelskin, 64 );
|
||||
|
@ -506,7 +537,7 @@ static void PlayerModel_MenuInit( void )
|
|||
int k;
|
||||
int x;
|
||||
int y;
|
||||
static char playername[32];
|
||||
//static char playername[32];
|
||||
static char modelname[32];
|
||||
static char skinname[32];
|
||||
|
||||
|
@ -515,6 +546,7 @@ static void PlayerModel_MenuInit( void )
|
|||
|
||||
PlayerModel_Cache();
|
||||
|
||||
s_playermodel.menu.draw = PlayerModel_MenuDraw;
|
||||
s_playermodel.menu.key = PlayerModel_MenuKey;
|
||||
s_playermodel.menu.wrapAround = qtrue;
|
||||
s_playermodel.menu.fullscreen = qtrue;
|
||||
|
@ -543,6 +575,7 @@ static void PlayerModel_MenuInit( void )
|
|||
s_playermodel.framer.width = 256;
|
||||
s_playermodel.framer.height = 334;
|
||||
*/
|
||||
/*
|
||||
s_playermodel.multim.generic.type = MTYPE_PTEXT;
|
||||
s_playermodel.multim.generic.flags = QMF_CENTER_JUSTIFY|QMF_PULSEIFFOCUS|QMF_INACTIVE;
|
||||
s_playermodel.multim.generic.x = 120;
|
||||
|
@ -583,16 +616,36 @@ static void PlayerModel_MenuInit( void )
|
|||
s_playermodel.exitm.string = "EXIT";
|
||||
s_playermodel.exitm.color = color_red;
|
||||
s_playermodel.exitm.style = UI_CENTER | UI_DROPSHADOW;
|
||||
*/
|
||||
|
||||
//Elder: Info for system icon
|
||||
s_playermodel.rq3_setupicon.generic.type = MTYPE_BITMAP;
|
||||
s_playermodel.rq3_setupicon.generic.name = RQ3_SETUP_ICON;
|
||||
s_playermodel.rq3_setupicon.generic.flags = QMF_LEFT_JUSTIFY|QMF_INACTIVE;
|
||||
s_playermodel.rq3_setupicon.generic.x = 0;
|
||||
s_playermodel.rq3_setupicon.generic.y = 4;
|
||||
s_playermodel.rq3_setupicon.width = RQ3_ICON_WIDTH;
|
||||
s_playermodel.rq3_setupicon.height = RQ3_ICON_HEIGHT;
|
||||
|
||||
//Elder: Info for setup title
|
||||
s_playermodel.rq3_setuptitle.generic.type = MTYPE_BITMAP;
|
||||
s_playermodel.rq3_setuptitle.generic.name = RQ3_SETUP_TITLE;
|
||||
s_playermodel.rq3_setuptitle.generic.flags = QMF_LEFT_JUSTIFY|QMF_INACTIVE;
|
||||
s_playermodel.rq3_setuptitle.generic.x = 64;
|
||||
s_playermodel.rq3_setuptitle.generic.y = 12;
|
||||
s_playermodel.rq3_setuptitle.width = 256;
|
||||
s_playermodel.rq3_setuptitle.height = 32;
|
||||
|
||||
/*
|
||||
s_playermodel.ports.generic.type = MTYPE_BITMAP;
|
||||
s_playermodel.ports.generic.name = MODEL_PORTS;
|
||||
s_playermodel.ports.generic.flags = QMF_LEFT_JUSTIFY|QMF_INACTIVE;
|
||||
s_playermodel.ports.generic.x = 50;
|
||||
s_playermodel.ports.generic.y = 59;
|
||||
s_playermodel.ports.generic.y = 72;
|
||||
s_playermodel.ports.width = 274;
|
||||
s_playermodel.ports.height = 274;
|
||||
|
||||
y = 59;
|
||||
*/
|
||||
y = 72;
|
||||
for (i=0,k=0; i<PLAYERGRID_ROWS; i++)
|
||||
{
|
||||
x = 50;
|
||||
|
@ -626,7 +679,7 @@ static void PlayerModel_MenuInit( void )
|
|||
}
|
||||
y += 64+6;
|
||||
}
|
||||
|
||||
/*
|
||||
s_playermodel.playername.generic.type = MTYPE_PTEXT;
|
||||
s_playermodel.playername.generic.flags = QMF_CENTER_JUSTIFY|QMF_INACTIVE;
|
||||
s_playermodel.playername.generic.x = 320;
|
||||
|
@ -634,11 +687,11 @@ static void PlayerModel_MenuInit( void )
|
|||
s_playermodel.playername.string = playername;
|
||||
s_playermodel.playername.style = UI_CENTER;
|
||||
s_playermodel.playername.color = text_color_normal;
|
||||
|
||||
*/
|
||||
s_playermodel.modelname.generic.type = MTYPE_PTEXT;
|
||||
s_playermodel.modelname.generic.flags = QMF_CENTER_JUSTIFY|QMF_INACTIVE;
|
||||
s_playermodel.modelname.generic.x = 497;
|
||||
s_playermodel.modelname.generic.y = 54;
|
||||
s_playermodel.modelname.generic.y = 64;
|
||||
s_playermodel.modelname.string = modelname;
|
||||
s_playermodel.modelname.style = UI_CENTER;
|
||||
s_playermodel.modelname.color = text_color_normal;
|
||||
|
@ -646,7 +699,7 @@ static void PlayerModel_MenuInit( void )
|
|||
s_playermodel.skinname.generic.type = MTYPE_PTEXT;
|
||||
s_playermodel.skinname.generic.flags = QMF_CENTER_JUSTIFY|QMF_INACTIVE;
|
||||
s_playermodel.skinname.generic.x = 497;
|
||||
s_playermodel.skinname.generic.y = 394;
|
||||
s_playermodel.skinname.generic.y = 380;
|
||||
s_playermodel.skinname.string = skinname;
|
||||
s_playermodel.skinname.style = UI_CENTER;
|
||||
s_playermodel.skinname.color = text_color_normal;
|
||||
|
@ -663,7 +716,7 @@ static void PlayerModel_MenuInit( void )
|
|||
s_playermodel.arrows.generic.name = MODEL_ARROWS;
|
||||
s_playermodel.arrows.generic.flags = QMF_INACTIVE;
|
||||
s_playermodel.arrows.generic.x = 125;
|
||||
s_playermodel.arrows.generic.y = 340;
|
||||
s_playermodel.arrows.generic.y = 360;
|
||||
s_playermodel.arrows.width = 128;
|
||||
s_playermodel.arrows.height = 32;
|
||||
|
||||
|
@ -672,7 +725,7 @@ static void PlayerModel_MenuInit( void )
|
|||
s_playermodel.left.generic.callback = PlayerModel_MenuEvent;
|
||||
s_playermodel.left.generic.id = ID_PREVPAGE;
|
||||
s_playermodel.left.generic.x = 125;
|
||||
s_playermodel.left.generic.y = 340;
|
||||
s_playermodel.left.generic.y = 360;
|
||||
s_playermodel.left.width = 64;
|
||||
s_playermodel.left.height = 32;
|
||||
s_playermodel.left.focuspic = MODEL_ARROWSL;
|
||||
|
@ -682,7 +735,7 @@ static void PlayerModel_MenuInit( void )
|
|||
s_playermodel.right.generic.callback = PlayerModel_MenuEvent;
|
||||
s_playermodel.right.generic.id = ID_NEXTPAGE;
|
||||
s_playermodel.right.generic.x = 125+61;
|
||||
s_playermodel.right.generic.y = 340;
|
||||
s_playermodel.right.generic.y = 360;
|
||||
s_playermodel.right.width = 64;
|
||||
s_playermodel.right.height = 32;
|
||||
s_playermodel.right.focuspic = MODEL_ARROWSR;
|
||||
|
@ -692,24 +745,27 @@ static void PlayerModel_MenuInit( void )
|
|||
s_playermodel.back.generic.flags = QMF_LEFT_JUSTIFY|QMF_PULSEIFFOCUS;
|
||||
s_playermodel.back.generic.callback = PlayerModel_MenuEvent;
|
||||
s_playermodel.back.generic.id = ID_BACK;
|
||||
s_playermodel.back.generic.x = 0;
|
||||
s_playermodel.back.generic.y = 480-64;
|
||||
s_playermodel.back.width = 128;
|
||||
s_playermodel.back.height = 64;
|
||||
s_playermodel.back.generic.x = 8;
|
||||
s_playermodel.back.generic.y = 480-44;
|
||||
s_playermodel.back.width = 32;
|
||||
s_playermodel.back.height = 32;
|
||||
s_playermodel.back.focuspic = MODEL_BACK1;
|
||||
|
||||
//Blaze: Dont need this
|
||||
// Menu_AddItem( &s_playermodel.menu, &s_playermodel.banner );
|
||||
// Menu_AddItem( &s_playermodel.menu, &s_playermodel.framel );
|
||||
// Menu_AddItem( &s_playermodel.menu, &s_playermodel.framer );
|
||||
/*
|
||||
Menu_AddItem( &s_playermodel.menu, &s_playermodel.demom );
|
||||
Menu_AddItem( &s_playermodel.menu, &s_playermodel.multim );
|
||||
Menu_AddItem( &s_playermodel.menu, &s_playermodel.exitm );
|
||||
Menu_AddItem( &s_playermodel.menu, &s_playermodel.setupm );
|
||||
Menu_AddItem( &s_playermodel.menu, &s_playermodel.modsm);
|
||||
|
||||
Menu_AddItem( &s_playermodel.menu, &s_playermodel.ports );
|
||||
Menu_AddItem( &s_playermodel.menu, &s_playermodel.playername );
|
||||
*/
|
||||
Menu_AddItem( &s_playermodel.menu, &s_playermodel.rq3_setupicon );
|
||||
Menu_AddItem( &s_playermodel.menu, &s_playermodel.rq3_setuptitle );
|
||||
// Menu_AddItem( &s_playermodel.menu, &s_playermodel.ports );
|
||||
// Menu_AddItem( &s_playermodel.menu, &s_playermodel.playername );
|
||||
Menu_AddItem( &s_playermodel.menu, &s_playermodel.modelname );
|
||||
Menu_AddItem( &s_playermodel.menu, &s_playermodel.skinname );
|
||||
|
||||
|
|
|
@ -4,8 +4,10 @@
|
|||
|
||||
//#define ART_FRAMEL "menu/art/frame2_l"
|
||||
//#define ART_FRAMER "menu/art/frame1_r"
|
||||
#define ART_MODEL0 "menu/art/model_0"
|
||||
#define ART_MODEL1 "menu/art/model_1"
|
||||
//#define ART_MODEL0 "menu/art/model_0"
|
||||
//#define ART_MODEL1 "menu/art/model_1"
|
||||
#define ART_MODEL0 "menu/art/rq3-player-models.jpg"
|
||||
#define ART_MODEL1 "menu/art/rq3-player-models-focus.jpg"
|
||||
#define ART_BACK0 "menu/art/rq3-menu-back.tga"
|
||||
#define ART_BACK1 "menu/art/rq3-menu-back-focus.tga"
|
||||
//#define ART_BACK0 "menu/art/back_0"
|
||||
|
@ -23,6 +25,8 @@
|
|||
#define RQ3_SETUP_ICON "menu/art/rq3-setup-player.jpg"
|
||||
#define RQ3_SETUP_TITLE "menu/art/rq3-title-setup.tga"
|
||||
|
||||
#define PLAYERINFO_X_POS 72
|
||||
|
||||
#define ID_NAME 10
|
||||
#define ID_HANDICAP 11
|
||||
#define ID_EFFECTS 12
|
||||
|
@ -163,9 +167,10 @@ static void PlayerSettings_DrawName( void *self ) {
|
|||
}
|
||||
|
||||
// draw at bottom also using proportional font
|
||||
Q_strncpyz( name, f->field.buffer, sizeof(name) );
|
||||
Q_CleanStr( name );
|
||||
UI_DrawProportionalString( 320, 440, name, UI_CENTER|UI_BIGFONT, text_color_normal );
|
||||
// Elder removed
|
||||
//Q_strncpyz( name, f->field.buffer, sizeof(name) );
|
||||
//Q_CleanStr( name );
|
||||
//UI_DrawProportionalString( 320, 440, name, UI_CENTER|UI_BIGFONT, text_color_normal );
|
||||
}
|
||||
|
||||
|
||||
|
@ -239,10 +244,11 @@ static void PlayerSettings_DrawPlayer( void *self ) {
|
|||
strcpy( s_playersettings.playerModel, buf );
|
||||
|
||||
viewangles[YAW] = 180 - 60;
|
||||
//viewangles[YAW] = ( uis.realtime / 1000 ) % 360;
|
||||
viewangles[PITCH] = 0;
|
||||
viewangles[ROLL] = 0;
|
||||
//Blaze: Default draw of player, changed WP_MACHINEGUN to WP_PISTOL
|
||||
UI_PlayerInfo_SetInfo( &s_playersettings.playerinfo, LEGS_IDLE, TORSO_STAND, viewangles, vec3_origin, WP_PISTOL, qfalse );
|
||||
UI_PlayerInfo_SetInfo( &s_playersettings.playerinfo, LEGS_IDLE, TORSO_STAND, viewangles, vec3_origin, WP_M4, qfalse );
|
||||
}
|
||||
|
||||
b = (menubitmap_s*) self;
|
||||
|
@ -304,12 +310,13 @@ static void PlayerSettings_SetMenuItems( void ) {
|
|||
memset( &s_playersettings.playerinfo, 0, sizeof(playerInfo_t) );
|
||||
|
||||
viewangles[YAW] = 180 - 30;
|
||||
//viewangles[YAW] = ( uis.realtime / 1000 ) % 360;
|
||||
viewangles[PITCH] = 0;
|
||||
viewangles[ROLL] = 0;
|
||||
|
||||
UI_PlayerInfo_SetModel( &s_playersettings.playerinfo, UI_Cvar_VariableString( "model" ) );
|
||||
//Blaze: Changed WP_MACHINEGUN to WP_PISTOL
|
||||
UI_PlayerInfo_SetInfo( &s_playersettings.playerinfo, LEGS_IDLE, TORSO_STAND, viewangles, vec3_origin, WP_PISTOL, qfalse );
|
||||
UI_PlayerInfo_SetInfo( &s_playersettings.playerinfo, LEGS_IDLE, TORSO_STAND, viewangles, vec3_origin, WP_M4, qfalse );
|
||||
|
||||
// handicap
|
||||
h = Com_Clamp( 5, 100, trap_Cvar_VariableValue("handicap") );
|
||||
|
@ -355,6 +362,8 @@ static void PlayerSettings_MenuDraw( void ) {
|
|||
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_playersettings.menu );
|
||||
|
@ -468,7 +477,7 @@ static void PlayerSettings_MenuInit( void ) {
|
|||
s_playersettings.name.generic.ownerdraw = PlayerSettings_DrawName;
|
||||
s_playersettings.name.field.widthInChars = MAX_NAMELENGTH;
|
||||
s_playersettings.name.field.maxchars = MAX_NAMELENGTH;
|
||||
s_playersettings.name.generic.x = 192;
|
||||
s_playersettings.name.generic.x = PLAYERINFO_X_POS;
|
||||
s_playersettings.name.generic.y = y;
|
||||
s_playersettings.name.generic.left = 192 - 8;
|
||||
s_playersettings.name.generic.top = y - 8;
|
||||
|
@ -480,7 +489,7 @@ static void PlayerSettings_MenuInit( void ) {
|
|||
s_playersettings.handicap.generic.flags = QMF_NODEFAULTINIT;
|
||||
s_playersettings.handicap.generic.id = ID_HANDICAP;
|
||||
s_playersettings.handicap.generic.ownerdraw = PlayerSettings_DrawHandicap;
|
||||
s_playersettings.handicap.generic.x = 192;
|
||||
s_playersettings.handicap.generic.x = PLAYERINFO_X_POS;
|
||||
s_playersettings.handicap.generic.y = y;
|
||||
s_playersettings.handicap.generic.left = 192 - 8;
|
||||
s_playersettings.handicap.generic.top = y - 8;
|
||||
|
@ -493,7 +502,7 @@ static void PlayerSettings_MenuInit( void ) {
|
|||
s_playersettings.effects.generic.flags = QMF_NODEFAULTINIT;
|
||||
s_playersettings.effects.generic.id = ID_EFFECTS;
|
||||
s_playersettings.effects.generic.ownerdraw = PlayerSettings_DrawEffects;
|
||||
s_playersettings.effects.generic.x = 192;
|
||||
s_playersettings.effects.generic.x = PLAYERINFO_X_POS;
|
||||
s_playersettings.effects.generic.y = y;
|
||||
s_playersettings.effects.generic.left = 192 - 8;
|
||||
s_playersettings.effects.generic.top = y - 8;
|
||||
|
@ -506,10 +515,10 @@ static void PlayerSettings_MenuInit( void ) {
|
|||
s_playersettings.model.generic.flags = QMF_RIGHT_JUSTIFY|QMF_PULSEIFFOCUS;
|
||||
s_playersettings.model.generic.id = ID_MODEL;
|
||||
s_playersettings.model.generic.callback = PlayerSettings_MenuEvent;
|
||||
s_playersettings.model.generic.x = 640;
|
||||
s_playersettings.model.generic.y = 480-64;
|
||||
s_playersettings.model.width = 128;
|
||||
s_playersettings.model.height = 64;
|
||||
s_playersettings.model.generic.x = 640 - 8;
|
||||
s_playersettings.model.generic.y = 480-44;
|
||||
s_playersettings.model.width = 64;
|
||||
s_playersettings.model.height = 32;
|
||||
s_playersettings.model.focuspic = ART_MODEL1;
|
||||
|
||||
s_playersettings.player.generic.type = MTYPE_BITMAP;
|
||||
|
|
|
@ -40,7 +40,11 @@ GAME OPTIONS MENU
|
|||
|
||||
//Elder: RQ3 stuff
|
||||
#define ID_MUZZLEFLASH 139
|
||||
#define ID_PAINBLEND 140
|
||||
#define ID_ANNOUNCER 141
|
||||
#define ID_IMPACTEFFECTS 142
|
||||
|
||||
//#define
|
||||
|
||||
typedef struct {
|
||||
menuframework_s menu;
|
||||
|
@ -61,6 +65,9 @@ typedef struct {
|
|||
menutext_s rq3_statustext;
|
||||
|
||||
menuradiobutton_s rq3_muzzleflash;
|
||||
menuradiobutton_s rq3_painblend;
|
||||
menuradiobutton_s rq3_announcer;
|
||||
menuradiobutton_s rq3_impacteffects;
|
||||
|
||||
menulist_s crosshair;
|
||||
menuradiobutton_s simpleitems;
|
||||
|
@ -120,7 +127,10 @@ static void Preferences_SetMenuItems( void ) {
|
|||
s_preferences.drawteamoverlay.curvalue = Com_Clamp( 0, 3, trap_Cvar_VariableValue( "cg_drawTeamOverlay" ) );
|
||||
s_preferences.allowdownload.curvalue = trap_Cvar_VariableValue( "cl_allowDownload" ) != 0;
|
||||
//Elder: added
|
||||
s_preferences.rq3_muzzleflash.curvalue = trap_Cvar_VariableValue( "rxn_flash" ) != 0;
|
||||
s_preferences.rq3_muzzleflash.curvalue = trap_Cvar_VariableValue( "cg_RQ3_flash" ) != 0;
|
||||
s_preferences.rq3_painblend.curvalue = trap_Cvar_VariableValue( "cg_RQ3_painBlend" ) != 0;
|
||||
s_preferences.rq3_impacteffects.curvalue = trap_Cvar_VariableValue( "cg_RQ3_impactEffects" ) != 0;
|
||||
s_preferences.rq3_announcer.curvalue = trap_Cvar_VariableValue( "cg_RQ3_announcer" ) != 0;
|
||||
}
|
||||
|
||||
|
||||
|
@ -180,7 +190,19 @@ static void Preferences_Event( void* ptr, int event ) {
|
|||
case ID_MUZZLEFLASH:
|
||||
s_preferences.rq3_statustext.string = "Enable weapon muzzle flashes";
|
||||
break;
|
||||
|
||||
|
||||
case ID_PAINBLEND:
|
||||
s_preferences.rq3_statustext.string = "Enable screen pain blends";
|
||||
break;
|
||||
|
||||
case ID_ANNOUNCER:
|
||||
s_preferences.rq3_statustext.string = "Enable Quake 3 announcer";
|
||||
break;
|
||||
|
||||
case ID_IMPACTEFFECTS:
|
||||
s_preferences.rq3_statustext.string = "Enable visual projectile impact effects";
|
||||
break;
|
||||
|
||||
case ID_BACK:
|
||||
s_preferences.rq3_statustext.string = "Return to main menu";
|
||||
break;
|
||||
|
@ -245,7 +267,11 @@ static void Preferences_Event( void* ptr, int event ) {
|
|||
break;
|
||||
|
||||
case ID_MUZZLEFLASH:
|
||||
trap_Cvar_SetValue( "rxn_flash", s_preferences.allowdownload.curvalue );
|
||||
trap_Cvar_SetValue( "cg_RQ3_flash", s_preferences.allowdownload.curvalue );
|
||||
break;
|
||||
|
||||
case ID_PAINBLEND:
|
||||
trap_Cvar_SetValue( "cg_RQ3_painBlend", s_preferences.allowdownload.curvalue );
|
||||
break;
|
||||
|
||||
case ID_BACK:
|
||||
|
@ -432,6 +458,15 @@ static void Preferences_MenuInit( void ) {
|
|||
s_preferences.wallmarks.generic.x = PREFERENCES_X_POS;
|
||||
s_preferences.wallmarks.generic.y = y;
|
||||
|
||||
y += BIGCHAR_HEIGHT+2;
|
||||
s_preferences.rq3_impacteffects.generic.type = MTYPE_RADIOBUTTON;
|
||||
s_preferences.rq3_impacteffects.generic.name = "Impact Effects:";
|
||||
s_preferences.rq3_impacteffects.generic.flags = QMF_PULSEIFFOCUS|QMF_SMALLFONT;
|
||||
s_preferences.rq3_impacteffects.generic.callback = Preferences_Event;
|
||||
s_preferences.rq3_impacteffects.generic.id = ID_IMPACTEFFECTS;
|
||||
s_preferences.rq3_impacteffects.generic.x = PREFERENCES_X_POS;
|
||||
s_preferences.rq3_impacteffects.generic.y = y;
|
||||
|
||||
y += BIGCHAR_HEIGHT+2;
|
||||
s_preferences.brass.generic.type = MTYPE_RADIOBUTTON;
|
||||
s_preferences.brass.generic.name = "Ejecting Brass:";
|
||||
|
@ -459,6 +494,24 @@ static void Preferences_MenuInit( void ) {
|
|||
s_preferences.rq3_muzzleflash.generic.x = PREFERENCES_X_POS;
|
||||
s_preferences.rq3_muzzleflash.generic.y = y;
|
||||
|
||||
y += BIGCHAR_HEIGHT+2;
|
||||
s_preferences.rq3_painblend.generic.type = MTYPE_RADIOBUTTON;
|
||||
s_preferences.rq3_painblend.generic.name = "Pain Blends:";
|
||||
s_preferences.rq3_painblend.generic.flags = QMF_PULSEIFFOCUS|QMF_SMALLFONT;
|
||||
s_preferences.rq3_painblend.generic.callback = Preferences_Event;
|
||||
s_preferences.rq3_painblend.generic.id = ID_PAINBLEND;
|
||||
s_preferences.rq3_painblend.generic.x = PREFERENCES_X_POS;
|
||||
s_preferences.rq3_painblend.generic.y = y;
|
||||
|
||||
y += BIGCHAR_HEIGHT+2;
|
||||
s_preferences.rq3_announcer.generic.type = MTYPE_RADIOBUTTON;
|
||||
s_preferences.rq3_announcer.generic.name = "Announcer:";
|
||||
s_preferences.rq3_announcer.generic.flags = QMF_PULSEIFFOCUS|QMF_SMALLFONT;
|
||||
s_preferences.rq3_announcer.generic.callback = Preferences_Event;
|
||||
s_preferences.rq3_announcer.generic.id = ID_ANNOUNCER;
|
||||
s_preferences.rq3_announcer.generic.x = PREFERENCES_X_POS;
|
||||
s_preferences.rq3_announcer.generic.y = y;
|
||||
|
||||
y += BIGCHAR_HEIGHT+2;
|
||||
s_preferences.identifytarget.generic.type = MTYPE_RADIOBUTTON;
|
||||
s_preferences.identifytarget.generic.name = "Identify Target:";
|
||||
|
@ -552,9 +605,12 @@ static void Preferences_MenuInit( void ) {
|
|||
Menu_AddItem( &s_preferences.menu, &s_preferences.crosshair );
|
||||
Menu_AddItem( &s_preferences.menu, &s_preferences.simpleitems );
|
||||
Menu_AddItem( &s_preferences.menu, &s_preferences.wallmarks );
|
||||
Menu_AddItem( &s_preferences.menu, &s_preferences.rq3_impacteffects );
|
||||
Menu_AddItem( &s_preferences.menu, &s_preferences.brass );
|
||||
Menu_AddItem( &s_preferences.menu, &s_preferences.dynamiclights );
|
||||
Menu_AddItem( &s_preferences.menu, &s_preferences.rq3_muzzleflash );
|
||||
Menu_AddItem( &s_preferences.menu, &s_preferences.rq3_painblend );
|
||||
Menu_AddItem( &s_preferences.menu, &s_preferences.rq3_announcer );
|
||||
Menu_AddItem( &s_preferences.menu, &s_preferences.identifytarget );
|
||||
Menu_AddItem( &s_preferences.menu, &s_preferences.highqualitysky );
|
||||
Menu_AddItem( &s_preferences.menu, &s_preferences.synceveryframe );
|
||||
|
|
Loading…
Reference in a new issue