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 only currently implemented alternative movement is linear (value 1)
+ if (traveltime < 0.15 || self.platmovetype == 1)
{
self.velocity = delta * (1/traveltime); // QuakeC doesn't allow vector/float division
self.nextthink = self.ltime + traveltime;
controller.classname = "SUB_CalcMove_controller";
controller.owner = self;
controller.origin = self.origin; // starting point
- controller.finaldest = (tdest + '0 0 1'); // where do we want to end? Offset to overshoot a bit.
+ controller.finaldest = (tdest + '0 0 0.125'); // where do we want to end? Offset to overshoot a bit.
controller.destvec = delta;
controller.animstate_starttime = time;
controller.animstate_endtime = time + traveltime;