based on cocos2d-js3.2