Boats update and leever fix

master
D00Med 2016-12-25 12:52:05 +10:00
parent bd840b2591
commit 0e6e51e878
2 changed files with 17 additions and 12 deletions

View File

@ -109,18 +109,19 @@ function boat.on_punch(self, puncher)
end
if not self.driver then
self.removed = true
local inv = puncher:get_inventory()
if not minetest.setting_getbool("creative_mode")
or not inv:contains_item("main", "boats:boat") then
local leftover = inv:add_item("main", "boats:boat")
-- if no room in inventory add a replacement boat to the world
if not leftover:is_empty() then
minetest.add_item(self.object:getpos(), leftover)
end
end
-- delay remove to ensure player is detached
minetest.after(0.1, function()
self.object:remove()
end)
if not minetest.setting_getbool("creative_mode") then
local inv = puncher:get_inventory()
if inv:room_for_item("main", "boats:boat") then
inv:add_item("main", "boats:boat")
else
minetest.add_item(self.object:getpos(), "boats:boat")
end
end
end
end
@ -232,9 +233,11 @@ minetest.register_craftitem("boats:boat", {
end
pointed_thing.under.y = pointed_thing.under.y + 0.5
boat = minetest.add_entity(pointed_thing.under, "boats:boat")
boat:setyaw(placer:get_look_horizontal())
if not minetest.setting_getbool("creative_mode") then
itemstack:take_item()
if boat then
boat:setyaw(placer:get_look_horizontal())
if not minetest.setting_getbool("creative_mode") then
itemstack:take_item()
end
end
return itemstack
end,

View File

@ -27,6 +27,7 @@ mobs:register_mob("mobs_loz:leever", {
do_custom = function(self)
if not self.active then
minetest.after(10, function()
if self.object ~= nil and self.object:getpos() ~= nil then
local pos = self.object:getpos()
minetest.add_particlespawner({
amount = 10,
@ -48,6 +49,7 @@ mobs:register_mob("mobs_loz:leever", {
minetest.after(1, function()
self.object:remove()
end)
end
end)
self.active = true
end
@ -71,7 +73,7 @@ mobs:register_mob("mobs_loz:leever", {
walk_start = 3,
walk_end = 16,
run_start = 3,
run_end = 16,
run_end = 17,
punch_start = 3,
punch_end = 16,
},