From fcf97f114f6111ab52fd3ecea80978589f2a8377 Mon Sep 17 00:00:00 2001 From: WillConker Date: Wed, 5 Jun 2024 20:10:57 +0000 Subject: [PATCH] Give piglins 15-second transformation delay in overworld --- mods/ENTITIES/mobs_mc/piglin.lua | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/mods/ENTITIES/mobs_mc/piglin.lua b/mods/ENTITIES/mobs_mc/piglin.lua index e81782b1c..9ecfc6b2c 100644 --- a/mods/ENTITIES/mobs_mc/piglin.lua +++ b/mods/ENTITIES/mobs_mc/piglin.lua @@ -102,13 +102,23 @@ local piglin = { self.weapon = self.base_texture[2] self.gold_items = 0 end, - do_custom = function(self) + do_custom = function(self, dtime) if self.object:get_pos().y > mcl_vars.mg_overworld_min then - local zog = minetest.add_entity(self.object:get_pos(), "mobs_mc:zombified_piglin") - zog:set_rotation(self.object:get_rotation()) - self.object:remove() - return - elseif self.trading == true then + if self._zombie_transform_timer == nil then + self._zombie_transform_timer = 15 + elseif self._zombie_transform_timer <= 0 then + local zog = minetest.add_entity(self.object:get_pos(), "mobs_mc:zombified_piglin") + zog:set_rotation(self.object:get_rotation()) + mcl_potions.give_effect("nausea", zog, 1, 10) + self.object:remove() + return + else + self._zombie_transform_timer = self._zombie_transform_timer - dtime + end + else + self._zombie_transform_timer = nil + end + if self.trading == true then self.state = "trading" self.object:set_bone_position("Arm_Right_Pitch_Control", vector.new(-3,5.785,0), vector.new(20,-20,18)) self.object:set_bone_position("Head", vector.new(0,6.3,0), vector.new(-40,0,0))