ccb 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (335) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.txt +20 -0
  3. data/README.md +31 -0
  4. data/bin/ccb +4 -0
  5. data/lib/ccb/builder/project_builder.rb +14 -0
  6. data/lib/ccb/builder/scene_builder.rb +9 -0
  7. data/lib/ccb/builder/templates/project/GameConfig.js.tt +21 -0
  8. data/lib/ccb/builder/templates/project/_cocos-project.json +4 -0
  9. data/lib/ccb/builder/templates/project/folder/CMakeLists.txt +295 -0
  10. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/Base64Images.js +32 -0
  11. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/CCBoot.js +2271 -0
  12. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/CCDebugger.js +336 -0
  13. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/actions/CCAction.js +694 -0
  14. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/actions/CCActionCamera.js +293 -0
  15. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/actions/CCActionCatmullRom.js +605 -0
  16. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/actions/CCActionEase.js +3681 -0
  17. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/actions/CCActionInstant.js +757 -0
  18. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/actions/CCActionInterval.js +3554 -0
  19. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/actions/CCActionTween.js +166 -0
  20. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/actions3d/CCActionGrid.js +372 -0
  21. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/actions3d/CCActionGrid3D.js +1257 -0
  22. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/actions3d/CCActionPageTurn3D.js +113 -0
  23. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/actions3d/CCActionTiledGrid.js +1289 -0
  24. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/audio/CCAudio.js +1024 -0
  25. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/clipping-nodes/CCClippingNode.js +224 -0
  26. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/clipping-nodes/CCClippingNodeCanvasRenderCmd.js +227 -0
  27. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/clipping-nodes/CCClippingNodeWebGLRenderCmd.js +226 -0
  28. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/compression/ZipUtils.js +82 -0
  29. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/compression/base64.js +95 -0
  30. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/compression/gzip.js +731 -0
  31. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/compression/zlib.min.js +55 -0
  32. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/CCActionManager.js +378 -0
  33. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/CCCamera.js +290 -0
  34. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/CCConfiguration.js +294 -0
  35. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/CCDirector.js +1019 -0
  36. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/CCDirectorWebGL.js +329 -0
  37. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/CCDrawingPrimitivesCanvas.js +438 -0
  38. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/CCDrawingPrimitivesWebGL.js +464 -0
  39. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/CCScheduler.js +744 -0
  40. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/base-nodes/BaseNodesPropertyDefine.js +127 -0
  41. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/base-nodes/CCAtlasNode.js +294 -0
  42. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/base-nodes/CCAtlasNodeCanvasRenderCmd.js +138 -0
  43. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/base-nodes/CCAtlasNodeWebGLRenderCmd.js +145 -0
  44. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/base-nodes/CCNode.js +2386 -0
  45. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/base-nodes/CCNodeCanvasRenderCmd.js +504 -0
  46. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/base-nodes/CCNodeWebGLRenderCmd.js +254 -0
  47. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/cocoa/CCAffineTransform.js +259 -0
  48. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/cocoa/CCGeometry.js +327 -0
  49. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/event-manager/CCEvent.js +449 -0
  50. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/event-manager/CCEventExtension.js +126 -0
  51. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/event-manager/CCEventListener.js +519 -0
  52. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/event-manager/CCEventManager.js +1025 -0
  53. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/event-manager/CCTouch.js +175 -0
  54. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/labelttf/CCLabelTTF.js +829 -0
  55. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/labelttf/CCLabelTTFCanvasRenderCmd.js +420 -0
  56. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/labelttf/CCLabelTTFWebGLRenderCmd.js +101 -0
  57. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/labelttf/LabelTTFPropertyDefine.js +88 -0
  58. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/layers/CCLayer.js +642 -0
  59. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/layers/CCLayerCanvasRenderCmd.js +434 -0
  60. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/layers/CCLayerWebGLRenderCmd.js +248 -0
  61. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/platform/CCClass.js +333 -0
  62. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/platform/CCCommon.js +303 -0
  63. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/platform/CCConfig.js +303 -0
  64. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/platform/CCEGLView.js +1245 -0
  65. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/platform/CCInputExtension.js +135 -0
  66. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/platform/CCInputManager.js +616 -0
  67. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/platform/CCLoaders.js +142 -0
  68. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/platform/CCMacro.js +830 -0
  69. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/platform/CCSAXParser.js +160 -0
  70. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/platform/CCScreen.js +155 -0
  71. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/platform/CCTypes.js +374 -0
  72. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/platform/CCTypesPropertyDefine.js +165 -0
  73. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/platform/CCTypesWebGL.js +689 -0
  74. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/platform/CCVisibleRect.js +100 -0
  75. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/platform/miniFramework.js +264 -0
  76. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/renderer/RendererCanvas.js +274 -0
  77. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/renderer/RendererWebGL.js +137 -0
  78. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/scenes/CCLoaderScene.js +149 -0
  79. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/scenes/CCScene.js +62 -0
  80. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/sprites/CCAnimation.js +477 -0
  81. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/sprites/CCAnimationCache.js +213 -0
  82. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/sprites/CCBakeSprite.js +71 -0
  83. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/sprites/CCSprite.js +1014 -0
  84. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/sprites/CCSpriteBatchNode.js +676 -0
  85. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/sprites/CCSpriteBatchNodeCanvasRenderCmd.js +101 -0
  86. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/sprites/CCSpriteBatchNodeWebGLRenderCmd.js +243 -0
  87. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/sprites/CCSpriteCanvasRenderCmd.js +518 -0
  88. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/sprites/CCSpriteFrame.js +420 -0
  89. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/sprites/CCSpriteFrameCache.js +341 -0
  90. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/sprites/CCSpriteWebGLRenderCmd.js +493 -0
  91. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/sprites/SpritesPropertyDefine.js +67 -0
  92. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/support/CCPointExtension.js +515 -0
  93. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/support/CCVertex.js +170 -0
  94. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/support/TransformUtils.js +62 -0
  95. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/textures/CCTexture2D.js +455 -0
  96. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/textures/CCTextureAtlas.js +653 -0
  97. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/textures/CCTextureCache.js +371 -0
  98. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/textures/TexturesPropertyDefine.js +221 -0
  99. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/textures/TexturesWebGL.js +899 -0
  100. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/core/utils/BinaryLoader.js +151 -0
  101. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/effects/CCGrabber.js +110 -0
  102. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/effects/CCGrid.js +737 -0
  103. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/kazmath/aabb.js +68 -0
  104. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/kazmath/gl/mat4stack.js +59 -0
  105. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/kazmath/gl/matrix.js +169 -0
  106. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/kazmath/mat3.js +329 -0
  107. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/kazmath/mat4.js +810 -0
  108. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/kazmath/plane.js +184 -0
  109. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/kazmath/quaternion.js +497 -0
  110. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/kazmath/ray2.js +163 -0
  111. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/kazmath/utility.js +76 -0
  112. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/kazmath/vec2.js +107 -0
  113. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/kazmath/vec3.js +205 -0
  114. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/kazmath/vec4.js +158 -0
  115. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/labels/CCLabelAtlas.js +239 -0
  116. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/labels/CCLabelAtlasCanvasRenderCmd.js +95 -0
  117. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/labels/CCLabelAtlasWebGLRenderCmd.js +132 -0
  118. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/labels/CCLabelBMFont.js +958 -0
  119. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/labels/CCLabelBMFontCanvasRenderCmd.js +142 -0
  120. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/labels/CCLabelBMFontWebGLRenderCmd.js +87 -0
  121. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/menus/CCMenu.js +600 -0
  122. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/menus/CCMenuItem.js +1422 -0
  123. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/motion-streak/CCMotionStreak.js +517 -0
  124. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/motion-streak/CCMotionStreakWebGLRenderCmd.js +66 -0
  125. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/node-grid/CCNodeGrid.js +129 -0
  126. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/node-grid/CCNodeGridWebGLRenderCmd.js +98 -0
  127. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/parallax/CCParallaxNode.js +252 -0
  128. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/parallax/CCParallaxNodeRenderCmd.js +69 -0
  129. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/particle/CCPNGReader.js +330 -0
  130. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/particle/CCParticleBatchNode.js +527 -0
  131. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/particle/CCParticleBatchNodeCanvasRenderCmd.js +38 -0
  132. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/particle/CCParticleBatchNodeWebGLRenderCmd.js +74 -0
  133. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/particle/CCParticleExamples.js +1006 -0
  134. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/particle/CCParticleSystem.js +2294 -0
  135. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/particle/CCParticleSystemCanvasRenderCmd.js +217 -0
  136. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/particle/CCParticleSystemWebGLRenderCmd.js +402 -0
  137. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/particle/CCTIFFReader.js +692 -0
  138. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/physics/CCPhysicsDebugNode.js +212 -0
  139. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/physics/CCPhysicsDebugNodeCanvasRenderCmd.js +52 -0
  140. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/physics/CCPhysicsDebugNodeWebGLRenderCmd.js +53 -0
  141. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/physics/CCPhysicsSprite.js +447 -0
  142. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/physics/CCPhysicsSpriteCanvasRenderCmd.js +93 -0
  143. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/physics/CCPhysicsSpriteWebGLRenderCmd.js +87 -0
  144. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/progress-timer/CCActionProgressTimer.js +227 -0
  145. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/progress-timer/CCProgressTimer.js +345 -0
  146. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/progress-timer/CCProgressTimerCanvasRenderCmd.js +270 -0
  147. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/progress-timer/CCProgressTimerWebGLRenderCmd.js +486 -0
  148. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/render-texture/CCRenderTexture.js +395 -0
  149. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/render-texture/CCRenderTextureCanvasRenderCmd.js +105 -0
  150. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/render-texture/CCRenderTextureWebGLRenderCmd.js +367 -0
  151. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/shaders/CCGLProgram.js +767 -0
  152. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/shaders/CCGLStateCache.js +340 -0
  153. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/shaders/CCShaderCache.js +301 -0
  154. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/shaders/CCShaders.js +280 -0
  155. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/shape-nodes/CCDrawNode.js +940 -0
  156. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/shape-nodes/CCDrawNodeCanvasRenderCmd.js +129 -0
  157. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/shape-nodes/CCDrawNodeWebGLRenderCmd.js +41 -0
  158. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/text-input/CCIMEDispatcher.js +526 -0
  159. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/text-input/CCTextFieldTTF.js +472 -0
  160. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/tilemap/CCTGAlib.js +437 -0
  161. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/tilemap/CCTMXLayer.js +914 -0
  162. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/tilemap/CCTMXLayerCanvasRenderCmd.js +232 -0
  163. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/tilemap/CCTMXLayerWebGLRenderCmd.js +67 -0
  164. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/tilemap/CCTMXObjectGroup.js +146 -0
  165. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/tilemap/CCTMXTiledMap.js +479 -0
  166. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/tilemap/CCTMXXMLParser.js +950 -0
  167. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/transitions/CCTransition.js +1971 -0
  168. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/transitions/CCTransitionPageTurn.js +152 -0
  169. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/cocos2d/transitions/CCTransitionProgress.js +458 -0
  170. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccb-reader/CCBAnimationManager.js +770 -0
  171. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccb-reader/CCBKeyframe.js +60 -0
  172. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccb-reader/CCBReader.js +1129 -0
  173. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccb-reader/CCBReaderUtil.js +61 -0
  174. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccb-reader/CCBRelativePositioning.js +90 -0
  175. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccb-reader/CCBSequence.js +114 -0
  176. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccb-reader/CCBValue.js +81 -0
  177. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccb-reader/CCControlLoader.js +318 -0
  178. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccb-reader/CCNodeLoader.js +905 -0
  179. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccb-reader/CCNodeLoaderLibrary.js +101 -0
  180. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccb-reader/CCSpriteLoader.js +544 -0
  181. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccpool/CCPool.js +146 -0
  182. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/base-classes/CCProtectedNode.js +305 -0
  183. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/base-classes/CCProtectedNodeCanvasRenderCmd.js +246 -0
  184. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/base-classes/CCProtectedNodeWebGLRenderCmd.js +159 -0
  185. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/base-classes/UIScale9Sprite.js +1105 -0
  186. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/base-classes/UIScale9SpriteCanvasRenderCmd.js +142 -0
  187. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/base-classes/UIScale9SpriteWebGLRenderCmd.js +129 -0
  188. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/base-classes/UIWidget.js +2059 -0
  189. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/base-classes/UIWidgetRenderCmd.js +100 -0
  190. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/layouts/UIHBox.js +80 -0
  191. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/layouts/UILayout.js +1558 -0
  192. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/layouts/UILayoutCanvasRenderCmd.js +179 -0
  193. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/layouts/UILayoutComponent.js +585 -0
  194. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/layouts/UILayoutManager.js +457 -0
  195. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/layouts/UILayoutParameter.js +576 -0
  196. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/layouts/UILayoutWebGLRenderCmd.js +240 -0
  197. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/layouts/UIRelativeBox.js +79 -0
  198. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/layouts/UIVBox.js +79 -0
  199. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/system/CocosGUI.js +62 -0
  200. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/system/UIHelper.js +164 -0
  201. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/uiwidgets/UIButton.js +987 -0
  202. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/uiwidgets/UICheckBox.js +737 -0
  203. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/uiwidgets/UIImageView.js +337 -0
  204. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/uiwidgets/UILoadingBar.js +432 -0
  205. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/uiwidgets/UIRichText.js +579 -0
  206. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/uiwidgets/UISlider.js +762 -0
  207. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/uiwidgets/UIText.js +512 -0
  208. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/uiwidgets/UITextAtlas.js +229 -0
  209. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/uiwidgets/UITextBMFont.js +216 -0
  210. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/uiwidgets/UITextField.js +915 -0
  211. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/uiwidgets/scroll-widget/UIListView.js +602 -0
  212. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/uiwidgets/scroll-widget/UIPageView.js +657 -0
  213. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/ccui/uiwidgets/scroll-widget/UIScrollView.js +1884 -0
  214. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/CocoStudio.js +68 -0
  215. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/action/CCActionFrame.js +528 -0
  216. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/action/CCActionManager.js +112 -0
  217. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/action/CCActionNode.js +417 -0
  218. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/action/CCActionObject.js +263 -0
  219. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/armature/CCArmature.js +579 -0
  220. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/armature/CCArmatureCanvasRenderCmd.js +190 -0
  221. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/armature/CCArmatureWebGLRenderCmd.js +167 -0
  222. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/armature/CCBone.js +711 -0
  223. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/armature/animation/CCArmatureAnimation.js +669 -0
  224. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/armature/animation/CCProcessBase.js +365 -0
  225. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/armature/animation/CCTween.js +448 -0
  226. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/armature/datas/CCDatas.js +807 -0
  227. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/armature/display/CCDecorativeDisplay.js +118 -0
  228. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/armature/display/CCDisplayFactory.js +220 -0
  229. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/armature/display/CCDisplayManager.js +465 -0
  230. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/armature/display/CCSkin.js +215 -0
  231. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/armature/display/CCSkinCanvasRenderCmd.js +58 -0
  232. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/armature/display/CCSkinWebGLRenderCmd.js +146 -0
  233. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/armature/physics/CCColliderDetector.js +397 -0
  234. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/armature/utils/CCArmatureDataManager.js +325 -0
  235. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/armature/utils/CCArmatureDefine.js +45 -0
  236. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/armature/utils/CCDataReaderHelper.js +1223 -0
  237. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/armature/utils/CCSpriteFrameCacheHelper.js +68 -0
  238. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/armature/utils/CCTransformHelp.js +183 -0
  239. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/armature/utils/CCTweenFunction.js +501 -0
  240. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/armature/utils/CCUtilMath.js +69 -0
  241. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/components/CCComAttribute.js +210 -0
  242. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/components/CCComAudio.js +285 -0
  243. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/components/CCComController.js +76 -0
  244. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/components/CCComRender.js +91 -0
  245. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/components/CCComponent.js +136 -0
  246. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/components/CCComponentContainer.js +159 -0
  247. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/loader/load.js +221 -0
  248. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/loader/parsers/action-1.x.js +238 -0
  249. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/loader/parsers/action-2.x.js +266 -0
  250. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/loader/parsers/compatible.js +251 -0
  251. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/loader/parsers/scene-1.x.js +262 -0
  252. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/loader/parsers/timelineParser-1.x.js +292 -0
  253. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/loader/parsers/timelineParser-2.x.js +1288 -0
  254. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/loader/parsers/uiParser-1.x.js +680 -0
  255. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/timeline/ActionTimeline.js +448 -0
  256. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/timeline/Frame.js +1268 -0
  257. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/timeline/Timeline.js +321 -0
  258. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/trigger/ObjectFactory.js +99 -0
  259. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/trigger/TriggerBase.js +49 -0
  260. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/trigger/TriggerMng.js +301 -0
  261. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/cocostudio/trigger/TriggerObj.js +263 -0
  262. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/editbox/CCEditBox.js +716 -0
  263. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/editbox/CCdomNode.js +657 -0
  264. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/gui/control-extension/CCControl.js +381 -0
  265. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/gui/control-extension/CCControlButton.js +688 -0
  266. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/gui/control-extension/CCControlColourPicker.js +187 -0
  267. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/gui/control-extension/CCControlHuePicker.js +218 -0
  268. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/gui/control-extension/CCControlPotentiometer.js +300 -0
  269. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/gui/control-extension/CCControlSaturationBrightnessPicker.js +257 -0
  270. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/gui/control-extension/CCControlSlider.js +308 -0
  271. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/gui/control-extension/CCControlStepper.js +390 -0
  272. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/gui/control-extension/CCControlSwitch.js +425 -0
  273. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/gui/control-extension/CCControlUtils.js +177 -0
  274. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/gui/control-extension/CCInvocation.js +65 -0
  275. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/gui/control-extension/CCMenuPassive.js +415 -0
  276. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/gui/control-extension/CCScale9Sprite.js +1099 -0
  277. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/gui/control-extension/CCScale9SpriteCanvasRenderCmd.js +142 -0
  278. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/gui/control-extension/CCScale9SpriteWebGLRenderCmd.js +129 -0
  279. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/gui/scrollview/CCScrollView.js +827 -0
  280. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/gui/scrollview/CCScrollViewCanvasRenderCmd.js +79 -0
  281. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/gui/scrollview/CCScrollViewWebGLRenderCmd.js +108 -0
  282. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/gui/scrollview/CCSorting.js +239 -0
  283. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/gui/scrollview/CCTableView.js +718 -0
  284. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/spine/CCSkeleton.js +357 -0
  285. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/spine/CCSkeletonAnimation.js +340 -0
  286. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/spine/CCSkeletonCanvasRenderCmd.js +165 -0
  287. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/spine/CCSkeletonWebGLRenderCmd.js +165 -0
  288. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/extensions/spine/Spine.js +2239 -0
  289. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/external/box2d/box2d.js +10882 -0
  290. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/external/chipmunk/chipmunk.js +6196 -0
  291. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/external/pluginx/Plugin.js +254 -0
  292. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/external/pluginx/platform/facebook.js +557 -0
  293. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/external/pluginx/platform/facebook_sdk.js +151 -0
  294. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/external/socketio/socket.io.min.js +2 -0
  295. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/jsb_apis.js +618 -0
  296. data/lib/ccb/builder/templates/project/folder/frameworks/cocos2d-html5/moduleConfig.json +453 -0
  297. data/lib/ccb/builder/templates/project/folder/project.json +42 -0
  298. data/lib/ccb/builder/templates/project/folder/res/CloseNormal.png +0 -0
  299. data/lib/ccb/builder/templates/project/folder/res/CloseSelected.png +0 -0
  300. data/lib/ccb/builder/templates/project/folder/res/HelloWorld.png +0 -0
  301. data/lib/ccb/builder/templates/project/folder/res/favicon.ico +0 -0
  302. data/lib/ccb/builder/templates/project/folder/res/gameOver/cocos2d-html5.png +0 -0
  303. data/lib/ccb/builder/templates/project/folder/res/gameOver/gameOver.png +0 -0
  304. data/lib/ccb/builder/templates/project/folder/res/mainMenu/bg.png +0 -0
  305. data/lib/ccb/builder/templates/project/folder/res/mainMenu/menu.png +0 -0
  306. data/lib/ccb/builder/templates/project/folder/res/setting/menuTitle.png +0 -0
  307. data/lib/ccb/builder/templates/project/folder/res/shared/arial-14.fnt +182 -0
  308. data/lib/ccb/builder/templates/project/folder/res/shared/arial-14.png +0 -0
  309. data/lib/ccb/builder/templates/project/folder/res/sound/music/bgMusic.mp3 +0 -0
  310. data/lib/ccb/builder/templates/project/folder/src/about/layer/ABBackgroundLayer.js +23 -0
  311. data/lib/ccb/builder/templates/project/folder/src/about/layer/ABTouchLayer.js +51 -0
  312. data/lib/ccb/builder/templates/project/folder/src/about/scene/About.js +36 -0
  313. data/lib/ccb/builder/templates/project/folder/src/config/Level.js +7 -0
  314. data/lib/ccb/builder/templates/project/folder/src/gameOver/layer/GOBackgroundLayer.js +50 -0
  315. data/lib/ccb/builder/templates/project/folder/src/gameOver/layer/GOTouchLayer.js +51 -0
  316. data/lib/ccb/builder/templates/project/folder/src/gameOver/scene/GameOver.js +38 -0
  317. data/lib/ccb/builder/templates/project/folder/src/gamePlay/classes/LevelManager.js +21 -0
  318. data/lib/ccb/builder/templates/project/folder/src/gamePlay/layer/GPBackgroundLayer.js +25 -0
  319. data/lib/ccb/builder/templates/project/folder/src/gamePlay/layer/GPTouchLayer.js +51 -0
  320. data/lib/ccb/builder/templates/project/folder/src/gamePlay/scene/GamePlay.js +44 -0
  321. data/lib/ccb/builder/templates/project/folder/src/mainMenu/layer/MMBackgroundLayer.js +43 -0
  322. data/lib/ccb/builder/templates/project/folder/src/mainMenu/layer/MMMainMenuLayer.js +38 -0
  323. data/lib/ccb/builder/templates/project/folder/src/mainMenu/layer/MMTouchLayer.js +96 -0
  324. data/lib/ccb/builder/templates/project/folder/src/mainMenu/scene/MainMenu.js +45 -0
  325. data/lib/ccb/builder/templates/project/folder/src/resource.js +29 -0
  326. data/lib/ccb/builder/templates/project/folder/src/setting/layer/STBackgroundLayer.js +25 -0
  327. data/lib/ccb/builder/templates/project/folder/src/setting/layer/STTouchLayer.js +89 -0
  328. data/lib/ccb/builder/templates/project/folder/src/setting/scene/Setting.js +40 -0
  329. data/lib/ccb/builder/templates/project/index.html.tt +27 -0
  330. data/lib/ccb/builder/templates/project/main.js.tt +62 -0
  331. data/lib/ccb/cli.rb +32 -0
  332. data/lib/ccb/ext/method_hooker.rb +68 -0
  333. data/lib/ccb/ext/string_extention.rb +7 -0
  334. data/lib/ccb.rb +1 -0
  335. metadata +449 -0
