]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Merge branch 'master' of /var/cache/git/xonotic/xonotic-data.pk3dir
authorRudolf Polzer <divverent@alientrap.org>
Fri, 27 Jan 2012 11:33:29 +0000 (12:33 +0100)
committerRudolf Polzer <divverent@alientrap.org>
Fri, 27 Jan 2012 11:33:29 +0000 (12:33 +0100)
balanceXPM.cfg
balanceXonotic.cfg
qcsrc/client/hud.qc
qcsrc/client/hud_config.qc
qcsrc/client/miscfunctions.qc
qcsrc/common/constants.qh
qcsrc/menu/xonotic/dialog_multiplayer_playersetup_hud.c
qcsrc/menu/xonotic/dialog_settings_effects.c
qcsrc/menu/xonotic/dialog_settings_misc.c
qcsrc/menu/xonotic/dialog_settings_misc_cvars.c
qcsrc/menu/xonotic/dialog_settings_video.c

index a358d9ea68dc24431ff860efba0faf1a6c557b49..574af5b2fc9f6ff611725dc5483f4eadf5b67b2f 100644 (file)
@@ -564,7 +564,7 @@ set g_balance_hagar_primary_force 100
 set g_balance_hagar_primary_health 15
 set g_balance_hagar_primary_damageforcescale 0
 set g_balance_hagar_primary_radius 65
-set g_balance_hagar_primary_spread 0.04
+set g_balance_hagar_primary_spread 0.03
 set g_balance_hagar_primary_speed 2200
 set g_balance_hagar_primary_lifetime 5
 set g_balance_hagar_primary_refire 0.16667 // 6 rockets per second
index b351d22c6000a85d48781bec30b09ce313fe037d..c411b883db431bf31f0c2e701fcff2bd8c0be7b4 100644 (file)
@@ -564,7 +564,7 @@ set g_balance_hagar_primary_force 100
 set g_balance_hagar_primary_health 15
 set g_balance_hagar_primary_damageforcescale 0
 set g_balance_hagar_primary_radius 65
-set g_balance_hagar_primary_spread 0.04
+set g_balance_hagar_primary_spread 0.03
 set g_balance_hagar_primary_speed 2200
 set g_balance_hagar_primary_lifetime 5
 set g_balance_hagar_primary_refire 0.16667 // 6 rockets per second
index 02558c7ea5977809d47e7e078d09743d63cfc7e5..79185d7147e016d492d9d42c52a8922869eec243 100644 (file)
@@ -1061,8 +1061,8 @@ void DrawNumIcon_expanding(vector myPos, vector mySize, float x, string icon, fl
                picpos = newPos;
        }
 
-       // FIXME newSize_x is unused, is that right?
-
+       // NOTE: newSize_x is always equal to 3 * mySize_y so we can use
+       // '2 1 0' * newSize_y instead of eX * (2/3) * newSize_x + eY * newSize_y
        drawstring_aspect_expanding(numpos, ftos(x), '2 1 0' * newSize_y, color, panel_fg_alpha * theAlpha, DRAWFLAG_NORMAL, fadelerp);
        drawpic_aspect_skin_expanding(picpos, icon, '1 1 0' * newSize_y, '1 1 1', panel_fg_alpha * theAlpha, DRAWFLAG_NORMAL, fadelerp);
 }
@@ -4915,11 +4915,11 @@ switch (id) {\
        case (HUD_PANEL_ENGINEINFO):\
                HUD_EngineInfo(); break;\
        case (HUD_PANEL_INFOMESSAGES):\
-                HUD_InfoMessages(); break;\
+               HUD_InfoMessages(); break;\
        case (HUD_PANEL_PHYSICS):\
-                HUD_Physics(); break;\
+               HUD_Physics(); break;\
        case (HUD_PANEL_CENTERPRINT):\
-                HUD_CenterPrint(); break;\
+               HUD_CenterPrint(); break;\
 } ENDS_WITH_CURLY_BRACE
 
 void HUD_Main (void)
@@ -4934,17 +4934,14 @@ void HUD_Main (void)
        if(scoreboard_fade_alpha)
                hud_fade_alpha = (1 - scoreboard_fade_alpha);
 
+       if(autocvar__hud_configure)
+               if(isdemo())
+                       HUD_Configure_Exit_Force();
+
        if(intermission == 2) // no hud during mapvote
        {
-               if (autocvar__hud_configure) //force exit from hud config
-               {
-                       if (menu_enabled)
-                       {
-                               menu_enabled = 0;
-                               localcmd("togglemenu\n");
-                       }
-                       cvar_set("_hud_configure", "0");
-               }
+               if (autocvar__hud_configure)
+                       HUD_Configure_Exit_Force();
                hud_fade_alpha = 0;
        }
        else if(autocvar__menu_alpha == 0 && scoreboard_fade_alpha == 0)
