From bc328f49929607e348388f694c7860453d1a9025 Mon Sep 17 00:00:00 2001 From: Maik Merten Date: Tue, 25 Jan 2011 19:33:17 +0100 Subject: [PATCH] add .float platmovetype, so platform entities can opt to choose traditional linear movement instead of the fancy new smoothly accelerating movement. --- qcsrc/server/defs.qh | 1 + qcsrc/server/g_subs.qc | 9 ++++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/qcsrc/server/defs.qh b/qcsrc/server/defs.qh index 970c86af4..16c76c11e 100644 --- a/qcsrc/server/defs.qh +++ b/qcsrc/server/defs.qh @@ -77,6 +77,7 @@ float maxclients; //.float style; //.float skill; .float sounds; +.float platmovetype; .string killtarget; diff --git a/qcsrc/server/g_subs.qc b/qcsrc/server/g_subs.qc index 79369b74b..6c4089c83 100644 --- a/qcsrc/server/g_subs.qc +++ b/qcsrc/server/g_subs.qc @@ -247,9 +247,12 @@ void SUB_CalcMove (vector tdest, float tspeed, void() func) return; } - // very short animations don't really show off the effect - // of controlled animation, so let's just use linear movement - if (traveltime < 0.15) + // Very short animations don't really show off the effect + // of controlled animation, so let's just use linear movement. + // Alternatively entities can choose to specify non-controlled movement. + // The default, controlled movement, is value 0, the only currently + // implemented alternative movement is linear, which is any other value. + if (traveltime < 0.15 || self.platmovetype) { self.velocity = delta * (1/traveltime); // QuakeC doesn't allow vector/float division self.nextthink = self.ltime + traveltime; -- 2.39.2