@@ -0,0 +1,1288 @@
1
+ /****************************************************************************
2
+ Copyright (c) 2013-2014 Chukong Technologies Inc.
3
+
4
+ http://www.cocos2d-x.org
5
+
6
+ Permission is hereby granted, free of charge, to any person obtaining a copy
7
+ of this software and associated documentation files (the "Software"), to deal
8
+ in the Software without restriction, including without limitation the rights
9
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
+ copies of the Software, and to permit persons to whom the Software is
11
+ furnished to do so, subject to the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be included in
14
+ all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22
+ THE SOFTWARE.
23
+ ****************************************************************************/
24
+
25
+ (function(load, baseParser){
26
+
27
+ var DEBUG = false;
28
+
29
+ var Parser = baseParser.extend({
30
+
31
+ parse: function(file, json){
32
+ var resourcePath = this._dirname(file);
33
+ this.pretreatment(json, resourcePath, file);
34
+ var node = this.parseNode(this.getNodeJson(json), resourcePath);
35
+ this.deferred(json, resourcePath, node, file);
36
+ return node;
37
+ },
38
+
39
+ getNodeJson: function(json){
40
+ return json["Content"]["Content"]["ObjectData"];
41
+ },
42
+
43
+ getClass: function(json){
44
+ return json["ctype"];
45
+ }
46
+
47
+ });
48
+ var parser = new Parser();
49
+
50
+
51
+ var getParam = function(value, dValue){
52
+ if(value === undefined)
53
+ return dValue;
54
+ else
55
+ return value;
56
+ };
57
+
58
+ //////////
59
+ // NODE //
60
+ //////////
61
+
62
+ parser.generalAttributes = function(node, json){
63
+ if(json["Name"] != null)
64
+ node.setName(json["Name"]);
65
+
66
+ var position = json["Position"];
67
+ if(position != null && (position["X"] != null || position["Y"] != null))
68
+ node.setPosition(cc.p(position["X"]||0, position["Y"]||0));
69
+
70
+ var scale = json["Scale"];
71
+ if(scale != null){
72
+ if(scale["ScaleX"] != null)
73
+ node.setScaleX(scale["ScaleX"]);
74
+ if(scale["ScaleY"] != null)
75
+ node.setScaleY(scale["ScaleY"]);
76
+ }
77
+
78
+ var rotationSkewX = json["RotationSkewX"];
79
+ if (rotationSkewX != null)
80
+ node.setRotationX(rotationSkewX);
81
+
82
+ var rotationSkewY = json["RotationSkewY"];
83
+ if (json["RotationSkewY"] != null)
84
+ node.setRotationY(rotationSkewY);
85
+
86
+
87
+ var anchor = json["AnchorPoint"];
88
+ if(anchor != null){
89
+ if(anchor["ScaleX"] == null)
90
+ anchor["ScaleX"] = 0;
91
+ if(anchor["ScaleY"] == null)
92
+ anchor["ScaleY"] = 0;
93
+ if(anchor["ScaleX"] != 0.5 || anchor["ScaleY"] != 0.5)
94
+ node.setAnchorPoint(cc.p(anchor["ScaleX"], anchor["ScaleY"]));
95
+ }
96
+
97
+ if (json["ZOrder"] != null)
98
+ node.setLocalZOrder(json["ZOrder"]);
99
+
100
+ var visible = getParam(json["VisibleForFrame"], true);
101
+ node.setVisible(visible);
102
+
103
+ setContentSize(node, json["Size"]);
104
+
105
+ if (json["Alpha"] != null)
106
+ node.setOpacity(json["Alpha"]);
107
+
108
+ node.setTag(json["Tag"] || 0);
109
+
110
+ node.setUserObject(new ccs.ActionTimelineData(json["ActionTag"] || 0));
111
+
112
+ node.setCascadeColorEnabled(true);
113
+ node.setCascadeOpacityEnabled(true);
114
+ };
115
+
116
+ parser.parseChild = function(node, children, resourcePath){
117
+ if(!node || !children) return;
118
+ for (var i = 0; i < children.length; i++) {
119
+ var child = this.parseNode(children[i], resourcePath);
120
+ if(child){
121
+ if(node instanceof ccui.PageView){
122
+ if(child instanceof ccui.Layout)
123
+ node.addPage(child);
124
+ } else {
125
+ if(node instanceof ccui.ListView){
126
+ if(child instanceof ccui.Widget)
127
+ node.pushBackCustomItem(child);
128
+ } else {
129
+ if(!(node instanceof ccui.Layout) && child instanceof ccui.Widget) {
130
+ if(child.getPositionType() == ccui.Widget.POSITION_PERCENT) {
131
+ var position = child.getPositionPercent();
132
+ var anchor = node.getAnchorPoint();
133
+ child.setPositionPercent(cc.p(position.x + anchor.x, position.y + anchor.y));
134
+ }
135
+ }
136
+ node.addChild(child);
137
+ }
138
+ }
139
+ }
140
+ }
141
+ };
142
+
143
+ /**
144
+ * SingleNode
145
+ * @param json
146
+ * @returns {cc.Node}
147
+ */
148
+ parser.initSingleNode = function(json){
149
+ var node = new cc.Node();
150
+
151
+ this.generalAttributes(node, json);
152
+
153
+ return node;
154
+ };
155
+
156
+ /**
157
+ * Sprite
158
+ * @param json
159
+ * @param resourcePath
160
+ * @returns {cc.Sprite}
161
+ */
162
+ parser.initSprite = function(json, resourcePath){
163
+ var node = new cc.Sprite();
164
+
165
+ loadTexture(json["FileData"], resourcePath, function(path, type){
166
+ if(type == 0)
167
+ node.setTexture(path);
168
+ else if(type == 1){
169
+ var spriteFrame = cc.spriteFrameCache.getSpriteFrame(path);
170
+ node.setSpriteFrame(spriteFrame);
171
+ }
172
+ });
173
+
174
+ if(json["FlipX"])
175
+ node.setFlippedX(true);
176
+ if(json["FlipY"])
177
+ node.setFlippedY(true);
178
+
179
+ this.generalAttributes(node, json);
180
+ var color = json["CColor"];
181
+ if(color != null)
182
+ node.setColor(getColor(color));
183
+
184
+ return node;
185
+ };
186
+
187
+ /**
188
+ * Particle
189
+ * @param json
190
+ * @param resourcePath
191
+ * @returns {*}
192
+ */
193
+ parser.initParticle = function(json, resourcePath){
194
+ var node,
195
+ self = this;
196
+ loadTexture(json["FileData"], resourcePath, function(path, type){
197
+ if(!cc.loader.getRes(path))
198
+ cc.log("%s need to be preloaded", path);
199
+ node = new cc.ParticleSystem(path);
200
+ self.generalAttributes(node, json);
201
+ !cc.sys.isNative && node.setDrawMode(cc.ParticleSystem.TEXTURE_MODE);
202
+ });
203
+ return node;
204
+ };
205
+
206
+
207
+ ////////////
208
+ // WIDGET //
209
+ ////////////
210
+
211
+ parser.widgetAttributes = function(widget, json){
212
+ widget.setCascadeColorEnabled(true);
213
+ widget.setCascadeOpacityEnabled(true);
214
+
215
+ widget.setUnifySizeEnabled(false);
216
+ //widget.setLayoutComponentEnabled(true);
217
+ widget.ignoreContentAdaptWithSize(false);
218
+ setContentSize(widget, json["Size"]);
219
+
220
+ var name = json["Name"];
221
+ if(name)
222
+ widget.setName(name);
223
+
224
+ var actionTag = json["ActionTag"] || 0;
225
+ widget.setActionTag(actionTag);
226
+ widget.setUserObject(new ccs.ActionTimelineData(actionTag));
227
+
228
+ var rotationSkewX = json["RotationSkewX"];
229
+ if(rotationSkewX)
230
+ widget.setRotationX(rotationSkewX);
231
+
232
+ var rotationSkewY = json["RotationSkewY"];
233
+ if(rotationSkewY)
234
+ widget.setRotationY(rotationSkewY);
235
+
236
+ //var rotation = json["Rotation"];
237
+
238
+ var flipX = json["FlipX"];
239
+ if(flipX)
240
+ widget.setFlippedX(true);
241
+
242
+ var flipY = json["FlipY"];
243
+ if(flipY)
244
+ widget.setFlippedY(true);
245
+
246
+ var zOrder = json["zOrder"];
247
+ if(zOrder != null)
248
+ widget.setLocalZOrder(zOrder);
249
+
250
+ //var visible = json["Visible"];
251
+
252
+ var visible = getParam(json["VisibleForFrame"], true);
253
+ widget.setVisible(visible);
254
+
255
+ var alpha = json["Alpha"];
256
+ if(alpha != null)
257
+ widget.setOpacity(alpha);
258
+
259
+ widget.setTag(json["Tag"] || 0);
260
+
261
+ var touchEnabled = json["TouchEnable"] || false;
262
+ widget.setTouchEnabled(touchEnabled);
263
+
264
+ // -- var frameEvent = json["FrameEvent"];
265
+
266
+ var callBackType = json["CallBackType"];
267
+ if(callBackType != null)
268
+ widget.setCallbackType(callBackType);
269
+
270
+ var callBackName = json["CallBackName"];
271
+ if(callBackName)
272
+ widget.setCallbackName(callBackName);
273
+
274
+ var position = json["Position"];
275
+ if(position != null)
276
+ widget.setPosition(position["X"] || 0, position["Y"] || 0);
277
+
278
+ var scale = json["Scale"];
279
+ if(scale != null){
280
+ var scaleX = getParam(scale["ScaleX"], 1);
281
+ var scaleY = getParam(scale["ScaleY"], 1);
282
+ widget.setScaleX(scaleX);
283
+ widget.setScaleY(scaleY);
284
+ }
285
+
286
+ var anchorPoint = json["AnchorPoint"];
287
+ if(anchorPoint != null)
288
+ widget.setAnchorPoint(anchorPoint["ScaleX"] || 0, anchorPoint["ScaleY"] || 0);
289
+
290
+ var color = json["CColor"];
291
+ if(color != null)
292
+ widget.setColor(getColor(color));
293
+
294
+ if(widget instanceof ccui.Layout){
295
+ var layoutComponent = ccui.LayoutComponent.bindLayoutComponent(widget);
296
+
297
+ var positionXPercentEnabled = json["PositionPercentXEnable"] || false;
298
+ var positionYPercentEnabled = json["PositionPercentYEnable"] || false;
299
+ var positionXPercent = 0,
300
+ positionYPercent = 0,
301
+ PrePosition = json["PrePosition"];
302
+ if(PrePosition != null){
303
+ positionXPercent = PrePosition["X"] || 0;
304
+ positionYPercent = PrePosition["Y"] || 0;
305
+ }
306
+ var sizeXPercentEnable = json["PercentWidthEnable"] || false;
307
+ var sizeYPercentEnable = json["PercentHeightEnable"] || false;
308
+ var sizeXPercent = 0,
309
+ sizeYPercent = 0,
310
+ PreSize = json["PreSize"];
311
+ if(PrePosition != null){
312
+ sizeXPercent = PreSize["X"] || 0;
313
+ sizeYPercent = PreSize["Y"] || 0;
314
+ }
315
+ var stretchHorizontalEnabled = json["StretchWidthEnable"] || false;
316
+ var stretchVerticalEnabled = json["StretchHeightEnable"] || false;
317
+ var horizontalEdge = json["HorizontalEdge"];// = ccui.LayoutComponent.horizontalEdge.LEFT;
318
+ var verticalEdge = json["VerticalEdge"]; // = ccui.LayoutComponent.verticalEdge.TOP;
319
+ var leftMargin = json["LeftMargin"] || 0;
320
+ var rightMargin = json["RightMargin"] || 0;
321
+ var topMargin = json["TopMargin"] || 0;
322
+ var bottomMargin = json["BottomMargin"] || 0;
323
+
324
+ layoutComponent.setPositionPercentXEnabled(positionXPercentEnabled);
325
+ layoutComponent.setPositionPercentYEnabled(positionYPercentEnabled);
326
+ layoutComponent.setPositionPercentX(positionXPercent);
327
+ layoutComponent.setPositionPercentY(positionYPercent);
328
+ layoutComponent.setPercentWidthEnabled(sizeXPercentEnable);
329
+ layoutComponent.setPercentHeightEnabled(sizeYPercentEnable);
330
+ layoutComponent.setPercentWidth(sizeXPercent);
331
+ layoutComponent.setPercentHeight(sizeYPercent);
332
+ layoutComponent.setStretchWidthEnabled(stretchHorizontalEnabled);
333
+ layoutComponent.setStretchHeightEnabled(stretchVerticalEnabled);
334
+
335
+ var horizontalEdgeType = ccui.LayoutComponent.horizontalEdge.NONE;
336
+ if (horizontalEdge == "LeftEdge"){
337
+ horizontalEdgeType = ccui.LayoutComponent.horizontalEdge.LEFT;
338
+ }else if (horizontalEdge == "RightEdge"){
339
+ horizontalEdgeType = ccui.LayoutComponent.horizontalEdge.RIGHT;
340
+ }else if (horizontalEdge == "BothEdge"){
341
+ horizontalEdgeType = ccui.LayoutComponent.horizontalEdge.CENTER;
342
+ }
343
+ layoutComponent.setHorizontalEdge(horizontalEdgeType);
344
+
345
+ var verticalEdgeType = ccui.LayoutComponent.verticalEdge.NONE;
346
+ if (verticalEdge == "TopEdge"){
347
+ verticalEdgeType = ccui.LayoutComponent.verticalEdge.TOP;
348
+ }else if (verticalEdge == "BottomEdge"){
349
+ verticalEdgeType = ccui.LayoutComponent.verticalEdge.BOTTOM;
350
+ }else if (verticalEdge == "BothEdge"){
351
+ verticalEdgeType = ccui.LayoutComponent.verticalEdge.CENTER;
352
+ }
353
+ layoutComponent.setVerticalEdge(verticalEdgeType);
354
+
355
+ layoutComponent.setTopMargin(topMargin);
356
+ layoutComponent.setBottomMargin(bottomMargin);
357
+ layoutComponent.setLeftMargin(leftMargin);
358
+ layoutComponent.setRightMargin(rightMargin);
359
+ }
360
+
361
+ };
362
+
363
+ /**
364
+ * Layout
365
+ * @param json
366
+ * @param resourcePath
367
+ * @returns {ccui.Layout}
368
+ */
369
+ parser.initPanel = function(json, resourcePath){
370
+ var widget = new ccui.Layout();
371
+
372
+ this.widgetAttributes(widget, json);
373
+
374
+ var clipEnabled = json["ClipAble"];
375
+ if(clipEnabled != null)
376
+ widget.setClippingEnabled(clipEnabled);
377
+
378
+ var colorType = getParam(json["ComboBoxIndex"], 0);
379
+ widget.setBackGroundColorType(colorType);
380
+
381
+ var bgColorOpacity = getParam(json["BackColorAlpha"], 255);
382
+ if(bgColorOpacity != null)
383
+ widget.setBackGroundColorOpacity(bgColorOpacity);
384
+
385
+ var backGroundScale9Enabled = json["Scale9Enable"];
386
+ if(backGroundScale9Enabled != null)
387
+ widget.setBackGroundImageScale9Enabled(backGroundScale9Enabled);
388
+
389
+ var opacity = getParam(json["Alpha"], 255);
390
+ widget.setOpacity(opacity);
391
+
392
+ loadTexture(json["FileData"], resourcePath, function(path, type){
393
+ widget.setBackGroundImage(path, type);
394
+ });
395
+
396
+ if(backGroundScale9Enabled){
397
+ var scale9OriginX = json["Scale9OriginX"] || 0;
398
+ var scale9OriginY = json["Scale9OriginY"] || 0;
399
+
400
+ var scale9Width = json["Scale9Width"] || 0;
401
+ var scale9Height = json["Scale9Height"] || 0;
402
+
403
+ widget.setBackGroundImageCapInsets(cc.rect(
404
+ scale9OriginX, scale9OriginY, scale9Width, scale9Height
405
+ ));
406
+
407
+ setContentSize(widget, json["Size"]);
408
+ }else{
409
+ if (!widget.isIgnoreContentAdaptWithSize()){
410
+ setContentSize(widget, json["Size"]);
411
+ }
412
+
413
+ }
414
+
415
+ var bgStartColor = json["FirstColor"];
416
+ var bgEndColor = json["EndColor"];
417
+ if(bgStartColor != null && bgEndColor != null){
418
+ var startC = getColor(bgStartColor);
419
+ if(bgEndColor["R"] == null && bgEndColor["G"] == null && bgEndColor["B"] == null)
420
+ widget.setBackGroundColor( startC );
421
+ else
422
+ widget.setBackGroundColor( startC, getColor(bgEndColor) );
423
+ }
424
+
425
+ var colorVector = json["ColorVector"];
426
+ if(colorVector != null)
427
+ widget.setBackGroundColorVector(cc.p(colorVector["ScaleX"], colorVector["ScaleY"]));
428
+
429
+ return widget;
430
+ };
431
+
432
+ /**
433
+ * Text
434
+ * @param json
435
+ * @param resourcePath
436
+ */
437
+ parser.initText = function(json, resourcePath){
438
+
439
+ var widget = new ccui.Text();
440
+
441
+ this.widgetAttributes(widget, json);
442
+
443
+ var touchScaleEnabled = json["TouchScaleChangeAble"];
444
+ if(touchScaleEnabled != null)
445
+ widget.setTouchScaleChangeEnabled(touchScaleEnabled);
446
+
447
+ var text = json["LabelText"];
448
+ if(text != null)
449
+ widget.setString(text);
450
+
451
+ var fontSize = json["FontSize"];
452
+ if(fontSize != null)
453
+ widget.setFontSize(fontSize);
454
+
455
+ var fontName = json["FontName"];
456
+ if(fontName != null)
457
+ widget.setFontName(fontName);
458
+
459
+ var areaWidth = json["AreaWidth"];
460
+ var areaHeight = json["areaHeight"];
461
+ if(areaWidth && areaHeight)
462
+ widget.setTextAreaSize(cc.size(areaWidth, areaHeight));
463
+
464
+ var h_alignment = json["HorizontalAlignmentType"] || "HT_Left";
465
+ switch(h_alignment){
466
+ case "HT_Right":
467
+ h_alignment = 2; break;
468
+ case "HT_Center":
469
+ h_alignment = 1; break;
470
+ case "HT_Left":
471
+ default:
472
+ h_alignment = 0;
473
+ }
474
+ widget.setTextHorizontalAlignment(h_alignment);
475
+
476
+ var v_alignment = json["VerticalAlignmentType"] || "VT_Top";
477
+ switch(v_alignment){
478
+ case "VT_Bottom":
479
+ v_alignment = 2; break;
480
+ case "VT_Center":
481
+ v_alignment = 1; break;
482
+ case "VT_Top":
483
+ default:
484
+ v_alignment = 0;
485
+ }
486
+ widget.setTextVerticalAlignment(v_alignment);
487
+
488
+ //todo check it
489
+ var isCustomSize = json["IsCustomSize"];
490
+ if(isCustomSize != null)
491
+ widget.ignoreContentAdaptWithSize(!isCustomSize);
492
+
493
+ var fontResource = json["FontResource"];
494
+ if(fontResource != null){
495
+ var path = fontResource["Path"];
496
+ //resoutceType = fontResource["Type"];
497
+ if(path != null){
498
+ if (cc.sys.isNative) {
499
+ fontName = cc.path.join(cc.loader.resPath, resourcePath, path);
500
+ } else {
501
+ fontName = path.match(/([^\/]+)\.ttf/);
502
+ fontName = fontName ? fontName[1] : "";
503
+ }
504
+ widget.setFontName(fontName);
505
+ }
506
+ }
507
+
508
+ widget.setUnifySizeEnabled(false);
509
+
510
+ if(widget.isIgnoreContentAdaptWithSize())
511
+ setContentSize(widget, json["Size"]);
512
+
513
+ return widget;
514
+
515
+ };
516
+
517
+ /**
518
+ * Button
519
+ * @param json
520
+ * @param resourcePath
521
+ */
522
+ parser.initButton = function(json, resourcePath){
523
+
524
+ var widget = new ccui.Button();
525
+
526
+ loadTexture(json["NormalFileData"], resourcePath, function(path, type){
527
+ widget.loadTextureNormal(path, type);
528
+ });
529
+ loadTexture(json["PressedFileData"], resourcePath, function(path, type){
530
+ widget.loadTexturePressed(path, type);
531
+ });
532
+ loadTexture(json["DisabledFileData"], resourcePath, function(path, type){
533
+ widget.loadTextureDisabled(path, type);
534
+ });
535
+
536
+ var scale9Enabled = getParam(json["Scale9Enable"], false);
537
+ if(scale9Enabled) {
538
+ widget.setScale9Enabled(scale9Enabled);
539
+ }
540
+
541
+ var text = json["ButtonText"];
542
+ if(text != null)
543
+ widget.setTitleText(text);
544
+
545
+ var fontSize = json["FontSize"];
546
+ if(fontSize != null)
547
+ widget.setTitleFontSize(fontSize);
548
+
549
+ var fontName = json["FontName"];
550
+ if(fontName != null)
551
+ widget.setTitleFontName(fontName);
552
+
553
+ var textColor = json["TextColor"];
554
+ if(textColor != null)
555
+ widget.setTitleColor(getColor(textColor));
556
+
557
+ var displaystate = getParam(json["DisplayState"], true);
558
+ widget.setBright(displaystate);
559
+ widget.setEnabled(displaystate);
560
+
561
+ var fontResource = json["FontResource"];
562
+ if(fontResource != null){
563
+ var path = fontResource["Path"];
564
+ //resoutceType = fontResource["Type"];
565
+ if(path != null){
566
+ if (cc.sys.isNative) {
567
+ fontName = cc.path.join(cc.loader.resPath, resourcePath, path);
568
+ } else {
569
+ fontName = path.match(/([^\/]+)\.ttf/);
570
+ fontName = fontName ? fontName[1] : "";
571
+ }
572
+ widget.setTitleFontName(fontName);
573
+ }
574
+ }
575
+ this.widgetAttributes(widget, json);
576
+
577
+ if(scale9Enabled) {
578
+ widget.setUnifySizeEnabled(false);
579
+ widget.ignoreContentAdaptWithSize(false);
580
+ var capInsets = cc.rect(
581
+ json["Scale9OriginX"] || 0,
582
+ json["Scale9OriginY"] || 0,
583
+ json["Scale9Width"] || 0,
584
+ json["Scale9Height"] || 0
585
+ );
586
+ widget.setCapInsets(capInsets);
587
+
588
+ }
589
+
590
+ setContentSize(widget, json["Size"]);
591
+
592
+ return widget;
593
+
594
+ };
595
+
596
+ /**
597
+ * CheckBox
598
+ * @param json
599
+ * @param resourcePath
600
+ */
601
+ parser.initCheckBox = function(json, resourcePath){
602
+
603
+ var widget = new ccui.CheckBox();
604
+
605
+ this.widgetAttributes(widget, json);
606
+
607
+ var dataList = [
608
+ {name: "NormalBackFileData", handle: widget.loadTextureBackGround},
609
+ {name: "PressedBackFileData", handle: widget.loadTextureBackGroundSelected},
610
+ {name: "NodeNormalFileData", handle: widget.loadTextureFrontCross},
611
+ {name: "DisableBackFileData", handle: widget.loadTextureBackGroundDisabled},
612
+ {name: "NodeDisableFileData", handle: widget.loadTextureFrontCrossDisabled}
613
+ ];
614
+
615
+ dataList.forEach(function(item){
616
+ loadTexture(json[item.name], resourcePath, function(path, type){
617
+ item.handle.call(widget, path, type);
618
+ });
619
+ });
620
+
621
+ var selectedState = getParam(json["CheckedState"], false);
622
+ widget.setSelected(selectedState);
623
+
624
+ var displaystate = getParam(json["DisplayState"], true);
625
+ widget.setBright(displaystate);
626
+ widget.setEnabled(displaystate);
627
+
628
+ return widget;
629
+ };
630
+
631
+ /**
632
+ * ScrollView
633
+ * @param json
634
+ * @param resourcePath
635
+ */
636
+ parser.initScrollView = function(json, resourcePath){
637
+ var widget = new ccui.ScrollView();
638
+
639
+ this.widgetAttributes(widget, json);
640
+
641
+ var clipEnabled = json["ClipAble"];
642
+ widget.setClippingEnabled(clipEnabled);
643
+
644
+ var colorType = getParam(json["ComboBoxIndex"], 0);
645
+ widget.setBackGroundColorType(colorType);
646
+
647
+ var bgColorOpacity = json["BackColorAlpha"];
648
+ if(bgColorOpacity != null)
649
+ widget.setBackGroundColorOpacity(bgColorOpacity);
650
+
651
+ var backGroundScale9Enabled = json["Scale9Enable"];
652
+ if(backGroundScale9Enabled){
653
+ widget.setBackGroundImageScale9Enabled(true);
654
+
655
+
656
+ var scale9OriginX = json["Scale9OriginX"] || 0;
657
+ var scale9OriginY = json["Scale9OriginY"] || 0;
658
+ var scale9Width = json["Scale9Width"] || 0;
659
+ var scale9Height = json["Scale9Height"] || 0;
660
+ widget.setBackGroundImageCapInsets(cc.rect(
661
+ scale9OriginX, scale9OriginY, scale9Width, scale9Height
662
+ ));
663
+ setContentSize(widget, json["Size"]);
664
+ }else if(!widget.isIgnoreContentAdaptWithSize()){
665
+ setContentSize(widget, json["Size"]);
666
+ }
667
+
668
+ var firstColor = json["FirstColor"];
669
+ var endColor = json["EndColor"];
670
+ if(firstColor && endColor){
671
+ if(endColor["R"] != null && endColor["G"] != null && endColor["B"] != null)
672
+ widget.setBackGroundColor(getColor(firstColor), getColor(endColor));
673
+ else
674
+ widget.setBackGroundColor(getColor(firstColor));
675
+ }else{
676
+ widget.setBackGroundColor(getColor(json["SingleColor"]));
677
+ }
678
+
679
+
680
+ var colorVector = json["ColorVector"];
681
+ if(colorVector){
682
+ var colorVectorX = getParam(colorVector["ScaleX"], 1);
683
+ var colorVectorY = getParam(colorVector["ScaleY"], 1);
684
+ widget.setBackGroundColorVector(cc.p(colorVectorX, colorVectorY));
685
+ }
686
+
687
+ loadTexture(json["FileData"], resourcePath, function(path, type){
688
+ widget.setBackGroundImage(path, type);
689
+ });
690
+
691
+ var innerNodeSize = json["InnerNodeSize"];
692
+ var innerSize = cc.size(
693
+ innerNodeSize["Width"] || 0,
694
+ innerNodeSize["Height"] || 0
695
+ );
696
+ widget.setInnerContainerSize(innerSize);
697
+
698
+ var direction = 0;
699
+ if(json["ScrollDirectionType"] == "Vertical") direction = 1;
700
+ if(json["ScrollDirectionType"] == "Horizontal") direction = 2;
701
+ if(json["ScrollDirectionType"] == "Vertical_Horizontal") direction = 3;
702
+ widget.setDirection(direction);
703
+
704
+ var bounceEnabled = getParam(json["IsBounceEnabled"], false);
705
+ widget.setBounceEnabled(bounceEnabled);
706
+
707
+ return widget;
708
+ };
709
+
710
+ /**
711
+ * ImageView
712
+ * @param json
713
+ * @param resourcePath
714
+ */
715
+ parser.initImageView = function(json, resourcePath){
716
+
717
+ var widget = new ccui.ImageView();
718
+
719
+ loadTexture(json["FileData"], resourcePath, function(path, type){
720
+ widget.loadTexture(path, type);
721
+ });
722
+ loadTexture(json["ImageFileData"], resourcePath, function(path, type){
723
+ widget.loadTexture(path, type);
724
+ });
725
+
726
+ var scale9Enabled = json["Scale9Enable"];
727
+ if(scale9Enabled){
728
+ widget.setScale9Enabled(true);
729
+ widget.setUnifySizeEnabled(false);
730
+ widget.ignoreContentAdaptWithSize(false);
731
+
732
+ var scale9OriginX = json["Scale9OriginX"] || 0;
733
+ var scale9OriginY = json["Scale9OriginY"] || 0;
734
+ var scale9Width = json["Scale9Width"] || 0;
735
+ var scale9Height = json["Scale9Height"] || 0;
736
+ widget.setCapInsets(cc.rect(
737
+ scale9OriginX ,
738
+ scale9OriginY,
739
+ scale9Width,
740
+ scale9Height
741
+ ));
742
+ } else
743
+ setContentSize(widget, json["Size"]);
744
+
745
+ this.widgetAttributes(widget, json);
746
+
747
+ return widget;
748
+ };
749
+
750
+ /**
751
+ * LoadingBar
752
+ * @param json
753
+ * @param resourcePath
754
+ * @returns {ccui.LoadingBar}
755
+ */
756
+ parser.initLoadingBar = function(json, resourcePath){
757
+
758
+ var widget = new ccui.LoadingBar();
759
+
760
+ this.widgetAttributes(widget, json);
761
+
762
+ loadTexture(json["ImageFileData"], resourcePath, function(path, type){
763
+ widget.loadTexture(path, type);
764
+ });
765
+
766
+ var direction = json["ProgressType"] === "Right_To_Left" ? 1 : 0;
767
+ widget.setDirection(direction);
768
+
769
+ var percent = getParam(json["ProgressInfo"], 80);
770
+ if(percent != null)
771
+ widget.setPercent(percent);
772
+
773
+ return widget;
774
+
775
+ };
776
+
777
+ /**
778
+ * Slider
779
+ * @param json
780
+ * @param resourcePath
781
+ */
782
+ parser.initSlider = function(json, resourcePath){
783
+
784
+ var widget = new ccui.Slider();
785
+ var loader = cc.loader;
786
+
787
+ this.widgetAttributes(widget, json);
788
+
789
+ var textureList = [
790
+ {name: "BackGroundData", handle: widget.loadBarTexture},
791
+ {name: "BallNormalData", handle: widget.loadSlidBallTextureNormal},
792
+ {name: "BallPressedData", handle: widget.loadSlidBallTexturePressed},
793
+ {name: "BallDisabledData", handle: widget.loadSlidBallTextureDisabled},
794
+ {name: "ProgressBarData", handle: widget.loadProgressBarTexture}
795
+ ];
796
+ textureList.forEach(function(item){
797
+ loadTexture(json[item.name], resourcePath, function(path, type){
798
+ if(type == 0 && !loader.getRes(path))
799
+ cc.log("%s need to be preloaded", path);
800
+ item.handle.call(widget, path, type);
801
+ });
802
+ });
803
+
804
+ var percent = json["PercentInfo"] || 0;
805
+ widget.setPercent(percent);
806
+
807
+ var displaystate = getParam(json["DisplayState"], true);
808
+ widget.setBright(displaystate);
809
+ widget.setEnabled(displaystate);
810
+
811
+ return widget;
812
+ };
813
+
814
+ /**
815
+ * PageView
816
+ * @param json
817
+ * @param resourcePath
818
+ */
819
+ parser.initPageView = function(json, resourcePath){
820
+
821
+ var widget = new ccui.PageView();
822
+
823
+ this.widgetAttributes(widget, json);
824
+
825
+ var clipEnabled = json["ClipAble"] || false;
826
+ widget.setClippingEnabled(clipEnabled);
827
+
828
+ var backGroundScale9Enabled = json["Scale9Enable"];
829
+ if(backGroundScale9Enabled){
830
+ widget.setBackGroundImageScale9Enabled(true);
831
+
832
+ var scale9OriginX = json["Scale9OriginX"] || 0;
833
+ var scale9OriginY = json["Scale9OriginY"] || 0;
834
+ var scale9Width = json["Scale9Width"] || 0;
835
+ var scale9Height = json["Scale9Height"] || 0;
836
+ widget.setBackGroundImageCapInsets(cc.rect(
837
+ scale9OriginX,
838
+ scale9OriginY,
839
+ scale9Width,
840
+ scale9Height
841
+ ));
842
+ }
843
+
844
+ var colorType = getParam(json["ComboBoxIndex"], 0);
845
+ widget.setBackGroundColorType(colorType);
846
+
847
+ var bgColorOpacity = json["BackColorAlpha"];
848
+ var firstColor = json["FirstColor"];
849
+ var endColor = json["EndColor"];
850
+ if(firstColor && endColor){
851
+ if(endColor["R"] != null && endColor["G"] != null && endColor["B"] != null)
852
+ widget.setBackGroundColor(getColor(firstColor), getColor(endColor));
853
+ else
854
+ widget.setBackGroundColor(getColor(firstColor));
855
+ }else{
856
+ widget.setBackGroundColor(getColor(json["SingleColor"]));
857
+ }
858
+
859
+ var colorVector = json["ColorVector"];
860
+ if(colorVector != null && colorVector["ScaleX"] != null && colorVector["ScaleY"] != null)
861
+ widget.setBackGroundColorVector(cc.p(colorVector["ScaleX"], colorVector["ScaleY"]));
862
+ if(bgColorOpacity != null)
863
+ widget.setBackGroundColorOpacity(bgColorOpacity);
864
+
865
+ loadTexture(json["FileData"], resourcePath, function(path, type){
866
+ widget.setBackGroundImage(path, type);
867
+ });
868
+
869
+ setContentSize(widget, json["Size"]);
870
+
871
+ return widget;
872
+
873
+ };
874
+
875
+ /**
876
+ * ListView
877
+ * @param json
878
+ * @param resourcePath
879
+ * @returns {ccui.ListView}
880
+ */
881
+ parser.initListView = function(json, resourcePath){
882
+
883
+ var widget = new ccui.ListView();
884
+
885
+ this.widgetAttributes(widget, json);
886
+
887
+ var clipEnabled = json["ClipAble"] || false;
888
+ widget.setClippingEnabled(clipEnabled);
889
+
890
+ var colorType = getParam(json["ComboBoxIndex"], 0);
891
+ widget.setBackGroundColorType(colorType);
892
+
893
+ var bgColorOpacity = getParam(json["BackColorAlpha"], 255);
894
+ var backGroundScale9Enabled = json["Scale9Enable"];
895
+ if(backGroundScale9Enabled){
896
+ widget.setBackGroundImageScale9Enabled(true);
897
+
898
+ var scale9OriginX = json["Scale9OriginX"] || 0;
899
+ var scale9OriginY = json["Scale9OriginY"] || 0;
900
+ var scale9Width = json["Scale9Width"] || 0;
901
+ var scale9Height = json["Scale9Height"] || 0;
902
+ widget.setBackGroundImageCapInsets(cc.rect(
903
+ scale9OriginX,
904
+ scale9OriginY,
905
+ scale9Width,
906
+ scale9Height
907
+ ));
908
+ }
909
+
910
+ var directionType = getParam(json["DirectionType"], ccui.ListView.DIR_HORIZONTAL);
911
+ var verticalType = getParam(json["VerticalType"], "Align_Left");
912
+ var horizontalType = getParam(json["HorizontalType"], "Align_Top");
913
+ if(!directionType){
914
+ widget.setDirection(ccui.ScrollView.DIR_HORIZONTAL);
915
+ if(verticalType == "Align_Bottom")
916
+ widget.setGravity(ccui.ListView.GRAVITY_BOTTOM);
917
+ else if(verticalType == "Align_VerticalCenter")
918
+ widget.setGravity(ccui.ListView.GRAVITY_CENTER_VERTICAL);
919
+ else
920
+ widget.setGravity(ccui.ListView.GRAVITY_TOP);
921
+ }else if(directionType == "Vertical"){
922
+ widget.setDirection(ccui.ScrollView.DIR_VERTICAL);
923
+ if (horizontalType == "")
924
+ widget.setGravity(ccui.ListView.GRAVITY_LEFT);
925
+ else if (horizontalType == "Align_Right")
926
+ widget.setGravity(ccui.ListView.GRAVITY_RIGHT);
927
+ else if (horizontalType == "Align_HorizontalCenter")
928
+ widget.setGravity(ccui.ListView.GRAVITY_CENTER_HORIZONTAL);
929
+ }
930
+
931
+
932
+ var bounceEnabled = getParam(json["IsBounceEnabled"], false);
933
+ widget.setBounceEnabled(bounceEnabled);
934
+
935
+ var itemMargin = json["ItemMargin"] || 0;
936
+ widget.setItemsMargin(itemMargin);
937
+
938
+ var innerSize = json["InnerNodeSize"];
939
+ //Width
940
+ if(innerSize != null)
941
+ widget.setInnerContainerSize(cc.size(innerSize["Widget"]||0, innerSize["Height"]||0));
942
+
943
+ var firstColor = json["FirstColor"];
944
+ var endColor = json["EndColor"];
945
+ if(firstColor && endColor){
946
+ if(endColor["R"] != null && endColor["G"] != null && endColor["B"] != null)
947
+ widget.setBackGroundColor(getColor(firstColor), getColor(endColor));
948
+ else
949
+ widget.setBackGroundColor(getColor(firstColor));
950
+ }else{
951
+ widget.setBackGroundColor(getColor(json["SingleColor"]));
952
+ }
953
+
954
+ var colorVector = json["ColorVector"];
955
+ if(colorVector != null && colorVector["ScaleX"] != null && colorVector["ScaleY"] != null)
956
+ widget.setBackGroundColorVector(cc.p(colorVector["ScaleX"], colorVector["ScaleY"]));
957
+ if(bgColorOpacity != null)
958
+ widget.setBackGroundColorOpacity(bgColorOpacity);
959
+
960
+
961
+ loadTexture(json["FileData"], resourcePath, function(path, type){
962
+ widget.setBackGroundImage(path, type);
963
+ });
964
+
965
+ setContentSize(widget, json["Size"]);
966
+
967
+ return widget;
968
+ };
969
+
970
+ /**
971
+ * TextAtlas
972
+ * @param json
973
+ * @param resourcePath
974
+ * @returns {ccui.TextAtlas}
975
+ */
976
+ parser.initTextAtlas = function(json, resourcePath){
977
+
978
+ var widget = new ccui.TextAtlas();
979
+
980
+ var stringValue = json["LabelText"];
981
+ var itemWidth = json["CharWidth"];
982
+ var itemHeight = json["CharHeight"];
983
+
984
+ var startCharMap = json["StartChar"];
985
+
986
+ loadTexture(json["LabelAtlasFileImage_CNB"], resourcePath, function(path, type){
987
+ if(!cc.loader.getRes(path))
988
+ cc.log("%s need to be preloaded", path);
989
+ if(type == 0){
990
+ widget.setProperty(stringValue, path, itemWidth, itemHeight, startCharMap);
991
+ }
992
+ });
993
+ this.widgetAttributes(widget, json);
994
+
995
+ return widget;
996
+ };
997
+
998
+ /**
999
+ * TextBMFont
1000
+ * @param json
1001
+ * @param resourcePath
1002
+ * @returns {ccui.TextBMFont}
1003
+ */
1004
+ parser.initTextBMFont = function(json, resourcePath){
1005
+
1006
+ var widget = new ccui.TextBMFont();
1007
+ this.widgetAttributes(widget, json);
1008
+
1009
+ var text = json["LabelText"];
1010
+ widget.setString(text);
1011
+
1012
+ loadTexture(json["LabelBMFontFile_CNB"], resourcePath, function(path, type){
1013
+ if(!cc.loader.getRes(path))
1014
+ cc.log("%s need to be pre loaded", path);
1015
+ widget.setFntFile(path);
1016
+ });
1017
+ return widget;
1018
+ };
1019
+
1020
+ /**
1021
+ * TextField
1022
+ * @param json
1023
+ * @param resourcePath
1024
+ * @returns {ccui.TextField}
1025
+ */
1026
+ parser.initTextField = function(json, resourcePath){
1027
+ var widget = new ccui.TextField();
1028
+
1029
+ var passwordEnabled = json["PasswordEnable"];
1030
+ if(passwordEnabled){
1031
+ widget.setPasswordEnabled(true);
1032
+ var passwordStyleText = json["PasswordStyleText"] || "*";
1033
+ widget.setPasswordStyleText(passwordStyleText);
1034
+ }
1035
+
1036
+ var placeHolder = json["PlaceHolderText"];
1037
+ if(placeHolder != null)
1038
+ widget.setPlaceHolder(placeHolder);
1039
+
1040
+ var fontSize = json["FontSize"];
1041
+ if(fontSize != null)
1042
+ widget.setFontSize(fontSize);
1043
+
1044
+ var fontName = json["FontName"];
1045
+ if(fontName != null)
1046
+ widget.setFontName(fontName);
1047
+
1048
+ var maxLengthEnabled = json["MaxLengthEnable"];
1049
+ if(maxLengthEnabled){
1050
+ widget.setMaxLengthEnabled(true);
1051
+ var maxLength = json["MaxLengthText"] || 0;
1052
+ widget.setMaxLength(maxLength);
1053
+ }
1054
+
1055
+ //var isCustomSize = json["IsCustomSize"];
1056
+ this.widgetAttributes(widget, json);
1057
+
1058
+ var text = json["LabelText"];
1059
+ if(text != null)
1060
+ widget.setString(text);
1061
+
1062
+ var fontResource = json["FontResource"];
1063
+ if(fontResource != null){
1064
+ var path = fontResource["Path"];
1065
+ //resoutceType = fontResource["Type"];
1066
+ if(path != null){
1067
+ if (cc.sys.isNative) {
1068
+ fontName = cc.path.join(cc.loader.resPath, resourcePath, path);
1069
+ } else {
1070
+ fontName = path.match(/([^\/]+)\.ttf/);
1071
+ fontName = fontName ? fontName[1] : "";
1072
+ }
1073
+ widget.setFontName(fontName);
1074
+ }
1075
+ }
1076
+
1077
+ widget.setUnifySizeEnabled(false);
1078
+ widget.ignoreContentAdaptWithSize(false);
1079
+
1080
+ var color = json["CColor"];
1081
+ if(color != null)
1082
+ widget.setTextColor(getColor(color));
1083
+
1084
+ if (!widget.isIgnoreContentAdaptWithSize()){
1085
+ setContentSize(widget, json["Size"]);
1086
+ if (cc.sys.isNative)
1087
+ widget.getVirtualRenderer().setLineBreakWithoutSpace(true);
1088
+ }
1089
+
1090
+
1091
+ return widget;
1092
+
1093
+ };
1094
+
1095
+ /**
1096
+ * SimpleAudio
1097
+ * @param json
1098
+ * @param resourcePath
1099
+ */
1100
+ parser.initSimpleAudio = function(json, resourcePath){
1101
+
1102
+ var loop = json["Loop"] || false;
1103
+ var volume = json["Volume"] || 0;
1104
+ cc.audioEngine.setMusicVolume(volume);
1105
+ //var name = json["Name"];
1106
+ var resPath = "";
1107
+ if(cc.loader.resPath)
1108
+ resPath = (cc.loader.resPath + "/").replace(/\/\/$/, "/");
1109
+
1110
+ loadTexture(json["FileData"], resourcePath, function(path, type){
1111
+ cc.loader.load(path, function(){
1112
+ cc.audioEngine.playMusic(resPath + path, loop);
1113
+ });
1114
+ });
1115
+
1116
+ };
1117
+
1118
+ /**
1119
+ * GameMap
1120
+ * @param json
1121
+ * @param resourcePath
1122
+ * @returns {*}
1123
+ */
1124
+ parser.initGameMap = function(json, resourcePath){
1125
+
1126
+ var node = null;
1127
+
1128
+ loadTexture(json["FileData"], resourcePath, function(path, type){
1129
+ if(type == 0)
1130
+ node = new cc.TMXTiledMap(path);
1131
+
1132
+ parser.generalAttributes(node, json);
1133
+ });
1134
+
1135
+ return node;
1136
+ };
1137
+
1138
+ /**
1139
+ * ProjectNode
1140
+ * @param json
1141
+ * @param resourcePath
1142
+ * @returns {*}
1143
+ */
1144
+ parser.initProjectNode = function(json, resourcePath){
1145
+ var projectFile = json["FileData"];
1146
+ if(projectFile != null && projectFile["Path"]){
1147
+ var file = resourcePath + projectFile["Path"];
1148
+ if(cc.loader.getRes(file)){
1149
+ var obj = ccs.load(file);
1150
+ parser.generalAttributes(obj.node, json);
1151
+ if(obj.action && obj.node){
1152
+ obj.action.tag = obj.node.tag;
1153
+ obj.node.runAction(obj.action);
1154
+ obj.action.gotoFrameAndPause(0);
1155
+ }
1156
+ return obj.node;
1157
+ } else
1158
+ cc.log("%s need to be preloaded", file);
1159
+ }
1160
+ };
1161
+
1162
+ var getFileName = function(name){
1163
+ if(!name) return "";
1164
+ var arr = name.match(/([^\/]+)\.[^\/]+$/);
1165
+ if(arr && arr[1])
1166
+ return arr[1];
1167
+ else
1168
+ return "";
1169
+ };
1170
+
1171
+ /**
1172
+ * Armature
1173
+ * @param json
1174
+ * @param resourcePath
1175
+ */
1176
+ parser.initArmature = function(json, resourcePath){
1177
+
1178
+ var node = new ccs.Armature();
1179
+
1180
+ var isLoop = json["IsLoop"];
1181
+
1182
+ var isAutoPlay = json["IsAutoPlay"];
1183
+
1184
+ var currentAnimationName = json["CurrentAnimationName"];
1185
+
1186
+ parser.generalAttributes(node, json);
1187
+
1188
+ loadTexture(json["FileData"], resourcePath, function(path, type){
1189
+ var plists, pngs;
1190
+ var armJson = cc.loader.getRes(path);
1191
+ if(!armJson)
1192
+ cc.log("%s need to be preloaded", path);
1193
+ else{
1194
+ plists = armJson["config_file_path"];
1195
+ pngs = armJson["config_png_path"];
1196
+ plists.forEach(function(plist, index){
1197
+ if(pngs[index])
1198
+ cc.spriteFrameCache.addSpriteFrames(plist, pngs[index]);
1199
+ });
1200
+ }
1201
+ ccs.armatureDataManager.addArmatureFileInfo(path);
1202
+ node.init(getFileName(path));
1203
+ if(isAutoPlay)
1204
+ node.getAnimation().play(currentAnimationName, -1, isLoop);
1205
+
1206
+ });
1207
+ return node;
1208
+ };
1209
+
1210
+ var loadedPlist = {};
1211
+ var loadTexture = function(json, resourcePath, cb){
1212
+ if(json != null){
1213
+ var path = json["Path"];
1214
+ var type;
1215
+ if(json["Type"] == "Default" || json["Type"] == "Normal")
1216
+ type = 0;
1217
+ else
1218
+ type = 1;
1219
+ var plist = json["Plist"];
1220
+ if(plist){
1221
+ if(cc.loader.getRes(resourcePath + plist)){
1222
+ loadedPlist[resourcePath + plist] = true;
1223
+ cc.spriteFrameCache.addSpriteFrames(resourcePath + plist);
1224
+ }else{
1225
+ if(!loadedPlist[resourcePath + plist])
1226
+ cc.log("%s need to be preloaded", resourcePath + plist);
1227
+ }
1228
+ }
1229
+ if(type !== 0)
1230
+ cb(path, type);
1231
+ else
1232
+ cb(resourcePath + path, type);
1233
+ }
1234
+ };
1235
+
1236
+ var getColor = function(json){
1237
+ if(!json) return;
1238
+ var r = json["R"] != null ? json["R"] : 255;
1239
+ var g = json["G"] != null ? json["G"] : 255;
1240
+ var b = json["B"] != null ? json["B"] : 255;
1241
+ return cc.color(r, g, b);
1242
+ };
1243
+
1244
+ var setContentSize = function(node, size){
1245
+ var x = size["X"] || 0;
1246
+ var y = size["Y"] || 0;
1247
+ if(size)
1248
+ node.setContentSize(cc.size(x, y));
1249
+ };
1250
+
1251
+ var register = [
1252
+ {name: "SingleNodeObjectData", handle: parser.initSingleNode},
1253
+ {name: "LayerObjectData", handle: parser.initSingleNode},
1254
+ {name: "SpriteObjectData", handle: parser.initSprite},
1255
+ {name: "ParticleObjectData", handle: parser.initParticle},
1256
+ {name: "PanelObjectData", handle: parser.initPanel},
1257
+ {name: "TextObjectData", handle: parser.initText},
1258
+ {name: "ButtonObjectData", handle: parser.initButton},
1259
+ {name: "CheckBoxObjectData", handle: parser.initCheckBox},
1260
+ {name: "ScrollViewObjectData", handle: parser.initScrollView},
1261
+ {name: "ImageViewObjectData", handle: parser.initImageView},
1262
+ {name: "LoadingBarObjectData", handle: parser.initLoadingBar},
1263
+ {name: "SliderObjectData", handle: parser.initSlider},
1264
+ {name: "PageViewObjectData", handle: parser.initPageView},
1265
+ {name: "ListViewObjectData", handle: parser.initListView},
1266
+ {name: "TextAtlasObjectData", handle: parser.initTextAtlas},
1267
+ {name: "TextBMFontObjectData", handle: parser.initTextBMFont},
1268
+ {name: "TextFieldObjectData", handle: parser.initTextField},
1269
+ {name: "SimpleAudioObjectData", handle: parser.initSimpleAudio},
1270
+ {name: "GameMapObjectData", handle: parser.initGameMap},
1271
+ {name: "ProjectNodeObjectData", handle: parser.initProjectNode},
1272
+ {name: "ArmatureNodeObjectData", handle: parser.initArmature}
1273
+ ];
1274
+
1275
+ register.forEach(function(item){
1276
+ parser.registerParser(item.name, function(options, resourcePath){
1277
+ var node = item.handle.call(this, options, resourcePath);
1278
+ this.parseChild(node, options["Children"], resourcePath);
1279
+ DEBUG && node && (node.__parserName = item.name);
1280
+ return node;
1281
+ });
1282
+ });
1283
+
1284
+
1285
+ load.registerParser("timeline", "2.*", parser);
1286
+
1287
+
1288
+ })(ccs._load, ccs._parser);