X-Git-Url: https://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fmenu%2Fxonotic%2Futil.qc;h=f7c5b3f41d732e634ee7eb02974ed32408e1a48d;hb=abf4b5a430d71fc83abbe90da9b17b457a65e149;hp=a126b9e5da2713f68fc1cf4f952950a035aadec8;hpb=7b1c7d6a2f8f423b2642a4d2f5f07be9cd5890d0;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/menu/xonotic/util.qc b/qcsrc/menu/xonotic/util.qc index a126b9e5d..f7c5b3f41 100644 --- a/qcsrc/menu/xonotic/util.qc +++ b/qcsrc/menu/xonotic/util.qc @@ -6,7 +6,7 @@ #include "../menu.qh" #include #include -#include +#include #include #include @@ -17,7 +17,7 @@ float GL_CheckExtension(string ext) float GL_Have_TextureCompression() { - return (GL_CheckExtension("GL_EXT_texture_compression_s3tc") && GL_CheckExtension("GL_ARB_texture_compression")); + return GL_CheckExtension("GL_EXT_texture_compression_s3tc"); } .entity parent, firstChild, nextSibling; @@ -26,7 +26,7 @@ void forAllDescendants(entity root, void(entity, entity) funcPre, void(entity, e depthfirst(root, parent, firstChild, nextSibling, funcPre, funcPost, pass); } -.string cvarName; +.string controlledCvar; void SUB_Null_ee(entity e1, entity e2) { } @@ -53,12 +53,12 @@ void loadAllCvars(entity root) forAllDescendants(root, loadCvarsOf, SUB_Null_ee, NULL); } -.string cvarNames_Multi; +.string controlledCvars_Multi; .void(entity me) saveCvars_Multi; string getCvarsMulti(entity me) { - if (me.cvarNames_Multi) - return me.cvarNames_Multi; + if (me.controlledCvars_Multi) + return me.controlledCvars_Multi; return string_null; } void saveCvarsMulti(entity me) @@ -67,9 +67,9 @@ void saveCvarsMulti(entity me) string s, cvarname; me.saveCvars_Multi(me); - s = cvar_string(me.cvarName); + s = cvar_string(me.controlledCvar); - n = tokenize_console(me.cvarNames_Multi); + n = tokenize_console(me.controlledCvars_Multi); for(i = 0; i < n; ++i) { // cvars prefixed with ! get saved with the inverted value @@ -89,7 +89,7 @@ void saveCvarsMulti(entity me) } void makeMulti(entity e, string otherCvars) { - e.cvarNames_Multi = otherCvars; + e.controlledCvars_Multi = otherCvars; e.saveCvars_Multi = e.saveCvars; e.saveCvars = saveCvarsMulti; } @@ -127,6 +127,7 @@ void makeCallback(entity e, entity cbent, void(entity, entity) cbfunc) .bool disabled; void setDependent_Check(entity e) { + bool disabled_prev = e.disabled; float f; string s; if(e.func_setDependent) @@ -165,6 +166,8 @@ void setDependent_Check(entity e) e.disabled = (e.disabled + ((f >= e.cvar3Max_setDependent) && (f <= e.cvar3Min_setDependent)) > e.op_setDependent); } } + if (disabled_prev != e.disabled && e.loadCvars) + e.loadCvars(e); } void setDependent_Draw(entity e) { @@ -349,6 +352,7 @@ void UpdateNotification_URI_Get_Callback(float id, float status, string data) string s; string un_version = ""; + string un_tosversion = ""; string un_download = ""; string un_url = ""; string un_bannedservers = ""; @@ -369,6 +373,11 @@ void UpdateNotification_URI_Get_Callback(float id, float status, string data) un_version = s; break; } + case "T": + { + un_tosversion = s; + break; + } case "C": { un_compatexpire = s; @@ -429,6 +438,11 @@ void UpdateNotification_URI_Get_Callback(float id, float status, string data) } } + if(un_tosversion != "") + { + _Nex_ExtResponseSystem_NewToS = stof(un_tosversion); + } + if(un_bannedservers != "") { _Nex_ExtResponseSystem_BannedServers = strzone(un_bannedservers); @@ -579,6 +593,7 @@ void preMenuDraw() 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 (!campaign_name_previous) campaign_name_previous = strzone(strcat(campaign_name, "x")); // force unequal if(campaign_name == campaign_name_previous) @@ -827,9 +842,9 @@ void CheckSendCvars(entity me, string cvarnamestring) { if(me.sendCvars) { - LOG_INFOF("Sending cvar: %s -> %s", cvarnamestring, cvar_string(cvarnamestring)); if(gamestatus & (GAME_CONNECTED | GAME_ISSERVER)) { + LOG_INFOF("Sending cvar: %s -> %s", cvarnamestring, cvar_string(cvarnamestring)); cmd(sprintf("\nsendcvar %s\n", cvarnamestring)); } }