X-Git-Url: http://de.git.xonotic.org/?p=xonotic%2Fxonotic-data.pk3dir.git;a=blobdiff_plain;f=qcsrc%2Fmenu%2Fxonotic%2Futil.qc;h=b8215d52cac6c97150ea863fa05c7dd885d02a25;hp=b9d6a08d5f63810246c3ac21a30588d28c5712b2;hb=0c2abedcd52bfc9a8a15e0c0414dc88bf2eaf4b2;hpb=166d02f84387480da68ddc60346af1202297ce19 diff --git a/qcsrc/menu/xonotic/util.qc b/qcsrc/menu/xonotic/util.qc index b9d6a08d5..b8215d52c 100644 --- a/qcsrc/menu/xonotic/util.qc +++ b/qcsrc/menu/xonotic/util.qc @@ -8,7 +8,6 @@ float GL_Have_TextureCompression() return (GL_CheckExtension("GL_EXT_texture_compression_s3tc") && GL_CheckExtension("GL_ARB_texture_compression")); } -float tooltipdb; void loadTooltips() { tooltipdb = db_load(language_filename("tooltips.db")); @@ -72,6 +71,12 @@ void loadAllCvars(entity root) .string cvarNames_Multi; .void(entity me) saveCvars_Multi; +string getCvarsMulti(entity me) +{ + if (me.cvarNames_Multi) + return me.cvarNames_Multi; + return string_null; +} void saveCvarsMulti(entity me) { float n, i; @@ -250,6 +255,7 @@ void setDependentWeird(entity e, float(entity) func) float _Nex_ExtResponseSystem_Queried; string _Nex_ExtResponseSystem_UpdateTo; +string _Nex_ExtResponseSystem_UpdateToURL; void URI_Get_Callback(float id, float status, string data) { @@ -314,9 +320,17 @@ void UpdateNotification_URI_Get_Callback(float id, float status, string data) // update needed if(n >= 2) print(sprintf(_("Update can be downloaded at:\n%s\n"), argv(1))); + if(n >= 3) + _Nex_ExtResponseSystem_UpdateToURL = strzone(argv(2)); } _Nex_ExtResponseSystem_UpdateTo = strzone(_Nex_ExtResponseSystem_UpdateTo); + + if(n >= 4) + { + _Nex_ExtResponseSystem_BannedServers = strzone(argv(3)); + _Nex_ExtResponseSystem_BannedServersNeedsRefresh = 1; + } } } @@ -364,7 +378,7 @@ void postMenuDraw() if(autocvar_menu_watermark != "") { vector fs = '48 48 0'; - draw_CenterText('0.5 0.1 0', autocvar_menu_watermark, globalToBoxSize('32 32 0', draw_scale), '1 1 1', 0.05, 1); + draw_CenterText('0.5 0.1 0', sprintf(_("^1%s TEST BUILD"), autocvar_menu_watermark), globalToBoxSize('32 32 0', draw_scale), '1 1 1', 0.05, 1); } } void preMenuDraw() @@ -421,16 +435,25 @@ void preMenuDraw() // TODO rather turn this into a dialog fs = ((1/draw_scale_x) * eX + (1/draw_scale_y) * eY) * 12; line = eY * fs_y; - sz_x = draw_TextWidth(" http://www.xonotic.org/ ", 0, fs); + string l1, l2; + l1 = sprintf(_("Update to %s now!"), _Nex_ExtResponseSystem_UpdateTo); + l2 = "http://www.xonotic.org/"; + if(_Nex_ExtResponseSystem_UpdateToURL) + l2 = _Nex_ExtResponseSystem_UpdateToURL; + + sz_x = draw_TextWidth(" ", 0, fs) + max( + draw_TextWidth(l1, 0, fs), + draw_TextWidth(l2, 0, fs) + ); sz_y = 3 * fs_y; - draw_alpha = sin(time * 0.112 - 0.3) * 10; + draw_alpha = bound(0, sin(time * 0.112 - 0.3) * 10, 1); mid = eX * (0.5 + 0.5 * (1 - sz_x) * cos(time * 0.071)) + eY * (0.5 + 0.5 * (1 - sz_y) * sin(time * 0.071)); draw_Fill(mid - 0.5 * sz, sz, '1 1 0', 1); - draw_CenterText(mid - 1 * line, sprintf(_("Update to %s now!"), _Nex_ExtResponseSystem_UpdateTo), fs, '1 0 0', 1, 0); - draw_CenterText(mid - 0 * line, "http://www.xonotic.org/", fs, '0 0 1', 1, 0); + draw_CenterText(mid - 1 * line, l1, fs, '1 0 0', 1, 0); + draw_CenterText(mid - 0 * line, l2, fs, '0 0 1', 1, 0); } if not(campaign_name_previous) campaign_name_previous = strzone(strcat(campaign_name, "x")); // force unequal @@ -464,25 +487,13 @@ string resolvemod(string m) return m; } -string HUD_Panel_GetSettingName(float theSetting) -{ - switch(theSetting) { - case HUD_MENU_ENABLE: return ""; break; - default: return ""; - } -} - float updateCompression() { - float fh; float have_dds, have_jpg, have_tga; float can_dds; - if((have_dds = ((fh = fopen("dds/particles/particlefont.dds", FILE_READ)) >= 0))) - fclose(fh); - if((have_jpg = ((fh = fopen("particles/particlefont.jpg", FILE_READ)) >= 0))) - fclose(fh); - if((have_tga = ((fh = fopen("particles/particlefont.tga", FILE_READ)) >= 0))) - fclose(fh); + have_dds = (fexists("dds/particles/particlefont.dds")); + have_jpg = (fexists("particles/particlefont.jpg")); + have_tga = (fexists("particles/particlefont.tga")); can_dds = GL_Have_TextureCompression(); if(have_dds && (have_jpg || have_tga)) { @@ -490,8 +501,12 @@ float updateCompression() // but ONLY if we actually support it! if(can_dds) { + // these builds are meant to have GOOD quality, so let's not compress non-skinframes cvar_set("gl_texturecompression", "0"); return 1; + + //cvar_set("gl_texturecompression", cvar_string("r_texture_dds_load")); + //return 2; } else { @@ -574,29 +589,6 @@ float GameType_GetCount() return i; } -string language_filename(string s) -{ - string fn; - float fh; - fn = prvm_language; - if(fn == "" || fn == "dump") - return s; - fn = strcat(s, ".", fn); - if((fh = fopen(fn, FILE_READ)) >= 0) - { - fclose(fh); - return fn; - } - return s; -} -string CTX(string s) -{ - float p = strstrofs(s, "^", 0); - if(p < 0) - return s; - return substring(s, p+1, -1); -} - void dialog_hudpanel_common_notoggle(entity me, string panelname) { float i;