]> git.rm.cloudns.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
- some final fixup.
authorFlorian Paul Schmidt <mista.tapas@gmx.net>
Sat, 20 Mar 2010 12:42:21 +0000 (13:42 +0100)
committerFlorian Paul Schmidt <mista.tapas@gmx.net>
Sat, 20 Mar 2010 12:42:21 +0000 (13:42 +0100)
qcsrc/server/defs.qh
qcsrc/server/miscfunctions.qc
qcsrc/server/mutators/base.qh
qcsrc/server/mutators/mutator_dodging.qc
qcsrc/server/teamplay.qc

index f18c610aa84cefc431f77b9b2150467f2d98aa7a..e80025a676e30e27fe43b44838d40b0fabec59d8 100644 (file)
@@ -17,7 +17,7 @@ float require_spawnfunc_prefix; // if this float exists, only functions with spa
 
 float ctf_score_value(string parameter);
 
-float g_dm, g_domination, g_ctf, g_tdm, g_keyhunt, g_onslaught, g_assault, g_arena, g_ca, g_lms, g_runematch, g_race, g_nexball, g_cts, g_dodging;
+float g_dm, g_domination, g_ctf, g_tdm, g_keyhunt, g_onslaught, g_assault, g_arena, g_ca, g_lms, g_runematch, g_race, g_nexball, g_cts;
 float g_cloaked, g_footsteps, g_jump_grunt, g_grappling_hook, g_laserguided_missile, g_midair, g_minstagib, g_pinata, g_norecoil, g_vampire, g_minstagib_invis_alpha, g_bloodloss;
 float g_warmup_limit;
 float g_warmup_allguns;
index 0cf246331751bda733ffb036f4ce67a6de61659f..7e00a8d6ca1e554a137306d87a51957e5cab6da2 100644 (file)
@@ -593,6 +593,8 @@ float w_getbestweapon(entity e);
 void GetCvars(float f)
 {
        string s;
+
+       get_cvars_f = f;
        MUTATOR_CALLHOOK(GetCvars);
 
        if (f > 0)
index 7495826659487da89ceca725e1e7cb7ef5c3fc13..49feb762d24f45e321862e1fcb10a3a8b2a12e26 100644 (file)
@@ -54,4 +54,4 @@ MUTATOR_HOOKABLE(OnEntityPreSpawn); // return error to prevent entity spawn, or
 MUTATOR_HOOKABLE(PlayerPreThink);
 MUTATOR_HOOKABLE(GetPressedKeys);
 MUTATOR_HOOKABLE(PlayerPhysics);
-MUTATOR_HOOKABLE(GetCvars);
+MUTATOR_HOOKABLE(GetCvars); float get_cvars_f;
index dbafdc67cad3866f27b1699bb15589a1fbd95c7d..3c5e884e88088a521ac4fce2a0ca0b8883f3c133 100644 (file)
@@ -23,6 +23,8 @@
 .float dodging_single_action;
 
 void dodging_Initialize() {
+       // print("dodging_Initialize\n");
+
        self.last_FORWARD_KEY_time = 0;
        self.last_BACKWARD_KEY_time = 0;
        self.last_RIGHT_KEY_time = 0;
@@ -35,14 +37,19 @@ void dodging_Initialize() {
 }
 
 MUTATOR_HOOKFUNCTION(dodging_GetCvars) {
+       // print("dodging_GetCvars\n");
+
        string s;
-       float f;
+       s = strcat1(argv(get_cvars_f));
+
+       GetCvars_handleFloat(s, get_cvars_f, cvar_cl_dodging_timeout, "cl_dodging_timeout");
 
-       GetCvars_handleFloat(s, f, cvar_cl_dodging_timeout, "cl_dodging_timeout");
        return 0;
 }
 
 MUTATOR_HOOKFUNCTION(dodging_PlayerPhysics) {
+       // print("dodging_PlayerPhysics\n");
+
        float common_factor;
 
        // is dodging enabled at all? if not, do nothing..
@@ -92,9 +99,10 @@ MUTATOR_HOOKFUNCTION(dodging_PlayerPhysics) {
 }
 
 MUTATOR_HOOKFUNCTION(dodging_GetPressedKeys) {
+       // print("dodging_PlayerPhysics\n");
+
        float length;
        float dodge_detected;
-       //print("dodging_hook\n");
 
        if (g_dodging == 0)
                return 0;
@@ -110,6 +118,9 @@ MUTATOR_HOOKFUNCTION(dodging_GetPressedKeys) {
                return 0;
 
 
+       // TODO: fix!
+       // self.cvar_cl_dodging_timeout = 0.2;
+
        if (self.movement_x > 0) {
                // is this a state change?
                if (!(self.pressedkeys & KEY_FORWARD)) {
@@ -185,6 +196,8 @@ MUTATOR_DEFINITION(dodging)
        // in the physics hook we actually implement the dodge..
        MUTATOR_HOOK(PlayerPhysics, dodging_PlayerPhysics, CBC_ORDER_ANY);
 
+       MUTATOR_HOOK(GetCvars, dodging_GetCvars, CBC_ORDER_ANY);
+
        // this just turns on the cvar.
        MUTATOR_ONADD
        {
@@ -199,4 +212,4 @@ MUTATOR_DEFINITION(dodging)
        }
 
        return 0;
-}
\ No newline at end of file
+}
index b251869984c2b4de12ca36402775fa515dcc3eae..aeb98bea19d02f9ee6a3f46dbe9a42ce2c994a03 100644 (file)
@@ -208,8 +208,8 @@ void InitGameplayMode()
        fraglimit_override = cvar("fraglimit_override");
        leadlimit_override = cvar("leadlimit_override");
 
-       g_dodging = cvar("g_dodging");
-       if(g_dodging)
+       // g_dodging = cvar("g_dodging");
+       if(cvar("g_dodging"))
                MUTATOR_ADD(dodging);
        
        if(g_dm)