ParticleSystem should also override `onExit` to unschedule update since in `onEnter`, it will be scheduled again. Otherwise, it'll trigger an assert.
User object has to be released before others, since userObject may have a weak reference of this node.
It may invoke `node->stopAllAction();` while `_actionManager` is null if the next line is after `CC_SAFE_RELEASE_NULL(_actionManager)`.
Merge pull request #6040 from dumganhar/develop

Two fixes: 1) ParticleSystem should also override onExit to unschedule update since in onEnter, it will be scheduled again. Otherwise, it'll trigger an assert.
2) User object has to be released before others, since userObject may have a weak reference of this node. It may invoke node->stopAllAction(); while _actionManager is null if the next line is after CC_SAFE_RELEASE_NULL(_actionManager).