@@ -4976,12 +4973,15 @@ void HUD_Main (void)
                hud_configure_gridSize_y = bound(0.005, cvar("hud_configure_grid_ysize"), 0.2);
                hud_configure_realGridSize_x = hud_configure_gridSize_x * vid_conwidth;
                hud_configure_realGridSize_y = hud_configure_gridSize_y * vid_conheight;
+               vector s;
                // x-axis
-               for(i = 0; i < 1/hud_configure_gridSize_x; ++i)
-                       drawfill(eX * i * hud_configure_realGridSize_x, eX + eY * vid_conheight, '0.5 0.5 0.5', autocvar_hud_configure_grid_alpha, DRAWFLAG_NORMAL);
+               s = eX + eY * vid_conheight;
+               for(i = 1; i < 1/hud_configure_gridSize_x; ++i)
+                       drawfill(eX * i * hud_configure_realGridSize_x, s, '0.5 0.5 0.5', autocvar_hud_configure_grid_alpha, DRAWFLAG_NORMAL);
                // y-axis
-               for(i = 0; i < 1/hud_configure_gridSize_y; ++i)
-                       drawfill(eY * i * hud_configure_realGridSize_y, eY + eX * vid_conwidth, '0.5 0.5 0.5', autocvar_hud_configure_grid_alpha, DRAWFLAG_NORMAL);
+               s = eY + eX * vid_conwidth;
+               for(i = 1; i < 1/hud_configure_gridSize_y; ++i)
+                       drawfill(eY * i * hud_configure_realGridSize_y, s, '0.5 0.5 0.5', autocvar_hud_configure_grid_alpha, DRAWFLAG_NORMAL);
        }
 
 #ifdef COMPAT_XON050_ENGINE
@@ -5094,6 +5094,8 @@ void HUD_Main (void)
                        HUD_Panel_UpdatePosSizeForId(highlightedPanel);
                        HUD_Panel_HlBorder(panel_bg_border + 1.5 * hlBorderSize, '0 0.5 1', 0.25 * (1 - autocvar__menu_alpha));
                }
+               if (!hud_configure_prev)
+                       hudShiftState = 0;
        }
 
        hud_configure_prev = autocvar__hud_configure;
index 3ad600e41c74de9e6d42918fbae7634dcedb091d..15b924dd9cb9f6eae222bad1524642f001f52003 100644 (file)
@@ -64,7 +64,7 @@ void HUD_Panel_ExportCfg(string cfgname)
                        HUD_Write_PanelCvar_q("_bg_border");
                        HUD_Write_PanelCvar_q("_bg_padding");
                        switch(i) {
-                               case HUD_PANEL_WEAPONS: 
+                               case HUD_PANEL_WEAPONS:
                                        HUD_Write_PanelCvar_q("_accuracy");
                                        HUD_Write_PanelCvar_q("_label");
                                        HUD_Write_PanelCvar_q("_complainbubble");
@@ -189,6 +189,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)
 {
@@ -628,6 +638,10 @@ 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;
@@ -1049,10 +1063,7 @@ void HUD_Panel_Mouse()
        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;
@@ -1146,15 +1157,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;
 }
