#ifndef HUD_H
#define HUD_H
-#if defined(CSQC)
- #include "../common/util-pre.qh"
- #include "sys-pre.qh"
- #include "../dpdefs/csprogsdefs.qh"
- #include "sys-post.qh"
- #include "defs.qh"
- #include "../dpdefs/keycodes.qh"
- #include "../common/constants.qh"
- #include "../common/stats.qh"
- #include "../warpzonelib/anglestransform.qh"
- #include "../warpzonelib/mathlib.qh"
- #include "../warpzonelib/common.qh"
- #include "../warpzonelib/client.qh"
- #include "../common/playerstats.qh"
- #include "../common/teams.qh"
- #include "../common/util.qh"
- #include "../common/nades.qh"
- #include "../common/buffs.qh"
- #include "../common/test.qh"
- #include "../common/counting.qh"
- #include "../common/weapons/weapons.qh"
- #include "../common/mapinfo.qh"
- #include "../common/command/markup.qh"
- #include "../common/command/rpn.qh"
- #include "../common/command/generic.qh"
- #include "../common/command/shared_defs.qh"
- #include "../common/urllib.qh"
- #include "../common/animdecide.qh"
- #include "command/cl_cmd.qh"
- #include "../common/monsters/monsters.qh"
- #include "autocvars.qh"
- #include "../common/notifications.qh"
- #include "../common/deathtypes.qh"
- #include "damage.qh"
- #include "../csqcmodellib/interpolate.qh"
- #include "teamradar.qh"
-#elif defined(MENUQC)
-#elif defined(SVQC)
-#endif
+#include "../common/weapons/weapons.qh"
const int HUD_PANEL_MAX = 24;
entity hud_panel[HUD_PANEL_MAX];
int ps_primary, ps_secondary;
int ts_primary, ts_secondary;
-float last_switchweapon;
-float last_activeweapon;
+int last_switchweapon;
+int last_activeweapon;
float weapontime;
float weaponprevtime;
float current_player;
+float GetPlayerColorForce(int i);
+
#define HUD_PANELS(HUD_PANEL) \
HUD_PANEL(WEAPONS , HUD_Weapons , weapons) \
} else { \
panel_bg_padding = stof(panel_bg_padding_str); \
} \
- panel_bg_padding = min(min(panel_size_x, panel_size_y)/2 - 5, panel_bg_padding); \
+ panel_bg_padding = min(min(panel_size.x, panel_size.y)/2 - 5, panel_bg_padding); \
} while(0)
// return smoothly faded pos and size of given panel when a dialog is active
vector menu_enable_size = '0 0 0'; \
float menu_enable_maxsize_x = 0.3 * vid_conwidth; \
float menu_enable_maxsize_y = 0.18 * vid_conheight; \
- if (panel_size_x > panel_size_y) { \
- if (panel_size_y > menu_enable_maxsize_y) { \
- menu_enable_size_y = menu_enable_maxsize_y; \
- menu_enable_size_x = panel_size_x * (menu_enable_maxsize_y/panel_size_y); \
+ if (panel_size.x > panel_size.y) { \
+ if (panel_size.y > menu_enable_maxsize_y) { \
+ menu_enable_size.y = menu_enable_maxsize_y; \
+ menu_enable_size.x = panel_size.x * (menu_enable_maxsize_y/panel_size.y); \
panel_size = (1 - autocvar__menu_alpha) * panel_size + (autocvar__menu_alpha) * menu_enable_size; \
} \
- menu_enable_pos = eX * 0.5 * vid_conwidth - eX * 0.5 * panel_size_x + eY * (vid_conheight - menu_enable_maxsize_y);\
+ menu_enable_pos = eX * 0.5 * vid_conwidth - eX * 0.5 * panel_size.x + eY * (vid_conheight - menu_enable_maxsize_y);\
} else { \
- if (panel_size_x > menu_enable_maxsize_x) { \
- menu_enable_size_x = menu_enable_maxsize_x; \
- menu_enable_size_y = panel_size_y * (menu_enable_maxsize_x/panel_size_x); \
+ if (panel_size.x > menu_enable_maxsize_x) { \
+ menu_enable_size.x = menu_enable_maxsize_x; \
+ menu_enable_size.y = panel_size.y * (menu_enable_maxsize_x/panel_size.x); \
panel_size = (1 - autocvar__menu_alpha) * panel_size + (autocvar__menu_alpha) * menu_enable_size; \
} \
- menu_enable_pos = eY * 0.5 * vid_conheight - eY * 0.5 * panel_size_y + eX * (vid_conwidth - menu_enable_maxsize_x);\
+ menu_enable_pos = eY * 0.5 * vid_conheight - eY * 0.5 * panel_size.y + eX * (vid_conwidth - menu_enable_maxsize_x);\
} \
panel_pos = (1 - autocvar__menu_alpha) * panel_pos + (autocvar__menu_alpha) * menu_enable_pos; \
} while(0)
// Scale the pos and size vectors to absolute coordinates
#define HUD_Panel_ScalePosSize() do { \
- panel_pos_x *= vid_conwidth; panel_pos_y *= vid_conheight; \
- panel_size_x *= vid_conwidth; panel_size_y *= vid_conheight; \
+ panel_pos.x *= vid_conwidth; panel_pos.y *= vid_conheight; \
+ panel_size.x *= vid_conwidth; panel_size.y *= vid_conheight; \
} while(0)
// NOTE: in hud_configure mode cvars must be reloaded every frame
HUD_Panel_GetBorder(); \
} while(0)
-const float NOTIFY_MAX_ENTRIES = 10;
+const int NOTIFY_MAX_ENTRIES = 10;
const float NOTIFY_ICON_MARGIN = 0.02;
int notify_index;
var void HUD_ModIcons_GameType(vector pos, vector size);
void HUD_ModIcons_SetFunc();
-#endif
\ No newline at end of file
+#endif