From 6a5b2e6d1b5ddb45d996f0ffb15b622133475f8d Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Sat, 24 Jun 2017 15:31:46 +0200 Subject: [PATCH] Spawn chicks (instead of chickens) from eggs --- mods/ITEMS/mcl_throwing/throwable.lua | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/mods/ITEMS/mcl_throwing/throwable.lua b/mods/ITEMS/mcl_throwing/throwable.lua index 7dea73ecd..f1810748c 100644 --- a/mods/ITEMS/mcl_throwing/throwable.lua +++ b/mods/ITEMS/mcl_throwing/throwable.lua @@ -131,11 +131,27 @@ local egg_on_step = function(self, dtime) if self._lastpos.x~=nil then if (def and def.walkable) or not def then -- 1/8 chance to spawn a chick - -- FIXME: Spawn chicks instead of chickens -- FIXME: Chicks have a quite good chance to spawn in walls local r = math.random(1,8) + + -- Turn given object into a child + local make_child= function(object) + local ent = object:get_luaentity() + object:set_properties({ + visual_size = { x = ent.base_size.x/2, y = ent.base_size.y/2 }, + collisionbox = { + ent.base_colbox[1]/2, + ent.base_colbox[2]/2, + ent.base_colbox[3]/2, + ent.base_colbox[4]/2, + ent.base_colbox[5]/2, + ent.base_colbox[6]/2, + } + }) + ent.child = true + end if r == 1 then - minetest.add_entity(self._lastpos, "mobs_mc:chicken") + make_child(minetest.add_entity(self._lastpos, "mobs_mc:chicken")) -- BONUS ROUND: 1/32 chance to spawn 3 additional chicks local r = math.random(1,32) @@ -147,7 +163,7 @@ local egg_on_step = function(self, dtime) } for o=1, 3 do local pos = vector.add(self._lastpos, offsets[o]) - minetest.add_entity(pos, "mobs_mc:chicken") + make_child(minetest.add_entity(pos, "mobs_mc:chicken")) end end end