index f4eaf927fe2b56943cc8e0ec2c287080a8325d43..6e4e2dd87c37789c78f045aa9fb7836d94ee04b1 100644 (file)
@@ -279,16 +279,20 @@ var string _drawpic_picpath;
 #define drawpic_aspect(pos,pic,mySize,color,theAlpha,drawflag)\
        do {\
                _drawpic_imgsize = draw_getimagesize(pic);\
-               _drawpic_imgaspect = _drawpic_imgsize_x/_drawpic_imgsize_y;\
-               _drawpic_sz = mySize;\
-               if(_drawpic_sz_x/_drawpic_sz_y > _drawpic_imgaspect) {\
-                       _drawpic_oldsz = _drawpic_sz_x;\
-                       _drawpic_sz_x = _drawpic_sz_y * _drawpic_imgaspect;\
-                       drawpic(pos + eX * (_drawpic_oldsz - _drawpic_sz_x) * 0.5, pic, _drawpic_sz, color, theAlpha, drawflag);\
-               } else {\
-                       _drawpic_oldsz = _drawpic_sz_y;\
-                       _drawpic_sz_y = _drawpic_sz_x / _drawpic_imgaspect;\
-                       drawpic(pos + eY * (_drawpic_oldsz - _drawpic_sz_y) * 0.5, pic, _drawpic_sz, color, theAlpha, drawflag);\
+               if(_drawpic_imgsize != '0 0 0') {\
+                       _drawpic_imgaspect = _drawpic_imgsize_x/_drawpic_imgsize_y;\
+                       _drawpic_sz = mySize;\
+                       if(_drawpic_sz_x/_drawpic_sz_y > _drawpic_imgaspect) {\
+                               _drawpic_oldsz = _drawpic_sz_x;\
+                               _drawpic_sz_x = _drawpic_sz_y * _drawpic_imgaspect;\
+                               if(_drawpic_sz_x)\
+                                       drawpic(pos + eX * (_drawpic_oldsz - _drawpic_sz_x) * 0.5, pic, _drawpic_sz, color, theAlpha, drawflag);\
+                       } else {\
+                               _drawpic_oldsz = _drawpic_sz_y;\
+                               _drawpic_sz_y = _drawpic_sz_x / _drawpic_imgaspect;\
+                               if(_drawpic_sz_y)\
+                                       drawpic(pos + eY * (_drawpic_oldsz - _drawpic_sz_y) * 0.5, pic, _drawpic_sz, color, theAlpha, drawflag);\
+                       }\
                }\
        } while(0)
 
index afd2677a66230adbdb9cb41aa297501a20d7c7c2..e413ad94ae65b0b817f29ce4c6f4bc3d9987767e 100644 (file)
@@ -551,8 +551,6 @@ string HUD_PANELNAME_INFOMESSAGES   = "infomessages";
 string HUD_PANELNAME_PHYSICS   = "physics";
 string HUD_PANELNAME_CENTERPRINT       = "centerprint";
 
-float HUD_MENU_ENABLE          = 0;
-
 #define SERVERFLAG_ALLOW_FULLBRIGHT 1
 #define SERVERFLAG_TEAMPLAY 2
 #define SERVERFLAG_PLAYERSTATS 4
index 1d766d4771c53e920b2916552183078700ae9ec7..e53f99bc1fec29b5a6b90f46cf30aa51f3c9c585 100644 (file)
@@ -45,11 +45,13 @@ void XonoticHUDDialog_fill(entity me)
        me.TR(me);
                me.TDempty(me, 0.2);
                me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Factor:")));
-               me.TD(me, 1, 2, e = makeXonoticSlider(0.005, 0.1, 0.005, "hud_damage_factor"));
+               setDependent(e, "hud_damage", 0.001, 100);
+               me.TD(me, 1, 2, e = makeXonoticSlider(0.025, 0.1, 0.025, "hud_damage_factor"));
                setDependent(e, "hud_damage", 0.001, 100);
        me.TR(me);
                me.TDempty(me, 0.2);
                me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Fade rate:")));
+               setDependent(e, "hud_damage", 0.001, 100);
                me.TD(me, 1, 2, e = makeXonoticSlider(0.25, 1, 0.05, "hud_damage_fade_rate"));
                setDependent(e, "hud_damage", 0.001, 100);
        me.TR(me);
@@ -59,20 +61,21 @@ void XonoticHUDDialog_fill(entity me)
        me.TR(me);
                me.TDempty(me, 0.2);
                me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Scale:")));
+               setDependent(e, "cl_hidewaypoints", 0, 0);
                me.TD(me, 1, 2, e = makeXonoticSlider(0.5, 1.5, 0.05, "g_waypointsprite_scale"));
                setDependent(e, "cl_hidewaypoints", 0, 0);
        me.TR(me);
                me.TDempty(me, 0.2);
                me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Alpha:")));
+               setDependent(e, "cl_hidewaypoints", 0, 0);
                me.TD(me, 1, 2, e = makeXonoticSlider(0.1, 1, 0.05, "g_waypointsprite_alpha"));
                setDependent(e, "cl_hidewaypoints", 0, 0);
        me.TR(me);
                me.TDempty(me, 0.2);
                me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Edge offset:")));
+               setDependent(e, "cl_hidewaypoints", 0, 0);
                me.TD(me, 1, 2, e = makeXonoticSlider(0, 0.3, 0.01, "g_waypointsprite_edgeoffset_bottom"));
-               makeMulti(e, "g_waypointsprite_edgeoffset_top");
-               makeMulti(e, "g_waypointsprite_edgeoffset_left");
-               makeMulti(e, "g_waypointsprite_edgeoffset_right");
+               makeMulti(e, "g_waypointsprite_edgeoffset_top g_waypointsprite_edgeoffset_left g_waypointsprite_edgeoffset_right");
                setDependent(e, "cl_hidewaypoints", 0, 0);
        me.TR(me);
        
index 65e7d417ac77dac45437a7ae149be5e337c0f16a..8ef2e9d6313b7b8e038e66b80f31e6ee2bd4f297 100644 (file)
@@ -159,7 +159,7 @@ void XonoticEffectsSettingsTab_fill(entity me)
                me.TD(me, 1, 1, e = makeXonoticCheckBox(0, "r_glsl_offsetmapping_lod", _("LOD")));
                        setDependentAND(e, "vid_gl20", 1, 1, "r_glsl_offsetmapping", 1, 1);
        me.TR(me);
-               me.TD(me, 1, 2, e = makeXonoticCheckBox(0, "r_bloom", _("Bloom")));
+               me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "r_bloom", _("Bloom")));
        me.TR(me);
                me.TD(me, 1, 1, e = makeXonoticCheckBox(0, "r_water", _("Reflections:")));
                        setDependent(e, "vid_gl20", 1, 1);
