diff --git a/api.lua b/api.lua index 43d7dc1..9be35bc 100644 --- a/api.lua +++ b/api.lua @@ -1262,31 +1262,35 @@ function XBowsEntityDef.on_step(self, selfObj, dtime) ---Wiggle local rotation = selfObj.object:get_rotation() - local wiggle_timer_const = 0.05 - local wiggle_timer = 0 - for i = 1, 3 do - local rotx = rotation.x + math.random(10, 20) / 100 + if rotation then + local wiggle_timer_const = 0.05 + local wiggle_timer = 0 - if i % 2 == 0 then - rotx = rotation.x - math.random(10, 20) / 100 + for i = 1, 3 do + local rotx = rotation.x + math.random(10, 20) / 100 + + if i % 2 == 0 then + rotx = rotation.x - math.random(10, 20) / 100 + end + + local _rotation = { + x = rotx, + y = rotation.y, + z = rotation.z + } + + if i == 3 then + _rotation = rotation + end + + wiggle_timer = wiggle_timer + wiggle_timer_const + + minetest.after(wiggle_timer, function(v_object) + selfObj.object:set_rotation(_rotation) + end, selfObj.object, wiggle_timer) end - local _rotation = { - x = rotx, - y = rotation.y, - z = rotation.z - } - - if i == 3 then - _rotation = rotation - end - - wiggle_timer = wiggle_timer + wiggle_timer_const - - minetest.after(wiggle_timer, function(v_object) - selfObj.object:set_rotation(_rotation) - end, selfObj.object, wiggle_timer) end ---API callbacks