#include "hud.qh"
+#include <client/defs.qh>
+#include <client/miscfunctions.qh>
#include "panel/scoreboard.qh"
#include "hud_config.qh"
#include "../mapvoting.qh"
#include <common/minigames/cl_minigames.qh>
#include <common/t_items.qh>
#include <common/deathtypes/all.qh>
+#include <common/ent_cs.qh>
#include <common/items/_mod.qh>
#include <common/mapinfo.qh>
#include <common/vehicles/all.qh>
#include <common/mutators/mutator/waypoints/all.qh>
#include <common/stats.qh>
#include <lib/csqcmodel/cl_player.qh>
-#include <server/mutators/mutator/gamemode_ctf.qh> // TODO: remove
+#include <common/gamemodes/_mod.qh>
/*
rows = ceil(item_count/columns);
}
- if(vertical)
- return eX * best_rows + eY * best_columns;
- else
- return eX * best_columns + eY * best_rows;
+ return (vertical) ? vec2(best_rows, best_columns) : vec2(best_columns, best_rows);
}
/*
void Hud_Dynamic_Frame()
{
vector ofs = '0 0 0';
- hud_scale = '1 1 0';
- hud_shift = '0 0 0';
+ hud_scale_current = '1 1 0';
+ hud_shift_current = '0 0 0';
+
if (autocvar_hud_dynamic_follow)
{
entity view = CSQCModel_server2csqc(player_localentnum - 1);
ofs.y = bound(-0.1, ofs.y, 0.1);
ofs.z = bound(-0.1, ofs.z, 0.1);
- hud_shift.x = ofs.y * vid_conwidth;
- hud_shift.y = ofs.z * vid_conheight;
- hud_shift.z = ofs.x;
+ hud_shift_current.x = ofs.y * vid_conwidth;
+ hud_shift_current.y = ofs.z * vid_conheight;
+ hud_shift_current.z = ofs.x;
- hud_scale.x = (1 + hud_shift.z);
- hud_scale.y = hud_scale.x;
+ hud_scale_current.x = (1 + hud_shift_current.z);
+ hud_scale_current.y = hud_scale_current.x;
}
if(autocvar_hud_dynamic_shake > 0)
if(hud_dynamic_shake_factor > 0)
{
- hud_shift.x += hud_dynamic_shake_realofs.x;
- hud_shift.y += hud_dynamic_shake_realofs.y;
+ hud_shift_current.x += hud_dynamic_shake_realofs.x;
+ hud_shift_current.y += hud_dynamic_shake_realofs.y;
}
}
hud_scale_center.x = 0.5 * vid_conwidth;
hud_scale_center.y = 0.5 * vid_conheight;
- hud_scale_current = hud_scale;
- hud_shift_current = hud_shift;
+ HUD_Scale_Disable();
}
void HUD_Main()
HUD_Configure_Frame();
- Hud_Dynamic_Frame();
-
if(scoreboard_fade_alpha == 1)
if(autocvar__menu_alpha == 1)
return;
// Drawing stuff
if (hud_skin_prev != autocvar_hud_skin)
{
- if (hud_skin_path)
- strunzone(hud_skin_path);
- hud_skin_path = strzone(strcat("gfx/hud/", autocvar_hud_skin));
- if (hud_skin_prev)
- strunzone(hud_skin_prev);
- hud_skin_prev = strzone(autocvar_hud_skin);
+ strcpy(hud_skin_path, strcat("gfx/hud/", autocvar_hud_skin));
+ strcpy(hud_skin_prev, autocvar_hud_skin);
}
// draw the dock
LOG_TRACE("Automatically fixed wrong/missing panel numbers in _hud_panelorder");
cvar_set("_hud_panelorder", s);
- if(hud_panelorder_prev)
- strunzone(hud_panelorder_prev);
- hud_panelorder_prev = strzone(s);
+ strcpy(hud_panelorder_prev, s);
//now properly set panel_order
tokenize_console(s);