@@ -176,9 +176,8 @@ void XonoticEffectsSettingsTab_fill(entity me)
                        e.savedValue = 0.4; // default
                me.TD(me, 1, 2, s);
        me.TR(me);
-               e = makeXonoticCheckBoxEx(0.5, 0, "hud_postprocessing_maxbluralpha", _("Extra postprocessing effects"));
+               me.TD(me, 1, 3, e = makeXonoticCheckBoxEx(0.5, 0, "hud_postprocessing_maxbluralpha", _("Extra postprocessing effects")));
                makeMulti(e, "hud_powerup");
-               me.TD(me, 1, 2, e);
                setDependent(e, "vid_gl20", 1, 1);
                        
        me.gotoRC(me, me.rows - 1, 0);
index 051520549d239dfec09a48243f0a1055ac908401..e743ccf2e4ef6cdfb9bcc13aae27b5f64a9b63eb 100644 (file)
@@ -126,7 +126,7 @@ void XonoticMiscSettingsTab_fill(entity me)
                setDependent(e, "cl_maxfps", 1, 1000);
        me.TR(me);
        me.TR(me);
-               me.TD(me, 1, 0.8, e = makeXonoticTextLabel(0, _("Menu tooltips:")));
+               me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Menu tooltips:")));
                me.TD(me, 1, 2, e = makeXonoticTextSlider("menu_tooltips"));
                        e.addValue(e, ZCTX(_("TLTIP^Disabled")), "0");
                        e.addValue(e, ZCTX(_("TLTIP^Standard")), "1");
index 5dd1c5a5b2175e17b361cf7aaef63ad099762dfe..7ebca4162ce78174a5c9e6a93ffcbaeb8bb09b94 100644 (file)
@@ -5,7 +5,7 @@ CLASS(XonoticCvarsDialog) EXTENDS(XonoticDialog)
        ATTRIB(XonoticCvarsDialog, title, string, _("Advanced settings"))
        ATTRIB(XonoticCvarsDialog, color, vector, SKINCOLOR_DIALOG_CVARS)
        ATTRIB(XonoticCvarsDialog, intendedWidth, float, 0.8)
-       ATTRIB(XonoticCvarsDialog, rows, float, 25)
+       ATTRIB(XonoticCvarsDialog, rows, float, 24)
        ATTRIB(XonoticCvarsDialog, columns, float, 6)
 ENDCLASS(XonoticCvarsDialog)
 #endif
@@ -40,7 +40,7 @@ void XonoticCvarsDialog_fill(entity me) // in this dialog, use SKINCOLOR_CVARLIS
                        cvarlist.controlledTextbox = e; // this COULD also be the Value box, but this leads to accidentally editing stuff
        me.TR(me);
                me.TD(me, me.rows - me.currentRow - 7, me.columns, cvarlist);
-       me.gotoRC(me, me.rows - 7, 0);
+       me.gotoRC(me, me.rows - 6, 0);
                me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Setting:")));
                me.TD(me, 1, me.columns - 1, e = makeXonoticTextLabel(0, string_null));
                        cvarlist.cvarNameBox = e;
index 2ee4fd0c9a5df3551e5964bc6167c8eeec430d2f..81b89f7afc5e6bac15a3d2cb4a6537fc96594201 100644 (file)
@@ -119,14 +119,14 @@ void XonoticVideoSettingsTab_fill(entity me)
                me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Intensity:")));
                me.TD(me, 1, 2, e = makeXonoticSlider(0.5, 2.0, 0.05, "r_hdr_scenebrightness"));
        me.TR(me);
+       me.TR(me);
+               me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "gl_finish", _("Wait for GPU to finish each frame")));
        me.TR(me);
                me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "vid_gl20", _("Use OpenGL 2.0 shaders (GLSL)")));
        me.TR(me);
                me.TDempty(me, 0.2);
                me.TD(me, 1, 2.8, e = makeXonoticCheckBox(0, "v_glslgamma", _("Use GLSL to handle color control")));
                        setDependent(e, "vid_gl20", 1, 1);
-       me.TR(me);
-               me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "gl_finish", _("Wait for GPU to finish each frame")));
        if(cvar("developer"))
        {
                me.TR(me);