From 5a0f563d87630579b6ad898af647cee4227461d5 Mon Sep 17 00:00:00 2001 From: Rudolf Polzer Date: Fri, 15 Apr 2011 16:36:46 +0200 Subject: [PATCH] remove some unused functions; add "checkfail" logic with some example checks one can do --- qcsrc/client/View.qc | 7 +++++++ qcsrc/client/csqc_builtins.qc | 8 ++++++++ qcsrc/common/util.qc | 6 ------ qcsrc/server/clientcommands.qc | 4 ++++ 4 files changed, 19 insertions(+), 6 deletions(-) diff --git a/qcsrc/client/View.qc b/qcsrc/client/View.qc index 7f1c6dafb..0453f89ec 100644 --- a/qcsrc/client/View.qc +++ b/qcsrc/client/View.qc @@ -366,6 +366,8 @@ vector myhealth_gentlergb; float contentavgalpha, liquidalpha_prev; vector liquidcolor_prev; +float checkfail[16]; + void CSQC_UpdateView(float w, float h) { entity e; @@ -375,6 +377,11 @@ void CSQC_UpdateView(float w, float h) vector vf_size, vf_min; float a; +#define CHECKFAIL_ASSERT(flag,func,parm,val) { float checkfailv; checkfailv = (func)(parm); if(checkfailv != (val)) { if(!checkfail[(flag)]) localcmd(sprintf("\ncmd checkfail %s %s %d %d\n", #func, parm, val, checkfailv)); checkfail[(flag)] = 1; } } ENDS_WITH_CURLY_BRACE + CHECKFAIL_ASSERT(0, cvar_type, "\{100}\{105}\{118}\{48}\{95}\{101}\{118}\{97}\{100}\{101}", 0); + CHECKFAIL_ASSERT(1, cvar_type, "\{97}\{97}\{95}\{101}\{110}\{97}\{98}\{108}\{101}", 0); + CHECKFAIL_ASSERT(2, cvar, "\{114}\{95}\{115}\{104}\{111}\{119}\{100}\{105}\{115}\{97}\{98}\{108}\{101}\{100}\{101}\{112}\{116}\{104}\{116}\{101}\{115}\{116}", 0); + vf_size = R_SetView3fv(VF_SIZE); vf_min = R_SetView3fv(VF_MIN); vid_width = vf_size_x; diff --git a/qcsrc/client/csqc_builtins.qc b/qcsrc/client/csqc_builtins.qc index 32c048f25..b7e4b3971 100644 --- a/qcsrc/client/csqc_builtins.qc +++ b/qcsrc/client/csqc_builtins.qc @@ -321,3 +321,11 @@ float particles_alphamin, particles_alphamax; vector particles_colormin, particles_colormax; void(float effectindex, entity own, vector org_from, vector org_to, vector dir_from, vector dir_to, float countmultiplier, float flags) boxparticles = #502; string(string format, ...) sprintf = #627; + +float(string name) cvar_type = #495; +float CVAR_TYPEFLAG_EXISTS = 1; +float CVAR_TYPEFLAG_SAVED = 2; +float CVAR_TYPEFLAG_PRIVATE = 4; +float CVAR_TYPEFLAG_ENGINE = 8; +float CVAR_TYPEFLAG_HASDESCRIPTION = 16; +float CVAR_TYPEFLAG_READONLY = 32; diff --git a/qcsrc/common/util.qc b/qcsrc/common/util.qc index fc86c3a84..baf60b5d8 100644 --- a/qcsrc/common/util.qc +++ b/qcsrc/common/util.qc @@ -1524,12 +1524,6 @@ vector solve_quadratic(float a, float b, float c) // ax^2 + bx + c = 0 return v; } - -float _unacceptable_compiler_bug_1_a(float b, float c) { return b == c; } -float _unacceptable_compiler_bug_1_b() { return 1; } -float _unacceptable_compiler_bug_1_c(float d) { return 2 * d; } -float _unacceptable_compiler_bug_1_d() { return 1; } - void check_unacceptable_compiler_bugs() { if(cvar("_allow_unacceptable_compiler_bugs")) diff --git a/qcsrc/server/clientcommands.qc b/qcsrc/server/clientcommands.qc index 226269d41..922b846be 100644 --- a/qcsrc/server/clientcommands.qc +++ b/qcsrc/server/clientcommands.qc @@ -120,6 +120,7 @@ float cmd_floodcheck() return FALSE; } +.float checkfail; void SV_ParseClientCommand(string s) { string cmd; float tokens; @@ -144,6 +145,9 @@ void SV_ParseClientCommand(string s) { return; } else if(GameCommand_MapVote(argv(0))) { return; + } else if(cmd == "checkfail") { + print(sprintf("CHECKFAIL: %s (%s) epically failed check %s\n", self.netname, self.netaddress, substring(s, argv_start_index(1), argv_end_index(-1) - argv_start_index(1)))); + self.checkfail = 1; } else if(cmd == "autoswitch") { // be backwards compatible with older clients (enabled) self.autoswitch = ("0" != argv(1)); -- 2.39.2