diff options
Diffstat (limited to 'init.lua')
-rw-r--r-- | init.lua | 9 |
1 files changed, 5 insertions, 4 deletions
@@ -126,14 +126,15 @@ minetest.register_entity(":__builtin:item", { local vec = get_flowing_dir(self) if vec then + local v = self.object:getvelocity() if vec and vec.x-p.x > 0 then - self.object:setvelocity({x=0.5,y=0,z=0}) + self.object:setvelocity({x=0.5,y=v.y,z=0}) elseif vec and vec.x-p.x < 0 then - self.object:setvelocity({x=-0.5,y=0,z=0}) + self.object:setvelocity({x=-0.5,y=v.y,z=0}) elseif vec and vec.z-p.z > 0 then - self.object:setvelocity({x=0,y=0,z=0.5}) + self.object:setvelocity({x=0,y=v.y,z=0.5}) elseif vec and vec.z-p.z < 0 then - self.object:setvelocity({x=0,y=0,z=-0.5}) + self.object:setvelocity({x=0,y=v.y,z=-0.5}) end self.object:setacceleration({x=0, y=-10, z=0}) self.physical_state = true |