minetest.register_on_dieplayer( function (player)
local pos = player:getpos()
local x = math.random(0, 15)/10 - 1.25
local z = math.random(0, 15)/10 - 1.25
pos.x = pos.x + x
pos.z = pos.z + z
pos.y = pos.y + .25
local obj = minetest.add_item(pos, "default:dirt")
if obj then
obj:get_luaentity().collect = true
end
end )
minetest.register_on_dieplayer( function (player)
local dropItem = ""
if math.random(0,5) == 1 then
dropItem = "<special item>"
else
dropItem = "<common item>"
end
local pos = player:getpos()
local x = math.random(0, 15)/10 - 1.25
local z = math.random(0, 15)/10 - 1.25
pos.x = pos.x + x
pos.z = pos.z + z
pos.y = pos.y + .25
local obj = minetest.add_item(pos, dropItem)
if obj then
obj:get_luaentity().collect = true
end
end )
local drop = function(pos, istack)
--for i=1, istack:get_count() do
local obj = minetest.env:add_item(pos, istack:get_name() .. " " .. istack:get_count())
if obj ~= nil then
obj:get_luaentity().collect = true
local x = math.random(1, 5)
if math.random(1,2) == 1 then
x = -x
end
local z = math.random(1, 5)
if math.random(1,2) == 1 then
z = -z
end
obj:setvelocity({x=1/x, y=5, z=1/z})
-- FIXME this doesnt work for deactiveted objects
if minetest.setting_get("remove_items") and tonumber(minetest.setting_get("remove_items")) then
minetest.after(tonumber(minetest.setting_get("remove_items")), function(obj)
obj:remove()
end, obj)
end
end
--end
end
minetest.register_on_dieplayer(function(player)
if minetest.setting_getbool("creative_mode") then
return
end
local pos = player:getpos()
pos.x = math.floor(pos.x+0.5)
pos.y = math.floor(pos.y+0.5)
pos.z = math.floor(pos.z+0.5)
local param2 = minetest.dir_to_facedir(player:get_look_dir())
drop(pos, ItemStack("default:mese"))
end)
drop(pos, ItemStack("default:mese"))drop(pos, ItemStack("default:mese"))
drop(pos, ItemStack("default:dirt"))Users browsing this forum: No registered users and 6 guests