Compare commits
5 Commits
c9ef93e758
...
64626b15c8
Author | SHA1 | Date |
---|---|---|
PilzAdam | 64626b15c8 | |
PilzAdam | 7c7d3e2292 | |
Zeg9 | 7c071a45f5 | |
PilzAdam | 913540214c | |
PilzAdam | 60b15341fa |
21
init.lua
21
init.lua
|
@ -78,7 +78,7 @@ minetest.register_entity(":__builtin:item", {
|
|||
end,
|
||||
|
||||
on_step = function(self, dtime)
|
||||
local time = minetest.setting_get("remove_items")
|
||||
local time = tonumber(minetest.setting_get("remove_items"))
|
||||
if not time then
|
||||
time = 300
|
||||
end
|
||||
|
@ -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
|
||||
|
@ -170,8 +171,16 @@ minetest.register_entity(":__builtin:item", {
|
|||
|
||||
on_punch = function(self, hitter)
|
||||
if self.itemstring ~= '' then
|
||||
hitter:get_inventory():add_item("main", self.itemstring)
|
||||
local left = hitter:get_inventory():add_item("main", self.itemstring)
|
||||
if not left:is_empty() then
|
||||
self.itemstring = left:to_string()
|
||||
return
|
||||
end
|
||||
end
|
||||
self.object:remove()
|
||||
end,
|
||||
})
|
||||
|
||||
if minetest.setting_get("log_mods") then
|
||||
minetest.log("action", "builtin_item loaded")
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue