Merge remote-tracking branch 'origin/master' into testing

This commit is contained in:
kay27 2021-12-05 04:31:17 +04:00
commit 3268a94b20
4 changed files with 16 additions and 12 deletions

View File

@ -821,9 +821,8 @@ function mobs.mob_step(self, dtime)
self.lifetimer = self.lifetimer - dtime self.lifetimer = self.lifetimer - dtime
if self.lifetimer <= 0 then if self.lifetimer <= 0 then
self.lifetimer = self.lifetimer_reset self.lifetimer = self.lifetimer_reset
if not mobs.check_for_player_within_area(self, 64) then if mobs.can_despawn(self) then
--print("removing in MAIN LOGIC!") self.object:remove()
self.object:remove()
return return
end end
end end

View File

@ -122,7 +122,10 @@ mobs.death_logic = function(self, dtime)
if self.death_animation_timer >= 1.25 then if self.death_animation_timer >= 1.25 then
item_drop(self,false,1) item_drop(self,false,1)
mobs.death_effect(self) mobs.death_effect(self)
mcl_experience.throw_experience(self.object:get_pos(), math_random(self.xp_min, self.xp_max)) mcl_experience.throw_experience(self.object:get_pos(), math_random(self.xp_min, self.xp_max))
if self.on_die then
self.on_die(self, self.object:get_pos())
end
self.object:remove() self.object:remove()
return return
end end
@ -155,4 +158,4 @@ mobs.death_logic = function(self, dtime)
if self.pause_timer <= 0 then if self.pause_timer <= 0 then
mobs.set_velocity(self,0) mobs.set_velocity(self,0)
end end
end end

View File

@ -5,16 +5,18 @@ local minetest_settings = minetest.settings
-- CMI support check -- CMI support check
local use_cmi = minetest.global_exists("cmi") local use_cmi = minetest.global_exists("cmi")
mobs.can_despawn = function(self)
return (not self.tamed and not self.bred and not self.nametag and
not mobs.check_for_player_within_area(self, 64));
end
-- get entity staticdata -- get entity staticdata
mobs.mob_staticdata = function(self) mobs.mob_staticdata = function(self)
--despawn mechanism --despawn mechanism
--don't despawned tamed or bred mobs --don't despawned tamed or bred mobs
if not self.tamed and not self.bred then if mobs.can_despawn(self) then
if not mobs.check_for_player_within_area(self, 64) then self.object:remove()
--print("removing SERIALIZED!") return
self.object:remove()
return
end
end end
self.remove_ok = true self.remove_ok = true

View File

@ -257,7 +257,7 @@ minetest.register_tool("mcl_farming:hoe_diamond", {
hoey = { speed = 8, level = 5, uses = 1562 } hoey = { speed = 8, level = 5, uses = 1562 }
}, },
_mcl_upgradable = true, _mcl_upgradable = true,
_mcl_upgrade_item = "mcl_tools:hoe_netherite" _mcl_upgrade_item = "mcl_farming:hoe_netherite"
}) })
minetest.register_craft({ minetest.register_craft({