diff --git a/mods/ENTITIES/mobs_mc/hoglin+zoglin.lua b/mods/ENTITIES/mobs_mc/hoglin+zoglin.lua index 2100e1473..298229c2a 100644 --- a/mods/ENTITIES/mobs_mc/hoglin+zoglin.lua +++ b/mods/ENTITIES/mobs_mc/hoglin+zoglin.lua @@ -123,16 +123,47 @@ baby_hoglin.collisionbox = {-.3, -0.01, -.3, .3, 0.94, .3} baby_hoglin.xp_min = 20 baby_hoglin.xp_max = 20 baby_hoglin.visual_size = {x=hoglin.visual_size.x/2, y=hoglin.visual_size.y/2} -textures = { { +baby_hoglin.textures = { { "extra_mobs_hoglin.png", "extra_mobs_trans.png", } } +baby_hoglin.do_custom = function(self, dtime) + local current_dimension = mcl_worlds.pos_to_dimension(self.object:get_pos()) + if current_dimension == "overworld" or current_dimension == "end" then + self._zombie_transform_timer = (self._zombie_transform_timer or 0) + dtime + else + self._zombie_transform_timer = nil + end + if self._zombie_transform_timer >= 15 then + local zog = minetest.add_entity(self.object:get_pos(), "mobs_mc:baby_zoglin") + zog:set_rotation(self.object:get_rotation()) + mcl_potions.give_effect("nausea", zog, 1, 10) + self.object:remove() + return + end +end baby_hoglin.walk_velocity = 1.2 baby_hoglin.run_velocity = 2.4 baby_hoglin.child = 1 mcl_mobs.register_mob("mobs_mc:baby_hoglin", baby_hoglin) +local baby_zoglin = table.copy(zoglin) +baby_zoglin.description = S("Baby zoglin") +baby_zoglin.collisionbox = {-.3, -0.01, -.3, .3, 0.94, .3} +baby_zoglin.xp_min = 20 +baby_zoglin.xp_max = 20 +baby_zoglin.visual_size = {x=zoglin.visual_size.x/2, y=zoglin.visual_size.y/2} +baby_zoglin.textures = { { + "extra_mobs_zoglin.png", + "extra_mobs_trans.png", +} } +baby_zoglin.walk_velocity = 1.2 +baby_zoglin.run_velocity = 2.4 +baby_zoglin.child = 1 + +mcl_mobs.register_mob("mobs_mc:baby_zoglin", baby_zoglin) + -- Regular spawning in the Nether mcl_mobs:spawn_specific( "mobs_mc:hoglin",