From 6f75932a4b91599c0ff71ec519c9b072e00fba51 Mon Sep 17 00:00:00 2001 From: ancientmarinerdev Date: Sat, 6 May 2023 23:56:34 +0100 Subject: [PATCH] Fix crash when parrot sits on shoulder --- mods/ENTITIES/mcl_mobs/effects.lua | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/mods/ENTITIES/mcl_mobs/effects.lua b/mods/ENTITIES/mcl_mobs/effects.lua index 699993979..4a4452f7f 100644 --- a/mods/ENTITIES/mcl_mobs/effects.lua +++ b/mods/ENTITIES/mcl_mobs/effects.lua @@ -348,7 +348,7 @@ function mob_class:check_head_swivel(dtime) who_are_you_looking_at (self) - local final_rotation = vector.new(0,0,0) + local final_rotation = vector.zero() local oldp,oldr = self.object:get_bone_position(self.head_swivel) if self._locked_object and (self._locked_object:is_player() or self._locked_object:get_luaentity()) and self._locked_object:get_hp() > 0 then @@ -360,8 +360,11 @@ function mob_class:check_head_swivel(dtime) _locked_object_eye_height = self._locked_object:get_properties().eye_height end if _locked_object_eye_height then + local self_rot = self.object:get_rotation() - if self.object:get_attach() then + -- If a mob is attached, should we really be messing with what they are looking at? + -- Should this be excluded? + if self.object:get_attach() and self.object:get_attach():get_rotation() then self_rot = self.object:get_attach():get_rotation() end