diff options
author | stujones11 <stujones111@gmail.com> | 2016-01-16 18:03:13 +0000 |
---|---|---|
committer | stujones11 <stujones111@gmail.com> | 2016-01-16 18:07:46 +0000 |
commit | 620ca56b952037860b750e87e930754fd1d7b002 (patch) | |
tree | 60f8180891af42cfa29375126a5aa130858c5636 | |
parent | aee5c31362ca329ab71998d8c43588dba5113e04 (diff) |
Fix regression with unloaded carts
-rw-r--r-- | railcart/railcart.lua | 6 | ||||
-rw-r--r-- | railtrack/init.lua | 4 |
2 files changed, 6 insertions, 4 deletions
diff --git a/railcart/railcart.lua b/railcart/railcart.lua index bdd9a05..68efda5 100644 --- a/railcart/railcart.lua +++ b/railcart/railcart.lua @@ -200,8 +200,10 @@ function railcart:update(cart, time, object) accel = RAILTRACK_ACCEL_UP end accel = cart.accel or accel - local d = dist - RAILCART_SNAP_DISTANCE - local dt = railcart:get_delta_time(speed, accel, d) + if object then + dist = math.max(dist - RAILCART_SNAP_DISTANCE, 0) + end + local dt = railcart:get_delta_time(speed, accel, dist) if dt < time then time = dt end diff --git a/railtrack/init.lua b/railtrack/init.lua index 353249f..1906359 100644 --- a/railtrack/init.lua +++ b/railtrack/init.lua @@ -29,7 +29,7 @@ railtrack:register_rail("railtrack:powerrail", { railtrack:set_acceleration(pos, 4) end, action_off = function(pos, node) - railtrack:set_acceleration(pos, RAILTRACK_FRICTION_FLAT) + railtrack:set_acceleration(pos, nil) end, }, }, @@ -47,7 +47,7 @@ railtrack:register_rail("railtrack:brakerail", { railtrack:set_acceleration(pos, -4) end, action_off = function(pos, node) - railtrack:set_acceleration(pos, RAILTRACK_FRICTION_FLAT) + railtrack:set_acceleration(pos, nil) end, }, }, |