Prevent new animation till previous is ended, refactor