Yeah I have same.
Logic example:
Every 2-5 sec recieve incoming message, after receive - start animation. If previous animation not finished, next logic not working
function y_done(self, url, property)
local target_x = 13
for i=1,10 do
if i < 10 then
go.animate("/psychoState/psychoStateBarSingle"..tostring(i), "position.x", go.PLAYBACK_ONCE_FORWARD, target_x, go.EASING_INOUTBACK, 1, 0)
else
go.animate("/psychoState/psychoStateBarSingle"..tostring(i), "position.x", go.PLAYBACK_ONCE_FORWARD, target_x, go.EASING_INOUTBACK, 1, 0, x_done)
end
go.animate("/psychoState/psychoStateBarSingleEmpty"..tostring(i), "position.x", go.PLAYBACK_ONCE_FORWARD, target_x, go.EASING_INOUTBACK, 1, 0)
end
end
function x_done(self, url, property)
--something code
end
function on_message(self, message_id, message, sender)
if message_id == hash("change_state") then
self.newChange = true
if type(message.stateParamsChange) == "table" then
self.stateParamsChange[#self.stateParamsChange+1] = message.stateParamsChange
else
self.stateParamsChange = {}
end
go.animate("/psychoState/psychoPortraitState", "position.y", go.PLAYBACK_ONCE_FORWARD, 186, go.EASING_INOUTBACK, 0.5, 0, y_done)
end
end
Animation in on_mesage function work good(it ended first) and y_done function ended everytime, but animation in x_done function sometimes not ended and x_done not executed