X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fclient%2Fhud%2Fpanel%2Fhealtharmor.qc;h=bd49ba9dd92339a1550b24a108c558d0720efc78;hb=3d632e50853d7bf6e499fc4400e5f4254ad54a1c;hp=3b03979177da96edf15e5c4a3ee0ed35f04b0ee1;hpb=37cf62041a76248472ef6a78feaaed33e35a2260;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/client/hud/panel/healtharmor.qc b/qcsrc/client/hud/panel/healtharmor.qc index 3b0397917..bd49ba9dd 100644 --- a/qcsrc/client/hud/panel/healtharmor.qc +++ b/qcsrc/client/hud/panel/healtharmor.qc @@ -1,26 +1,30 @@ #include "healtharmor.qh" +#include "scoreboard.qh" #include -/** Health/armor (#3) */ +// Health/armor (#3) + void HUD_HealthArmor() { int armor, health, fuel; if(!autocvar__hud_configure) { - if(!autocvar_hud_panel_healtharmor) return; + if((!autocvar_hud_panel_healtharmor) || (spectatee_status == -1)) + return; if(hud != HUD_NORMAL) return; - if(spectatee_status == -1) return; health = STAT(HEALTH); if(health <= 0) { + health = 0; prev_health = -1; - return; + if(autocvar_hud_panel_healtharmor_hide_ondeath) + return; } armor = STAT(ARMOR); - // code to check for spectatee_status changes is in Ent_ClientData() + // code to check for spectatee_status changes is in ENT_CLIENT_CLIENTDATA // prev_p_health and prev_health can be set to -1 there if (prev_p_health == -1) @@ -54,7 +58,9 @@ void HUD_HealthArmor() fuel = 20; } - HUD_Panel_UpdateCvars(); + if(1 - scoreboard_fade_alpha <= 0) + return; + HUD_Panel_LoadCvars(1 - scoreboard_fade_alpha); draw_beginBoldFont(); @@ -62,7 +68,11 @@ void HUD_HealthArmor() pos = panel_pos; mySize = panel_size; - HUD_Panel_DrawBg(1); + if (autocvar_hud_panel_healtharmor_dynamichud) + HUD_Scale_Enable(); + else + HUD_Scale_Disable(); + HUD_Panel_DrawBg(); if(panel_bg_padding) { pos += '1 1 0' * panel_bg_padding; @@ -74,7 +84,7 @@ void HUD_HealthArmor() int maxhealth = autocvar_hud_panel_healtharmor_maxhealth; int maxarmor = autocvar_hud_panel_healtharmor_maxarmor; - if(autocvar_hud_panel_healtharmor == 2) // combined health and armor display + if(autocvar_hud_panel_healtharmor_combined) // combined health and armor display { vector v; v = healtharmor_maxdamage(health, armor, armorblockpercent, DEATH_WEAPON.m_id);