From 620ca56b952037860b750e87e930754fd1d7b002 Mon Sep 17 00:00:00 2001 From: stujones11 Date: Sat, 16 Jan 2016 18:03:13 +0000 Subject: Fix regression with unloaded carts --- railcart/railcart.lua | 6 ++++-- 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, }, }, -- cgit v1.2.3