e.draw = DrawDebugModel;
e.classname = "debugmodel";
}
+ else if(cmd == "vyes")
+ {
+ if(uid2name_dialog)
+ {
+ vote_active = 0; // force the panel to disappear right as we have selected the value (to prevent it from fading out in the normal vote panel pos)
+ vote_prev = 0;
+ cvar_set("cl_allow_uid2name", "1");
+ vote_change = -9999;
+ }
+ else
+ {
+ localcmd("cmd vote yes\n");
+ }
+ }
+ else if(cmd == "vno")
+ {
+ if(uid2name_dialog)
+ {
+ vote_active = 0;
+ vote_prev = 0;
+ cvar_set("cl_allow_uid2name", "0");
+ vote_change = -9999;
+ }
+ else
+ {
+ localcmd("cmd vote no\n");
+ }
+ }
+
else
{
print("Invalid command. For a list of supported commands, try cl_cmd help.\n");
local float bSkipKey;
bSkipKey = false;
- if(autocvar_cl_allow_uid2name == -1 && (gametype == GAME_CTS || gametype == GAME_RACE) && panel_fg_alpha && !scoreboard_active) // don't lock keys before we actually see what's going on
- {
- /*
- string vyes_keys;
- float keys;
- vyes_keys = findkeysforcommand("vyes");
- keys = tokenize(vyes_keys);
-
- float i;
- for (i = 0; i < keys; ++i)
- {
- print(ftos(nPrimary), " ", argv(i), "\n");
- if(nPrimary == stof(argv(i)))
- {
- vote_active = 0;
- cvar_set("cl_allow_uid2name", "1");
- return TRUE;
- }
- }
-
- string vno_keys;
- vno_keys = findkeysforcommand("vno");
- keys = tokenize(vno_keys);
-
- float i;
- for (i = 0; i < keys; ++i)
- {
- if(nPrimary == stof(argv(i)))
- {
- vote_active = 0;
- cvar_set("cl_allow_uid2name", "0");
- return TRUE;
- }
- }
- */ // If only I could grab F1-F12 in CSQC... but no
-
- if(nPrimary == 121) // ascii value for y
- {
- vote_active = 0;
- cvar_set("cl_allow_uid2name", "1");
- return TRUE;
- }
- else if(nPrimary == 110) // ascii value for n
- {
- vote_active = 0;
- cvar_set("cl_allow_uid2name", "0");
- return TRUE;
- }
- }
-
if (HUD_Panel_InputEvent(bInputType, nPrimary, nSecondary))
return true;
void HUD_VoteWindow(void)
{
+ uid2name_dialog = 0;
if(autocvar_cl_allow_uid2name == -1 && (gametype == GAME_CTS || gametype == GAME_RACE))
{
vote_active = 1;
vote_called_vote = strzone(strcat("^2Name ^7instead of \"^1Unregistered player\"", " ^7in stats"));
+ uid2name_dialog = 1;
}
if(!autocvar_hud_panel_vote && !autocvar__hud_configure)
active_panel = HUD_PANEL_VOTE;
HUD_Panel_UpdateCvars(vote);
- vector pos, mySize;
- pos = panel_pos;
- mySize = panel_size;
- if(autocvar_cl_allow_uid2name == -1 && (gametype == GAME_CTS || gametype == GAME_RACE))
+ if(uid2name_dialog)
{
panel_pos = eX * 0.3 * vid_conwidth + eY * 0.1 * vid_conheight;
panel_size = eX * 0.4 * vid_conwidth + eY * 0.3 * vid_conheight;
}
+ // these must be below above block
+ vector pos, mySize;
+ pos = panel_pos;
+ mySize = panel_size;
+
a = vote_alpha * bound(cvar("hud_panel_vote_alreadyvoted_alpha"), 1 - vote_highlighted, 1);
HUD_Panel_DrawBg(a);
a = panel_fg_alpha * a;
mySize = newSize;
s = "A vote has been called for:";
- if(autocvar_cl_allow_uid2name == -1 && (gametype == GAME_CTS || gametype == GAME_RACE))
+ if(uid2name_dialog)
s = "Allow servers to store and display your name?";
drawstring_aspect(pos, s, eX * mySize_x + eY * (2/8) * mySize_y, '1 1 1', a, DRAWFLAG_NORMAL);
s = textShortenToWidth(vote_called_vote, mySize_x, '1 1 0' * mySize_y * (1/8), stringwidth_colors);
drawcolorcodedstring_aspect(pos + eY * (2/8) * mySize_y, s, eX * mySize_x + eY * (1.75/8) * mySize_y, a, DRAWFLAG_NORMAL);
// print the yes/no counts
- s = strcat("Yes (", getcommandkey("vyes", "vyes"), "): ", ftos(vote_yescount));
- if(autocvar_cl_allow_uid2name == -1 && (gametype == GAME_CTS || gametype == GAME_RACE))
- s = strcat("Yes: (press y)");
+ s = strcat("Yes (", getcommandkey("vyes", "vyes"), "): ", ftos(vote_yescount));
drawstring_aspect(pos + eY * (4/8) * mySize_y, s, eX * 0.5 * mySize_x + eY * (1.5/8) * mySize_y, '0 1 0', a, DRAWFLAG_NORMAL);
- s = strcat("No (", getcommandkey("vno", "vno"), "): ", ftos(vote_nocount));
- if(autocvar_cl_allow_uid2name == -1 && (gametype == GAME_CTS || gametype == GAME_RACE))
- s = strcat("No: (press n)");
+ s = strcat("No (", getcommandkey("vno", "vno"), "): ", ftos(vote_nocount));
drawstring_aspect(pos + eX * 0.5 * mySize_x + eY * (4/8) * mySize_y, s, eX * 0.5 * mySize_x + eY * (1.5/8) * mySize_y, '1 0 0', a, DRAWFLAG_NORMAL);
// draw the progress bar backgrounds