]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/common/mutators/mutator/dodging/dodging.qc
Merge branch 'master' into Mirio/balance
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / mutators / mutator / dodging / dodging.qc
index 09f169eb3d91bf5daf570b27b8e7c5190e52f0d5..0d20ff7af895f831c7c11cd41c29798f3fbd8c6b 100644 (file)
@@ -137,7 +137,7 @@ float PM_dodging_checkpressedkeys(entity this)
                /* is this a state change? */                                                                                                   \
                if(!(PHYS_DODGING_PRESSED_KEYS(this) & KEY_##BTN) || frozen_no_doubletap) {             \
                                tap_direction_##RESULT;                                                                                                 \
-                               if ((time - this.last_##BTN##_KEY_time) < PHYS_DODGING_TIMEOUT(this))   \
+                               if ((time - this.last_##BTN##_KEY_time) < PHYS_DODGING_TIMEOUT(this) || frozen_no_doubletap)    \
                                        dodge_detected = true;                                                                                                  \
                                this.last_##BTN##_KEY_time = time;                                                                              \
                }
@@ -267,24 +267,22 @@ void PM_dodging_GetPressedKeys(entity this)
 
 MUTATOR_HOOKFUNCTION(dodging, PlayerPhysics)
 {
+    entity player = M_ARGV(0, entity);
+
        // print("dodging_PlayerPhysics\n");
-       PM_dodging_GetPressedKeys(self);
-       PM_dodging(self);
-       return false;
+       PM_dodging_GetPressedKeys(player);
+       PM_dodging(player);
 }
 
 #ifdef SVQC
 
-MUTATOR_HOOKFUNCTION(dodging, GetCvars)
-{
-       GetCvars_handleFloat(get_cvars_s, get_cvars_f, cvar_cl_dodging_timeout, "cl_dodging_timeout");
-       return false;
-}
+REPLICATE(cvar_cl_dodging_timeout, float, "cl_dodging_timeout");
 
 MUTATOR_HOOKFUNCTION(dodging, GetPressedKeys)
 {
-       PM_dodging_checkpressedkeys(self);
-       return false;
+       entity player = M_ARGV(0, entity);
+
+       PM_dodging_checkpressedkeys(player);
 }
 
 #endif