mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2024-11-23 12:52:46 +00:00
Added teamname to the playerconfig dialog.
Made noskins a archived var. Added a network menu. -> just realized, that menu-code is still to blown and still sucks too much. i am thinking about a more templated menu-code. (tanwha: i will design something nice ;)
This commit is contained in:
parent
d5fad096c0
commit
264e9b1617
2 changed files with 177 additions and 15 deletions
|
@ -438,21 +438,32 @@ MENU_feature_options =
|
||||||
***************************************************/
|
***************************************************/
|
||||||
|
|
||||||
string playername_cvar; // name of the cvar holding playername (gametype dependend)
|
string playername_cvar; // name of the cvar holding playername (gametype dependend)
|
||||||
|
string teamname_cvar; // name of the cvar holding teamname (MAY ? gametype dependend)
|
||||||
|
|
||||||
// input for playername
|
// input for playername and teamname
|
||||||
string player_config_playername;
|
|
||||||
inputline_t player_config_plname_il;
|
inputline_t player_config_plname_il;
|
||||||
|
inputline_t player_config_tname_il;
|
||||||
|
|
||||||
// this holds active inputline pointer
|
// this holds active inputline pointer
|
||||||
inputline_t player_config_iactive;
|
inputline_t player_config_iactive;
|
||||||
|
|
||||||
|
// Y padding for the player config
|
||||||
|
#define PLAYER_CONF_Y_PAD 60
|
||||||
|
|
||||||
// table for cursor-positions
|
// table for cursor-positions
|
||||||
#define NUM_PLAYERCONFIG_CMDS 3
|
#define NUM_PLAYERCONFIG_CMDS 4
|
||||||
integer [NUM_PLAYERCONFIG_CMDS] player_config_cursor_tbl = { 68, 90, 105 };
|
integer [NUM_PLAYERCONFIG_CMDS] player_config_cursor_tbl = {
|
||||||
|
PLAYER_CONF_Y_PAD + 8,
|
||||||
|
PLAYER_CONF_Y_PAD + 20 + 8,
|
||||||
|
PLAYER_CONF_Y_PAD + 45,
|
||||||
|
PLAYER_CONF_Y_PAD + 60
|
||||||
|
};
|
||||||
|
|
||||||
integer player_config_cursor;
|
integer player_config_cursor;
|
||||||
|
|
||||||
// array, which holds commands for this menu
|
// array, which holds commands for this menu
|
||||||
string [NUM_PLAYERCONFIG_CMDS] player_config_vals = {
|
string [NUM_PLAYERCONFIG_CMDS] player_config_vals = {
|
||||||
|
"",
|
||||||
"",
|
"",
|
||||||
"topcolor",
|
"topcolor",
|
||||||
"bottomcolor"
|
"bottomcolor"
|
||||||
|
@ -483,11 +494,15 @@ KEYEV_player_options =
|
||||||
if (player_config_iactive) {
|
if (player_config_iactive) {
|
||||||
if(player_config_iactive == player_config_plname_il) {
|
if(player_config_iactive == player_config_plname_il) {
|
||||||
cvar_set(playername_cvar,InputLine_GetText(player_config_plname_il));
|
cvar_set(playername_cvar,InputLine_GetText(player_config_plname_il));
|
||||||
|
} else if(player_config_iactive == player_config_tname_il) {
|
||||||
|
cvar_set(teamname_cvar,InputLine_GetText(player_config_tname_il));
|
||||||
}
|
}
|
||||||
player_config_iactive = NIL;
|
player_config_iactive = NIL;
|
||||||
} else {
|
} else {
|
||||||
if (player_config_cursor == 0) {
|
if (player_config_cursor == 0) {
|
||||||
player_config_iactive = player_config_plname_il;
|
player_config_iactive = player_config_plname_il;
|
||||||
|
} else if(player_config_cursor == 1) {
|
||||||
|
player_config_iactive = player_config_tname_il;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -529,7 +544,6 @@ integer ()
|
||||||
DRAW_player_options =
|
DRAW_player_options =
|
||||||
{
|
{
|
||||||
local integer cursor_pad = 0, spacing = 120;
|
local integer cursor_pad = 0, spacing = 120;
|
||||||
#define PLAYER_CONF_Y_PAD 60
|
|
||||||
|
|
||||||
Draw_Pic (16, 4, "gfx/qplaque.lmp");
|
Draw_Pic (16, 4, "gfx/qplaque.lmp");
|
||||||
Draw_CenterPic (160,4, "gfx/p_option.lmp");
|
Draw_CenterPic (160,4, "gfx/p_option.lmp");
|
||||||
|
@ -537,23 +551,29 @@ DRAW_player_options =
|
||||||
Draw_String (54, 50, "--------");
|
Draw_String (54, 50, "--------");
|
||||||
|
|
||||||
|
|
||||||
text_box(70, PLAYER_CONF_Y_PAD, 17, 1);
|
Draw_String(70, PLAYER_CONF_Y_PAD + 8, "Name..:");
|
||||||
InputLine_Draw (player_config_plname_il, 70, PLAYER_CONF_Y_PAD + 8,
|
text_box(120, PLAYER_CONF_Y_PAD, 17, 1);
|
||||||
player_config_iactive != NIL);
|
InputLine_Draw (player_config_plname_il, 120, PLAYER_CONF_Y_PAD + 8,
|
||||||
|
player_config_iactive == player_config_plname_il);
|
||||||
|
|
||||||
|
Draw_String(70, PLAYER_CONF_Y_PAD + 20 + 8, "Team..:");
|
||||||
|
text_box(120, PLAYER_CONF_Y_PAD + 20, 5, 1);
|
||||||
|
InputLine_Draw (player_config_tname_il, 120, PLAYER_CONF_Y_PAD + 8 + 20,
|
||||||
|
player_config_iactive == player_config_tname_il);
|
||||||
|
|
||||||
|
|
||||||
draw_val_item (70, PLAYER_CONF_Y_PAD + 30, spacing, "Top color",
|
draw_val_item (70, PLAYER_CONF_Y_PAD + 45, spacing, "Top color",
|
||||||
" " + ftos(cvar("topcolor")));
|
" " + ftos(cvar("topcolor")));
|
||||||
draw_val_item (70, PLAYER_CONF_Y_PAD + 45, spacing, "Bottom color",
|
draw_val_item (70, PLAYER_CONF_Y_PAD + 60, spacing, "Bottom color",
|
||||||
" " + ftos(cvar("bottomcolor")));
|
" " + ftos(cvar("bottomcolor")));
|
||||||
|
|
||||||
// Draw nice color boxes
|
// Draw nice color boxes
|
||||||
text_box(192, PLAYER_CONF_Y_PAD + 30 - 8, 1, 1);
|
|
||||||
Draw_Fill (200, PLAYER_CONF_Y_PAD + 30, 16, 8,
|
|
||||||
ftoi(cvar("topcolor"))*16+8);
|
|
||||||
|
|
||||||
text_box(192, PLAYER_CONF_Y_PAD + 45 - 8, 1, 1);
|
text_box(192, PLAYER_CONF_Y_PAD + 45 - 8, 1, 1);
|
||||||
Draw_Fill (200, PLAYER_CONF_Y_PAD + 45, 16, 8,
|
Draw_Fill (200, PLAYER_CONF_Y_PAD + 45, 16, 8,
|
||||||
|
ftoi(cvar("topcolor"))*16+8);
|
||||||
|
|
||||||
|
text_box(192, PLAYER_CONF_Y_PAD + 60 - 8, 1, 1);
|
||||||
|
Draw_Fill (200, PLAYER_CONF_Y_PAD + 60, 16, 8,
|
||||||
ftoi(cvar("bottomcolor"))*16+8);
|
ftoi(cvar("bottomcolor"))*16+8);
|
||||||
|
|
||||||
opt_cursor (62, player_config_cursor_tbl[player_config_cursor]);
|
opt_cursor (62, player_config_cursor_tbl[player_config_cursor]);
|
||||||
|
@ -574,7 +594,11 @@ CB_ME_player_options =
|
||||||
} else {
|
} else {
|
||||||
playername_cvar = "_cl_name";
|
playername_cvar = "_cl_name";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
teamname_cvar = "team"; // FIXME: is this maybe something other in netquake?
|
||||||
|
|
||||||
InputLine_SetText (player_config_plname_il, Cvar_GetCvarString(playername_cvar));
|
InputLine_SetText (player_config_plname_il, Cvar_GetCvarString(playername_cvar));
|
||||||
|
InputLine_SetText (player_config_tname_il, Cvar_GetCvarString(teamname_cvar));
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -587,6 +611,8 @@ MENU_player_options =
|
||||||
{
|
{
|
||||||
player_config_plname_il = InputLine_Create (4, 18, ' ');
|
player_config_plname_il = InputLine_Create (4, 18, ' ');
|
||||||
InputLine_SetWidth (player_config_plname_il, 18);
|
InputLine_SetWidth (player_config_plname_il, 18);
|
||||||
|
player_config_tname_il = InputLine_Create (4, 7, ' ');
|
||||||
|
InputLine_SetWidth (player_config_tname_il, 7);
|
||||||
player_config_iactive = NIL;
|
player_config_iactive = NIL;
|
||||||
|
|
||||||
Menu_Begin (54, 80, "Player");
|
Menu_Begin (54, 80, "Player");
|
||||||
|
@ -597,6 +623,141 @@ MENU_player_options =
|
||||||
Menu_End ();
|
Menu_End ();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/******************************************************************************
|
||||||
|
* NETWORK OPTIONS
|
||||||
|
* Options, which have to do with network stuff (rate, noskins, netgraph, ...)
|
||||||
|
******************************************************************************/
|
||||||
|
|
||||||
|
// input for playername
|
||||||
|
inputline_t network_config_rate_il;
|
||||||
|
// this holds active inputline pointer
|
||||||
|
inputline_t network_config_iactive;
|
||||||
|
|
||||||
|
|
||||||
|
integer network_config_cursor;
|
||||||
|
|
||||||
|
// Y padding for the player config
|
||||||
|
#define NETWORK_CONF_Y_PAD 60
|
||||||
|
|
||||||
|
// table for cursor-positions
|
||||||
|
#define NUM_NETWORKCONFIG_CMDS 1
|
||||||
|
integer [NUM_NETWORKCONFIG_CMDS] network_config_cursor_tbl = {
|
||||||
|
PLAYER_CONF_Y_PAD + 8,
|
||||||
|
};
|
||||||
|
|
||||||
|
integer network_config_cursor;
|
||||||
|
|
||||||
|
// array, which holds commands for this menu
|
||||||
|
string [NUM_NETWORKCONFIG_CMDS] network_config_vals = {
|
||||||
|
"",
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
integer (integer key, integer unicode, integer down)
|
||||||
|
KEYEV_network_options =
|
||||||
|
{
|
||||||
|
switch (key) {
|
||||||
|
case QFK_DOWN:
|
||||||
|
case QFM_WHEEL_DOWN:
|
||||||
|
if (!network_config_iactive) {
|
||||||
|
network_config_cursor ++;
|
||||||
|
network_config_cursor %= NUM_PLAYERCONFIG_CMDS;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case QFK_UP:
|
||||||
|
case QFM_WHEEL_UP:
|
||||||
|
if (!network_config_iactive) {
|
||||||
|
network_config_cursor += NUM_PLAYERCONFIG_CMDS - 1;
|
||||||
|
network_config_cursor %= NUM_PLAYERCONFIG_CMDS;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case QFK_RETURN:
|
||||||
|
if (network_config_iactive) {
|
||||||
|
if(network_config_iactive == network_config_rate_il) {
|
||||||
|
cvar_set("rate",InputLine_GetText(network_config_rate_il));
|
||||||
|
}
|
||||||
|
network_config_iactive = NIL;
|
||||||
|
} else {
|
||||||
|
if (network_config_cursor == 0) {
|
||||||
|
network_config_iactive = network_config_rate_il;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if(key != QFK_RETURN && network_config_iactive) {
|
||||||
|
InputLine_Process (network_config_iactive, key >= 256 ? key : unicode);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!(key == QFK_RIGHT || key == QFK_LEFT )) {
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
// switch (network_config_vals[network_config_cursor]) {
|
||||||
|
// } // none yet
|
||||||
|
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
DRAW_network_options
|
||||||
|
|
||||||
|
Draws the network option menu
|
||||||
|
*/
|
||||||
|
integer ()
|
||||||
|
DRAW_network_options =
|
||||||
|
{
|
||||||
|
local integer cursor_pad = 0, spacing = 120;
|
||||||
|
|
||||||
|
Draw_Pic (16, 4, "gfx/qplaque.lmp");
|
||||||
|
Draw_CenterPic (160,4, "gfx/p_option.lmp");
|
||||||
|
Draw_String (54, 40, "Network");
|
||||||
|
Draw_String (54, 50, "--------");
|
||||||
|
|
||||||
|
|
||||||
|
Draw_String(70, NETWORK_CONF_Y_PAD + 8, "Rate..:");
|
||||||
|
text_box(120, NETWORK_CONF_Y_PAD, 9, 1);
|
||||||
|
InputLine_Draw (network_config_rate_il, 120, NETWORK_CONF_Y_PAD + 8,
|
||||||
|
network_config_iactive == network_config_rate_il);
|
||||||
|
|
||||||
|
opt_cursor (62, player_config_cursor_tbl[player_config_cursor]);
|
||||||
|
return 1;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
CB_ME_network_options
|
||||||
|
|
||||||
|
Entercallback for the networkmenu.
|
||||||
|
*/
|
||||||
|
integer ()
|
||||||
|
CB_ME_network_options =
|
||||||
|
{
|
||||||
|
InputLine_SetText (network_config_rate_il, Cvar_GetCvarString("rate"));
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
MENU_network_options
|
||||||
|
|
||||||
|
Makes the network option menu
|
||||||
|
*/
|
||||||
|
void ()
|
||||||
|
MENU_network_options =
|
||||||
|
{
|
||||||
|
network_config_rate_il = InputLine_Create (4, 9, ' ');
|
||||||
|
InputLine_SetWidth (network_config_rate_il, 9);
|
||||||
|
|
||||||
|
Menu_Begin (54, 90, "Network");
|
||||||
|
Menu_FadeScreen (1);
|
||||||
|
Menu_KeyEvent (KEYEV_network_options);
|
||||||
|
Menu_EnterHook (CB_ME_network_options);
|
||||||
|
Menu_Draw (DRAW_network_options);
|
||||||
|
Menu_End ();
|
||||||
|
};
|
||||||
|
|
||||||
/*************************
|
/*************************
|
||||||
* MAIN OPTIONS
|
* MAIN OPTIONS
|
||||||
|
@ -623,6 +784,7 @@ MENU_options =
|
||||||
MENU_audio_options ();
|
MENU_audio_options ();
|
||||||
MENU_feature_options ();
|
MENU_feature_options ();
|
||||||
MENU_player_options ();
|
MENU_player_options ();
|
||||||
|
MENU_network_options ();
|
||||||
|
|
||||||
Menu_End ();
|
Menu_End ();
|
||||||
};
|
};
|
||||||
|
|
|
@ -190,7 +190,7 @@ void
|
||||||
CL_Skin_Init_Cvars (void)
|
CL_Skin_Init_Cvars (void)
|
||||||
{
|
{
|
||||||
Skin_Init_Cvars ();
|
Skin_Init_Cvars ();
|
||||||
noskins = Cvar_Get ("noskins", "0", CVAR_NONE, NULL, //XXX FIXME
|
noskins = Cvar_Get ("noskins", "0", CVAR_ARCHIVE, NULL, //XXX FIXME
|
||||||
"set to 1 to not download new skins");
|
"set to 1 to not download new skins");
|
||||||
skin = Cvar_Get ("skin", "", CVAR_ARCHIVE | CVAR_USERINFO, skin_f,
|
skin = Cvar_Get ("skin", "", CVAR_ARCHIVE | CVAR_USERINFO, skin_f,
|
||||||
"Players skin");
|
"Players skin");
|
||||||
|
|
Loading…
Reference in a new issue