From 65f231a7b085c3693e2f9f7ca36795aca4bc09b4 Mon Sep 17 00:00:00 2001 From: fruitiex Date: Wed, 10 Feb 2010 18:04:16 +0000 Subject: [PATCH] cvar that disables doublejump code on ramps for exact old rampjump style git-svn-id: svn://svn.icculus.org/nexuiz/trunk@8629 f962a42d-fe04-0410-a3ab-8c8b0445ebaa --- data/defaultNexuiz.cfg | 1 + data/physics10.cfg | 1 + data/physics11.cfg | 1 + data/physics151.cfg | 1 + data/physics151b.cfg | 1 + data/physics16rc1.cfg | 1 + data/physics20.cfg | 1 + data/physics25.cfg | 1 + data/physics26.cfg | 1 + data/physicsCPMA.cfg | 1 + data/physicsHavoc.cfg | 1 + data/physicsLzd.cfg | 1 + data/physicsNexrun.cfg | 1 + data/physicsNexrun_old.cfg | 1 + data/physicsNoQWBunny.cfg | 1 + data/physicsQ.cfg | 1 + data/physicsQ2.cfg | 1 + data/physicsQ2a.cfg | 1 + data/physicsQ3.cfg | 1 + data/physicsQBF.cfg | 1 + data/physicsQBFplus.cfg | 1 + data/physicsSamual.cfg | 1 + data/physicsWarsow.cfg | 1 + data/physicsWarsowClassicBunny.cfg | 1 + data/physicsWarsowDev.cfg | 1 + data/qcsrc/server/cl_physics.qc | 12 +++++++++--- 26 files changed, 34 insertions(+), 3 deletions(-) diff --git a/data/defaultNexuiz.cfg b/data/defaultNexuiz.cfg index 72ec43399..3737c47d5 100644 --- a/data/defaultNexuiz.cfg +++ b/data/defaultNexuiz.cfg @@ -330,6 +330,7 @@ set sv_player_crouch_maxs "16 16 25" "maxs of a crouched playermodel" set sv_pogostick 1 "don't require releasing the space bar for jumping again" set sv_doublejump 0 "allow Quake 2-style double jumps" +set sv_doublejump_disable_on_ramps 0 "disable doublejump code on ramps to preserve the old rampjump style" set sv_jumpspeedcap_min "" "wont perform a doublejump if z-axis speed is higher than sv_jumpvelocity * this" set sv_jumpspeedcap_max "" "wont perform a doublejump if z-axis speed is higher than sv_jumpvelocity * this" diff --git a/data/physics10.cfg b/data/physics10.cfg index 1514173be..c9a73ce0b 100644 --- a/data/physics10.cfg +++ b/data/physics10.cfg @@ -26,3 +26,4 @@ sv_doublejump 0 // 1.0 did not allow re-jumping due to a bug, this is quite close to it sv_jumpspeedcap_min "" sv_jumpspeedcap_max "" +sv_doublejump_disable_on_ramps 0 diff --git a/data/physics11.cfg b/data/physics11.cfg index 01a26ef39..22676aa4b 100644 --- a/data/physics11.cfg +++ b/data/physics11.cfg @@ -25,3 +25,4 @@ sv_friction_on_land 0.25 sv_doublejump 0 sv_jumpspeedcap_min "" sv_jumpspeedcap_max "" +sv_doublejump_disable_on_ramps 0 diff --git a/data/physics151.cfg b/data/physics151.cfg index b0aa6509d..4f7a4080c 100644 --- a/data/physics151.cfg +++ b/data/physics151.cfg @@ -25,3 +25,4 @@ sv_friction_on_land 0 sv_doublejump 0 sv_jumpspeedcap_min "" sv_jumpspeedcap_max "" +sv_doublejump_disable_on_ramps 0 diff --git a/data/physics151b.cfg b/data/physics151b.cfg index e14a218b3..bced8c594 100644 --- a/data/physics151b.cfg +++ b/data/physics151b.cfg @@ -25,3 +25,4 @@ sv_friction_on_land 0 sv_doublejump 0 sv_jumpspeedcap_min "" sv_jumpspeedcap_max "" +sv_doublejump_disable_on_ramps 0 diff --git a/data/physics16rc1.cfg b/data/physics16rc1.cfg index cbda5fb78..39c651826 100644 --- a/data/physics16rc1.cfg +++ b/data/physics16rc1.cfg @@ -25,3 +25,4 @@ sv_friction_on_land 0.2 sv_doublejump 0 sv_jumpspeedcap_min "" sv_jumpspeedcap_max "" +sv_doublejump_disable_on_ramps 0 diff --git a/data/physics20.cfg b/data/physics20.cfg index dc780e11c..c41f6c8a3 100644 --- a/data/physics20.cfg +++ b/data/physics20.cfg @@ -25,3 +25,4 @@ sv_friction_on_land 0 sv_doublejump 0 sv_jumpspeedcap_min "" sv_jumpspeedcap_max "" +sv_doublejump_disable_on_ramps 0 diff --git a/data/physics25.cfg b/data/physics25.cfg index 995284f38..a05d943a4 100644 --- a/data/physics25.cfg +++ b/data/physics25.cfg @@ -25,3 +25,4 @@ sv_friction_on_land 0 sv_doublejump 0 sv_jumpspeedcap_min "" sv_jumpspeedcap_max "" +sv_doublejump_disable_on_ramps 0 diff --git a/data/physics26.cfg b/data/physics26.cfg index be2ba4df9..0e1910fa9 100644 --- a/data/physics26.cfg +++ b/data/physics26.cfg @@ -25,3 +25,4 @@ sv_friction_on_land 0 sv_doublejump 0 sv_jumpspeedcap_min "" sv_jumpspeedcap_max "" +sv_doublejump_disable_on_ramps 0 diff --git a/data/physicsCPMA.cfg b/data/physicsCPMA.cfg index f5226b278..95d08e333 100644 --- a/data/physicsCPMA.cfg +++ b/data/physicsCPMA.cfg @@ -25,3 +25,4 @@ sv_friction_on_land 0 sv_doublejump 0 sv_jumpspeedcap_min "" sv_jumpspeedcap_max "" +sv_doublejump_disable_on_ramps 0 diff --git a/data/physicsHavoc.cfg b/data/physicsHavoc.cfg index 5b44015a4..0a4138e33 100644 --- a/data/physicsHavoc.cfg +++ b/data/physicsHavoc.cfg @@ -25,3 +25,4 @@ sv_friction_on_land 0 sv_doublejump 0 sv_jumpspeedcap_min "" sv_jumpspeedcap_max "" +sv_doublejump_disable_on_ramps 0 diff --git a/data/physicsLzd.cfg b/data/physicsLzd.cfg index 9313f252c..f85843480 100644 --- a/data/physicsLzd.cfg +++ b/data/physicsLzd.cfg @@ -26,3 +26,4 @@ sv_friction_on_land 0 sv_doublejump 0 sv_jumpspeedcap_min "" sv_jumpspeedcap_max "" +sv_doublejump_disable_on_ramps 0 diff --git a/data/physicsNexrun.cfg b/data/physicsNexrun.cfg index b88fa7b0d..c90d1c29b 100644 --- a/data/physicsNexrun.cfg +++ b/data/physicsNexrun.cfg @@ -29,3 +29,4 @@ sv_friction_on_land 0 sv_doublejump 1 sv_jumpspeedcap_min 0 sv_jumpspeedcap_max 1 +sv_doublejump_disable_on_ramps 1 diff --git a/data/physicsNexrun_old.cfg b/data/physicsNexrun_old.cfg index 96b8cf4ac..b30bf9960 100644 --- a/data/physicsNexrun_old.cfg +++ b/data/physicsNexrun_old.cfg @@ -29,3 +29,4 @@ sv_friction_on_land 0 sv_doublejump 1 sv_jumpspeedcap_min 0 sv_jumpspeedcap_max 1 +sv_doublejump_disable_on_ramps 1 diff --git a/data/physicsNoQWBunny.cfg b/data/physicsNoQWBunny.cfg index b79038a71..7db8bb5d0 100644 --- a/data/physicsNoQWBunny.cfg +++ b/data/physicsNoQWBunny.cfg @@ -25,3 +25,4 @@ sv_friction_on_land 0 sv_doublejump 0 sv_jumpspeedcap_min "" sv_jumpspeedcap_max "" +sv_doublejump_disable_on_ramps 0 diff --git a/data/physicsQ.cfg b/data/physicsQ.cfg index 5086fc5b7..1dd7a7798 100644 --- a/data/physicsQ.cfg +++ b/data/physicsQ.cfg @@ -26,3 +26,4 @@ sv_friction_on_land 0 sv_doublejump 0 sv_jumpspeedcap_min "" sv_jumpspeedcap_max "" +sv_doublejump_disable_on_ramps 0 diff --git a/data/physicsQ2.cfg b/data/physicsQ2.cfg index 036c31dfc..c0ae0b252 100644 --- a/data/physicsQ2.cfg +++ b/data/physicsQ2.cfg @@ -25,3 +25,4 @@ sv_friction_on_land 0 sv_doublejump 1 sv_jumpspeedcap_min "" sv_jumpspeedcap_max "" +sv_doublejump_disable_on_ramps 0 diff --git a/data/physicsQ2a.cfg b/data/physicsQ2a.cfg index cd25e47de..3a0a22cdf 100644 --- a/data/physicsQ2a.cfg +++ b/data/physicsQ2a.cfg @@ -26,3 +26,4 @@ sv_friction_on_land 0 sv_doublejump 1 sv_jumpspeedcap_min "" sv_jumpspeedcap_max "" +sv_doublejump_disable_on_ramps 0 diff --git a/data/physicsQ3.cfg b/data/physicsQ3.cfg index 02ae670aa..ac3f14319 100644 --- a/data/physicsQ3.cfg +++ b/data/physicsQ3.cfg @@ -25,3 +25,4 @@ sv_friction_on_land 0 sv_doublejump 0 sv_jumpspeedcap_min "" sv_jumpspeedcap_max "" +sv_doublejump_disable_on_ramps 0 diff --git a/data/physicsQBF.cfg b/data/physicsQBF.cfg index 668b83f3f..9527b0188 100644 --- a/data/physicsQBF.cfg +++ b/data/physicsQBF.cfg @@ -25,3 +25,4 @@ sv_friction_on_land 0 sv_doublejump 0 sv_jumpspeedcap_min "" sv_jumpspeedcap_max "" +sv_doublejump_disable_on_ramps 0 diff --git a/data/physicsQBFplus.cfg b/data/physicsQBFplus.cfg index 00b316f28..a676f098a 100644 --- a/data/physicsQBFplus.cfg +++ b/data/physicsQBFplus.cfg @@ -25,3 +25,4 @@ sv_friction_on_land 0 sv_doublejump 0 sv_jumpspeedcap_min "" sv_jumpspeedcap_max "" +sv_doublejump_disable_on_ramps 0 diff --git a/data/physicsSamual.cfg b/data/physicsSamual.cfg index e10478398..e382e9c2a 100644 --- a/data/physicsSamual.cfg +++ b/data/physicsSamual.cfg @@ -24,3 +24,4 @@ sv_friction_on_land 0 sv_doublejump 0 sv_jumpspeedcap_min "" sv_jumpspeedcap_max "" +sv_doublejump_disable_on_ramps 0 diff --git a/data/physicsWarsow.cfg b/data/physicsWarsow.cfg index fbe6dd3c9..4ab7e5edf 100644 --- a/data/physicsWarsow.cfg +++ b/data/physicsWarsow.cfg @@ -25,3 +25,4 @@ sv_friction_on_land 0 sv_doublejump 0 sv_jumpspeedcap_min "" sv_jumpspeedcap_max "" +sv_doublejump_disable_on_ramps 0 diff --git a/data/physicsWarsowClassicBunny.cfg b/data/physicsWarsowClassicBunny.cfg index d01068ec0..5b2bc013d 100644 --- a/data/physicsWarsowClassicBunny.cfg +++ b/data/physicsWarsowClassicBunny.cfg @@ -25,3 +25,4 @@ sv_friction_on_land 0 sv_doublejump 0 sv_jumpspeedcap_min "" sv_jumpspeedcap_max "" +sv_doublejump_disable_on_ramps 0 diff --git a/data/physicsWarsowDev.cfg b/data/physicsWarsowDev.cfg index 353326afb..e50322e5e 100644 --- a/data/physicsWarsowDev.cfg +++ b/data/physicsWarsowDev.cfg @@ -25,3 +25,4 @@ sv_friction_on_land 0 sv_doublejump 0 sv_jumpspeedcap_min "" sv_jumpspeedcap_max "" +sv_doublejump_disable_on_ramps 0 diff --git a/data/qcsrc/server/cl_physics.qc b/data/qcsrc/server/cl_physics.qc index c8786abfe..35f37e23b 100644 --- a/data/qcsrc/server/cl_physics.qc +++ b/data/qcsrc/server/cl_physics.qc @@ -822,10 +822,16 @@ void SV_PlayerPhysics() { if(sv_doublejump) { - self.flags &~= FL_ONGROUND; tracebox(self.origin + '0 0 0.01', self.mins, self.maxs, self.origin - '0 0 0.01', MOVE_NORMAL, self); - if(trace_fraction < 1 && trace_plane_normal_z > 0.7) - self.flags |= FL_ONGROUND; + if(trace_fraction < 1 && trace_plane_normal_z < 0.98 && cvar("sv_doublejump_disable_on_ramps")) { + // don't do doublejumps on ramps to preserve old nexuiz ramjump style + // print("Trace plane normal z: ", ftos(trace_plane_normal_z), ", disabling dj!\n"); + } + else { // perform doublejump + self.flags &~= FL_ONGROUND; + if(trace_fraction < 1 && trace_plane_normal_z > 0.7) + self.flags |= FL_ONGROUND; + } } if (self.BUTTON_JUMP) -- 2.39.2