#include "cl_minigames_hud.qh"
+#include <client/autocvars.qh>
#include <common/ent_cs.qh>
#include "minigames.qh"
// Draws the minigame game board
void HUD_MinigameBoard ()
{
- entity hud_minigame = world;
+ if (!HUD_MinigameMenu_IsOpened())
+ return;
+
+ entity hud_minigame = NULL;
if(!autocvar__hud_configure)
+ {
+ if (!active_minigame)
+ return;
hud_minigame = active_minigame.descriptor;
+ }
else
hud_minigame = minigame_get_descriptor("nmm");
if ( !hud_minigame )
return;
- HUD_Panel_UpdateCvars();
+ HUD_Panel_LoadCvars();
vector pos, mySize;
// Draws the minigame status panel
void HUD_MinigameStatus ()
{
- entity hud_minigame = world;
+ if (!HUD_MinigameMenu_IsOpened())
+ return;
+
+ entity hud_minigame = NULL;
if(!autocvar__hud_configure)
+ {
+ if (!active_minigame)
+ return;
hud_minigame = active_minigame.descriptor;
+ }
else
hud_minigame = minigame_get_descriptor("nmm");
if ( !hud_minigame )
return;
- HUD_Panel_UpdateCvars();
+ HUD_Panel_LoadCvars();
vector pos, mySize;
HUD_MinigameMenu_last_entry = e.list_prev;
if ( HUD_MinigameMenu_activeitem == e )
- HUD_MinigameMenu_activeitem = world;
+ HUD_MinigameMenu_activeitem = NULL;
- remove(e);
+ delete(e);
}
// Minigame menu options: create entry
{
if ( HUD_MinigameMenu_activeitem &&
HUD_MinigameMenu_activeitem.owner == this )
- HUD_MinigameMenu_activeitem = world;
+ HUD_MinigameMenu_activeitem = NULL;
this.flags &= ~2;
- for ( e = this.list_next; e != world && e.owner == this; e = this.list_next )
+ for ( e = this.list_next; e != NULL && e.owner == this; e = this.list_next )
{
if ( e.flags & 2 )
HUD_MinigameMenu_Click(e);
this.list_next = e.list_next;
- remove(e);
+ delete(e);
}
if ( this.list_next )
this.list_next.list_prev = this;
}
else
{
- for ( e = HUD_MinigameMenu_entries; e != world; e = e.list_next )
+ for ( e = HUD_MinigameMenu_entries; e != NULL; e = e.list_next )
{
- if ( e.flags & 2 && e.origin_x == this.origin_x)
+ if ( (e.flags & 2) && e.origin_x == this.origin_x)
HUD_MinigameMenu_Click(e);
}
{
if ( HUD_MinigameMenu_Click_ExpandCollapse(this) )
{
- entity e = world;
+ entity e = NULL;
entity curr;
entity prev = this;
while( (e = find(e,classname,"minigame")) )
for(int i = 0; i < maxclients; ++i)
{
if ( player_localnum != i && playerslots[i] && entcs_GetName(i) != "" &&
- !findfloat(world,minigame_playerslot,i+1) && playerslots[i].ping )
+ !findfloat(NULL,minigame_playerslot,i+1) && playerslots[i].ping )
{
e = HUD_MinigameMenu_SpawnSubEntry(
strzone(entcs_GetName(i)), HUD_MinigameMenu_ClickInvite_Entry,
if ( HUD_MinigameMenu_IsOpened() )
{
entity e, p;
- for ( e = HUD_MinigameMenu_entries; e != world; e = p )
+ for ( e = HUD_MinigameMenu_entries; e != NULL; e = p )
{
p = e.list_next;
- remove(e);
+ delete(e);
}
- HUD_MinigameMenu_entries = world;
- HUD_MinigameMenu_last_entry = world;
- HUD_MinigameMenu_activeitem = world;
- if(autocvar_hud_cursormode)
- if ( !autocvar__hud_configure )
- setcursormode(0);
+ HUD_MinigameMenu_entries = NULL;
+ HUD_MinigameMenu_last_entry = NULL;
+ HUD_MinigameMenu_activeitem = NULL;
}
}
entity e;
if ( active_minigame )
{
- for ( e = HUD_MinigameMenu_last_entry; e != world; e = e.list_prev )
+ for ( e = HUD_MinigameMenu_last_entry; e != NULL; e = e.list_prev )
if ( e.classname == "hud_minigamemenu_exit" )
{
HUD_MinigameMenu_EraseEntry(e);
else
{
entity p;
- for ( e = HUD_MinigameMenu_last_entry; e != world; e = p.list_prev )
+ for ( e = HUD_MinigameMenu_last_entry; e != NULL; e = p.list_prev )
{
p = e;
if ( e.classname == "hud_minigamemenu_current" )
break;
}
}
- for ( e = HUD_MinigameMenu_last_entry; e != world; e = e.list_prev )
+ for ( e = HUD_MinigameMenu_last_entry; e != NULL; e = e.list_prev )
if ( e.classname == "hud_minigamemenu_exit" )
return;
entity exit = HUD_MinigameMenu_SpawnEntry(
// Open the minigame menu panel
void HUD_MinigameMenu_Open()
{
- if ( !HUD_MinigameMenu_IsOpened() )
+ if ( !mv_active && !HUD_MinigameMenu_IsOpened() )
{
HUD_MinigameMenu_InsertEntry( HUD_MinigameMenu_SpawnEntry(
_("Create"), '0 0 0', hud_fontsize*1.5,'0.7 0.84 1', HUD_MinigameMenu_ClickCreate),
_("Join"),'0 0 0',hud_fontsize*1.5,'0.7 0.84 1', HUD_MinigameMenu_ClickJoin),
HUD_MinigameMenu_last_entry );
HUD_MinigameMenu_CurrentButton();
- HUD_MinigameMenu_activeitem = world;
- if(autocvar_hud_cursormode)
- setcursormode(1);
+ HUD_MinigameMenu_activeitem = NULL;
}
}
// Handles mouse input on to minigame menu panel
void HUD_MinigameMenu_MouseInput()
{
- panel = HUD_PANEL(MINIGAME_MENU);
+ panel = HUD_PANEL(MINIGAMEMENU);
- HUD_Panel_UpdateCvars();
+ HUD_Panel_LoadCvars();
if(panel_bg_padding)
{
panel_pos_y += hud_fontsize_y*2;
- HUD_MinigameMenu_activeitem = world;
+ HUD_MinigameMenu_activeitem = NULL;
vector sz;
- for ( e = HUD_MinigameMenu_entries; e != world; e = e.list_next )
+ for ( e = HUD_MinigameMenu_entries; e != NULL; e = e.list_next )
{
sz = eX*panel_size_x + eY*e.size_y;
if ( e.model )
// Minigame menu panel UI
void HUD_MinigameMenu ()
{
+ if (mv_active)
+ {
+ if (HUD_MinigameMenu_IsOpened())
+ HUD_MinigameMenu_Close(NULL, NULL, NULL);
+ return;
+ }
+
if ( !HUD_MinigameMenu_IsOpened() )
return;
- HUD_Panel_UpdateCvars();
+ HUD_Panel_LoadCvars();
HUD_Scale_Disable();
- HUD_Panel_DrawBg(1);
+ HUD_Panel_DrawBg();
if(panel_bg_padding)
{
vector offset;
float itemh;
vector imgsz = '22 22 0'; // NOTE: if changed, edit where HUD_MinigameMenu_activeitem is selected
- for ( entity e = HUD_MinigameMenu_entries; e != world; e = e.list_next )
+ for ( entity e = HUD_MinigameMenu_entries; e != NULL; e = e.list_next )
{
color = e.colormod;
void HUD_MinigameHelp()
{
+ if (!HUD_MinigameMenu_IsOpened())
+ return;
+
string help_message;
if(!autocvar__hud_configure)
+ {
+ if (!active_minigame)
+ return;
help_message = active_minigame.message;
+ }
else
- help_message = "Minigame message";
+ help_message = _("Minigame message");
if ( !help_message )
return;
- HUD_Panel_UpdateCvars();
+ HUD_Panel_LoadCvars();
vector pos, mySize;
{
mousepos_x = nPrimary;
mousepos_y = nSecondary;
- if ( minigame_isactive() && HUD_mouse_over(HUD_PANEL(MINIGAME_BOARD)) )
+ if ( active_minigame && HUD_mouse_over(HUD_PANEL(MINIGAMEBOARD)) )
active_minigame.minigame_event(active_minigame,"mouse_moved",mousepos);
return true;
}
// allow some binds
- string con_keys;
- con_keys = findkeysforcommand("toggleconsole", 0);
+ string con_keys = findkeysforcommand("toggleconsole", 0);
int keys = tokenize(con_keys); // findkeysforcommand returns data for this
- for (int i = 0; i < keys; ++i)
+ int i;
+ for (i = 0; i < keys; ++i)
{
if(nPrimary == stof(argv(i)))
return false;
}
- if ( minigame_isactive() && ( bInputType == 0 || bInputType == 1 ) )
+ if ( active_minigame && ( bInputType == 0 || bInputType == 1 ) )
{
string device = "";
string action = bInputType == 0 ? "pressed" : "released";
if ( nPrimary >= K_MOUSE1 && nPrimary <= K_MOUSE16 )
{
- if ( HUD_mouse_over(HUD_PANEL(MINIGAME_BOARD)) )
+ if ( HUD_mouse_over(HUD_PANEL(MINIGAMEBOARD)) )
device = "mouse";
}
else
if ( bInputType == 0 )
{
if ( nPrimary == K_MOUSE1 && HUD_MinigameMenu_activeitem &&
- HUD_mouse_over(HUD_PANEL(MINIGAME_MENU)) )
+ HUD_mouse_over(HUD_PANEL(MINIGAMEMENU)) )
{
HUD_MinigameMenu_Click(HUD_MinigameMenu_activeitem);
return true;
if( !HUD_MinigameMenu_IsOpened() || autocvar__hud_configure || mv_active )
return;
- if(!autocvar_hud_cursormode)
- {
- mousepos = mousepos + getmousepos() * autocvar_menu_mouse_speed;
-
- mousepos_x = bound(0, mousepos_x, vid_conwidth);
- mousepos_y = bound(0, mousepos_y, vid_conheight);
- }
-
- if ( HUD_MinigameMenu_IsOpened() && HUD_mouse_over(HUD_PANEL(MINIGAME_MENU)) )
+ if ( HUD_MinigameMenu_IsOpened() && HUD_mouse_over(HUD_PANEL(MINIGAMEMENU)) )
HUD_MinigameMenu_MouseInput();
-
- draw_cursor_normal(mousepos, '1 1 1', panel_fg_alpha);
-}
-
-bool HUD_Minigame_Showpanels()
-{
- return (HUD_MinigameMenu_IsOpened() && minigame_isactive());
}