X-Git-Url: https://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fclient%2Fhud_config.qc;h=0f990c69410d2646ccb0f8dca6a2281d6f46e3be;hb=f2756ec48ef7d5c2edebc9bd4885cc753060b2e6;hp=c091a4a60ab54d55b75965632d999dd8a0059eb1;hpb=3a7a8b160d0e62f09e67418c410dfd178af1b81e;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/client/hud_config.qc b/qcsrc/client/hud_config.qc index c091a4a60..0f990c694 100644 --- a/qcsrc/client/hud_config.qc +++ b/qcsrc/client/hud_config.qc @@ -35,6 +35,9 @@ void HUD_Panel_ExportCfg(string cfgname) HUD_Write_Cvar_q("hud_progressbar_armor_color"); HUD_Write_Cvar_q("hud_progressbar_fuel_color"); HUD_Write_Cvar_q("hud_progressbar_nexball_color"); + HUD_Write_Cvar_q("hud_progressbar_speed_color"); + HUD_Write_Cvar_q("hud_progressbar_acceleration_color"); + HUD_Write_Cvar_q("hud_progressbar_acceleration_neg_color"); HUD_Write("\n"); HUD_Write_Cvar_q("_hud_panelorder"); @@ -62,6 +65,8 @@ void HUD_Panel_ExportCfg(string cfgname) HUD_Write_PanelCvar_q("_bg_padding"); switch(i) { case HUD_PANEL_WEAPONS: + HUD_Write_PanelCvar_q("_accuracy"); + HUD_Write_PanelCvar_q("_label"); HUD_Write_PanelCvar_q("_complainbubble"); HUD_Write_PanelCvar_q("_complainbubble_padding"); HUD_Write_PanelCvar_q("_complainbubble_time"); @@ -69,11 +74,13 @@ void HUD_Panel_ExportCfg(string cfgname) HUD_Write_PanelCvar_q("_complainbubble_color_outofammo"); HUD_Write_PanelCvar_q("_complainbubble_color_donthave"); HUD_Write_PanelCvar_q("_complainbubble_color_unavailable"); + HUD_Write_PanelCvar_q("_ammo"); HUD_Write_PanelCvar_q("_ammo_color"); HUD_Write_PanelCvar_q("_ammo_alpha"); HUD_Write_PanelCvar_q("_aspect"); HUD_Write_PanelCvar_q("_timeout"); HUD_Write_PanelCvar_q("_timeout_effect"); + HUD_Write_PanelCvar_q("_onlyowned"); break; case HUD_PANEL_AMMO: HUD_Write_PanelCvar_q("_onlycurrent"); @@ -90,6 +97,7 @@ void HUD_Panel_ExportCfg(string cfgname) HUD_Write_PanelCvar_q("_progressbar"); HUD_Write_PanelCvar_q("_progressbar_strength"); HUD_Write_PanelCvar_q("_progressbar_shield"); + HUD_Write_PanelCvar_q("_text"); break; case HUD_PANEL_HEALTHARMOR: HUD_Write_PanelCvar_q("_flip"); @@ -98,15 +106,27 @@ void HUD_Panel_ExportCfg(string cfgname) HUD_Write_PanelCvar_q("_progressbar"); HUD_Write_PanelCvar_q("_progressbar_health"); HUD_Write_PanelCvar_q("_progressbar_armor"); + HUD_Write_PanelCvar_q("_progressbar_gfx"); + HUD_Write_PanelCvar_q("_progressbar_gfx_smooth"); HUD_Write_PanelCvar_q("_text"); break; case HUD_PANEL_NOTIFY: HUD_Write_PanelCvar_q("_flip"); HUD_Write_PanelCvar_q("_fontsize"); HUD_Write_PanelCvar_q("_print"); + HUD_Write_PanelCvar_q("_time"); + HUD_Write_PanelCvar_q("_fadetime"); + break; + case HUD_PANEL_TIMER: + HUD_Write_PanelCvar_q("_increment"); break; case HUD_PANEL_RADAR: HUD_Write_PanelCvar_q("_foreground_alpha"); + HUD_Write_PanelCvar_q("_rotation"); + HUD_Write_PanelCvar_q("_zoommode"); + HUD_Write_PanelCvar_q("_scale"); + HUD_Write_PanelCvar_q("_maximized_scale"); + HUD_Write_PanelCvar_q("_maximized_size"); break; case HUD_PANEL_SCORE: HUD_Write_PanelCvar_q("_rankings"); @@ -114,24 +134,52 @@ void HUD_Panel_ExportCfg(string cfgname) case HUD_PANEL_VOTE: HUD_Write_PanelCvar_q("_alreadyvoted_alpha"); break; + case HUD_PANEL_MODICONS: + HUD_Write_PanelCvar_q("_dom_layout"); + break; case HUD_PANEL_PRESSEDKEYS: + HUD_Write_PanelCvar_q("_attack"); HUD_Write_PanelCvar_q("_aspect"); break; + case HUD_PANEL_ENGINEINFO: + HUD_Write_PanelCvar_q("_framecounter_time"); + HUD_Write_PanelCvar_q("_framecounter_decimals"); + break; case HUD_PANEL_INFOMESSAGES: HUD_Write_PanelCvar_q("_flip"); break; case HUD_PANEL_PHYSICS: + HUD_Write_PanelCvar_q("_speed_unit"); + HUD_Write_PanelCvar_q("_speed_unit_show"); + HUD_Write_PanelCvar_q("_speed_max"); + HUD_Write_PanelCvar_q("_speed_vertical"); + HUD_Write_PanelCvar_q("_topspeed"); + HUD_Write_PanelCvar_q("_topspeed_time"); + HUD_Write_PanelCvar_q("_acceleration_max"); + HUD_Write_PanelCvar_q("_acceleration_vertical"); HUD_Write_PanelCvar_q("_flip"); HUD_Write_PanelCvar_q("_baralign"); HUD_Write_PanelCvar_q("_progressbar"); - HUD_Write_PanelCvar_q("_acceleration_mode"); + HUD_Write_PanelCvar_q("_progressbar_acceleration_mode"); + HUD_Write_PanelCvar_q("_progressbar_acceleration_scale"); + HUD_Write_PanelCvar_q("_progressbar_acceleration_nonlinear"); + HUD_Write_PanelCvar_q("_text"); + HUD_Write_PanelCvar_q("_text_scale"); break; case HUD_PANEL_CENTERPRINT: HUD_Write_PanelCvar_q("_align"); HUD_Write_PanelCvar_q("_flip"); HUD_Write_PanelCvar_q("_fontscale"); HUD_Write_PanelCvar_q("_time"); - HUD_Write_PanelCvar_q("_fadetime"); + HUD_Write_PanelCvar_q("_fade_in"); + HUD_Write_PanelCvar_q("_fade_out"); + HUD_Write_PanelCvar_q("_fade_subsequent"); + HUD_Write_PanelCvar_q("_fade_subsequent_passone"); + HUD_Write_PanelCvar_q("_fade_subsequent_passone_minalpha"); + HUD_Write_PanelCvar_q("_fade_subsequent_passtwo"); + HUD_Write_PanelCvar_q("_fade_subsequent_passtwo_minalpha"); + HUD_Write_PanelCvar_q("_fade_subsequent_minfontsize"); + HUD_Write_PanelCvar_q("_fade_minfontsize"); break; } HUD_Write("\n"); @@ -145,6 +193,16 @@ void HUD_Panel_ExportCfg(string cfgname) print(sprintf(_("^1Couldn't write to %s\n"), filename)); } +void HUD_Configure_Exit_Force() +{ + if (menu_enabled) + { + menu_enabled = 0; + localcmd("togglemenu\n"); + } + cvar_set("_hud_configure", "0"); +} + // check if move will result in panel being moved into another panel. If so, return snapped vector, otherwise return the given vector vector HUD_Panel_CheckMove(vector myPos, vector mySize) { @@ -359,7 +417,7 @@ void HUD_Panel_SetPosSize(vector mySize) HUD_Panel_UpdatePosSizeForId(highlightedPanel); vector resizeorigin; resizeorigin = panel_click_resizeorigin; - vector myPos; + local noref vector myPos; // fteqcc sucks // minimum panel size cap mySize_x = max(0.025 * vid_conwidth, mySize_x); @@ -584,11 +642,15 @@ float HUD_Panel_InputEvent(float bInputType, float nPrimary, float nSecondary) if(!autocvar__hud_configure) return false; + // block any input while a menu dialog is fading + if(autocvar__menu_alpha) + return true; + // allow console bind to work string con_keys; float keys; - con_keys = findkeysforcommand("toggleconsole"); - keys = tokenize(con_keys); + con_keys = findkeysforcommand("toggleconsole", 0); + keys = tokenize(con_keys); // findkeysforcommand returns data for this float hit_con_bind, i; for (i = 0; i < keys; ++i) @@ -1002,13 +1064,10 @@ void HUD_Panel_Mouse() /* print("menu_enabled: ", ftos(menu_enabled), "\n"); print("Highlighted: ", ftos(highlightedPanel), "\n"); - print("Menu alpha: ", ftos(autocvar__menu_alpha), "\n"); + print("Menu theAlpha: ", ftos(autocvar__menu_alpha), "\n"); */ - // instantly hide the editor cursor if we open the HUDExit dialog - // as hud_fade_alpha doesn't decrease to 0 in this case - // TODO: find a way to fade the cursor out even in this case - if(menu_enabled == 1 || (menu_enabled == 2 && !hud_fade_alpha)) + if(autocvar__menu_alpha == 1) return; mousepos = mousepos + getmousepos() * autocvar_menu_mouse_speed; @@ -1102,15 +1161,16 @@ void HUD_Panel_Mouse() } // draw cursor after performing move/resize to have the panel pos/size updated before mouse_over_panel const vector cursorsize = '32 32 0'; + float cursor_alpha = 1 - autocvar__menu_alpha; if(!mouse_over_panel) - drawpic(mousepos, strcat("gfx/menu/", autocvar_menu_skin, "/cursor.tga"), cursorsize, '1 1 1', hud_fade_alpha, DRAWFLAG_NORMAL); + drawpic(mousepos, strcat("gfx/menu/", autocvar_menu_skin, "/cursor.tga"), cursorsize, '1 1 1', cursor_alpha, DRAWFLAG_NORMAL); else if(mouse_over_panel == 1) - drawpic(mousepos - cursorsize * 0.5, strcat("gfx/menu/", autocvar_menu_skin, "/cursor_move.tga"), cursorsize, '1 1 1', hud_fade_alpha, DRAWFLAG_NORMAL); + drawpic(mousepos - cursorsize * 0.5, strcat("gfx/menu/", autocvar_menu_skin, "/cursor_move.tga"), cursorsize, '1 1 1', cursor_alpha, DRAWFLAG_NORMAL); else if(mouse_over_panel == 2) - drawpic(mousepos - cursorsize * 0.5, strcat("gfx/menu/", autocvar_menu_skin, "/cursor_resize.tga"), cursorsize, '1 1 1', hud_fade_alpha, DRAWFLAG_NORMAL); + drawpic(mousepos - cursorsize * 0.5, strcat("gfx/menu/", autocvar_menu_skin, "/cursor_resize.tga"), cursorsize, '1 1 1', cursor_alpha, DRAWFLAG_NORMAL); else - drawpic(mousepos - cursorsize * 0.5, strcat("gfx/menu/", autocvar_menu_skin, "/cursor_resize2.tga"), cursorsize, '1 1 1', hud_fade_alpha, DRAWFLAG_NORMAL); + drawpic(mousepos - cursorsize * 0.5, strcat("gfx/menu/", autocvar_menu_skin, "/cursor_resize2.tga"), cursorsize, '1 1 1', cursor_alpha, DRAWFLAG_NORMAL); prevMouseClicked = mouseClicked; } @@ -1118,11 +1178,11 @@ void HUD_Panel_Mouse() const float hlBorderSize = 4; const string hlBorder = "gfx/hud/default/border_highlighted"; const string hlBorder2 = "gfx/hud/default/border_highlighted2"; -void HUD_Panel_HlBorder(float myBorder, vector color, float alpha) +void HUD_Panel_HlBorder(float myBorder, vector color, float theAlpha) { - drawfill(panel_pos - '1 1 0' * myBorder, panel_size + '2 2 0' * myBorder, '0 0.5 1', .5 * alpha, DRAWFLAG_NORMAL); - drawpic_tiled(panel_pos - '1 1 0' * myBorder, hlBorder, '8 1 0' * hlBorderSize, eX * (panel_size_x + 2 * myBorder) + eY * hlBorderSize, color, alpha, DRAWFLAG_NORMAL); - drawpic_tiled(panel_pos - '1 1 0' * myBorder + eY * (panel_size_y + 2 * myBorder - hlBorderSize), hlBorder, '8 1 0' * hlBorderSize, eX * (panel_size_x + 2 * myBorder) + eY * hlBorderSize, color, alpha, DRAWFLAG_NORMAL); - drawpic_tiled(panel_pos - '1 1 0' * myBorder + eY * hlBorderSize, hlBorder2, '1 8 0' * hlBorderSize, eY * (panel_size_y + 2 * myBorder - 2 * hlBorderSize) + eX * hlBorderSize, color, alpha, DRAWFLAG_NORMAL); - drawpic_tiled(panel_pos - '1 1 0' * myBorder + eY * hlBorderSize + eX * (panel_size_x + 2 * myBorder - hlBorderSize), hlBorder2, '1 8 0' * hlBorderSize, eY * (panel_size_y + 2 * myBorder - 2 * hlBorderSize) + eX * hlBorderSize, color, alpha, DRAWFLAG_NORMAL); + drawfill(panel_pos - '1 1 0' * myBorder, panel_size + '2 2 0' * myBorder, '0 0.5 1', .5 * theAlpha, DRAWFLAG_NORMAL); + drawpic_tiled(panel_pos - '1 1 0' * myBorder, hlBorder, '8 1 0' * hlBorderSize, eX * (panel_size_x + 2 * myBorder) + eY * hlBorderSize, color, theAlpha, DRAWFLAG_NORMAL); + drawpic_tiled(panel_pos - '1 1 0' * myBorder + eY * (panel_size_y + 2 * myBorder - hlBorderSize), hlBorder, '8 1 0' * hlBorderSize, eX * (panel_size_x + 2 * myBorder) + eY * hlBorderSize, color, theAlpha, DRAWFLAG_NORMAL); + drawpic_tiled(panel_pos - '1 1 0' * myBorder + eY * hlBorderSize, hlBorder2, '1 8 0' * hlBorderSize, eY * (panel_size_y + 2 * myBorder - 2 * hlBorderSize) + eX * hlBorderSize, color, theAlpha, DRAWFLAG_NORMAL); + drawpic_tiled(panel_pos - '1 1 0' * myBorder + eY * hlBorderSize + eX * (panel_size_x + 2 * myBorder - hlBorderSize), hlBorder2, '1 8 0' * hlBorderSize, eY * (panel_size_y + 2 * myBorder - 2 * hlBorderSize) + eX * hlBorderSize, color, theAlpha, DRAWFLAG_NORMAL); }