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,770 @@
1
+ /****************************************************************************
2
+ Copyright (c) 2008-2010 Ricardo Quesada
3
+ Copyright (c) 2011-2012 cocos2d-x.org
4
+ Copyright (c) 2013-2014 Chukong Technologies Inc.
5
+
6
+ http://www.cocos2d-x.org
7
+
8
+ Permission is hereby granted, free of charge, to any person obtaining a copy
9
+ of this software and associated documentation files (the "Software"), to deal
10
+ in the Software without restriction, including without limitation the rights
11
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
12
+ copies of the Software, and to permit persons to whom the Software is
13
+ furnished to do so, subject to the following conditions:
14
+
15
+ The above copyright notice and this permission notice shall be included in
16
+ all copies or substantial portions of the Software.
17
+
18
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
21
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
23
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
24
+ THE SOFTWARE.
25
+ ****************************************************************************/
26
+
27
+ cc.BuilderAnimationManagerDelegate = cc.Class.extend({
28
+ completedAnimationSequenceNamed:function (name) {}
29
+ });
30
+
31
+ cc.BuilderAnimationManager = cc.Class.extend({
32
+ _sequences:null,
33
+ _nodeSequences:null,
34
+ _baseValues:null,
35
+ _autoPlaySequenceId:0,
36
+
37
+ _rootNode:null,
38
+ _owner:null,
39
+ _rootContainerSize:null,
40
+
41
+ _delegate:null,
42
+ _runningSequence:null,
43
+
44
+ _documentOutletNames:null,
45
+ _documentOutletNodes:null,
46
+ _documentCallbackNames:null,
47
+ _documentCallbackNodes:null,
48
+ _documentCallbackControlEvents:null,
49
+ _documentControllerName:"",
50
+ _lastCompletedSequenceName:"",
51
+ _keyframeCallbacks:null,
52
+ _keyframeCallFuncs:null,
53
+
54
+ _animationCompleteCallbackFunc:null,
55
+ _target:null,
56
+ _jsControlled:false,
57
+
58
+ ctor:function () {
59
+ this._rootContainerSize = cc.size(0, 0);
60
+ this.init();
61
+ },
62
+
63
+ init:function () {
64
+ this._sequences = [];
65
+ this._nodeSequences = new cc._Dictionary();
66
+ this._baseValues = new cc._Dictionary();
67
+
68
+ this._documentOutletNames = [];
69
+ this._documentOutletNodes = [];
70
+ this._documentCallbackNames = [];
71
+ this._documentCallbackNodes = [];
72
+ this._documentCallbackControlEvents = [];
73
+
74
+ this._keyframeCallbacks = [];
75
+ this._keyframeCallFuncs = {};
76
+
77
+ return true;
78
+ },
79
+
80
+ getSequences:function () {
81
+ return this._sequences;
82
+ },
83
+
84
+ setSequences:function(seqs){
85
+ this._sequences = seqs;
86
+ },
87
+
88
+ getAutoPlaySequenceId:function () {
89
+ return this._autoPlaySequenceId;
90
+ },
91
+ setAutoPlaySequenceId:function (autoPlaySequenceId) {
92
+ this._autoPlaySequenceId = autoPlaySequenceId;
93
+ },
94
+
95
+ getRootNode:function () {
96
+ return this._rootNode;
97
+ },
98
+ setRootNode:function (rootNode) {
99
+ this._rootNode = rootNode;
100
+ },
101
+
102
+ getOwner:function () {
103
+ return this._owner;
104
+ },
105
+ setOwner:function (owner) {
106
+ this._owner = owner;
107
+ },
108
+
109
+ addDocumentCallbackNode:function(node){
110
+ this._documentCallbackNodes.push(node);
111
+ },
112
+
113
+ addDocumentCallbackName:function(name){
114
+ this._documentCallbackNames.push(name);
115
+ },
116
+
117
+ addDocumentCallbackControlEvents:function(controlEvents){
118
+ this._documentCallbackControlEvents.push(controlEvents);
119
+ },
120
+
121
+ addDocumentOutletNode:function(node){
122
+ this._documentOutletNodes.push(node);
123
+ },
124
+
125
+ addDocumentOutletName:function(name){
126
+ this._documentOutletNames.push(name);
127
+ },
128
+
129
+ setDocumentControllerName:function(name){
130
+ this._documentControllerName = name;
131
+ },
132
+
133
+ getDocumentControllerName:function(){
134
+ return this._documentControllerName;
135
+ },
136
+
137
+ getDocumentCallbackNames:function(){
138
+ return this._documentCallbackNames;
139
+ },
140
+
141
+ getDocumentCallbackNodes:function(){
142
+ return this._documentCallbackNodes;
143
+ },
144
+
145
+ getDocumentCallbackControlEvents:function(){
146
+ return this._documentCallbackControlEvents;
147
+ },
148
+
149
+ getDocumentOutletNames:function(){
150
+ return this._documentOutletNames;
151
+ },
152
+
153
+ getDocumentOutletNodes:function(){
154
+ return this._documentOutletNodes;
155
+ },
156
+
157
+ getLastCompletedSequenceName:function(){
158
+ return this._lastCompletedSequenceName;
159
+ },
160
+
161
+ getKeyframeCallbacks:function(){
162
+ return this._keyframeCallbacks;
163
+ },
164
+
165
+ getRootContainerSize:function () {
166
+ return this._rootContainerSize;
167
+ },
168
+ setRootContainerSize:function (rootContainerSize) {
169
+ this._rootContainerSize = cc.size(rootContainerSize.width, rootContainerSize.height);
170
+ },
171
+
172
+ getDelegate:function () {
173
+ return this._delegate;
174
+ },
175
+ setDelegate:function (delegate) {
176
+ this._delegate = delegate;
177
+ },
178
+
179
+ getRunningSequenceName:function () {
180
+ if(this._runningSequence)
181
+ return this._runningSequence.getName();
182
+ return null;
183
+ },
184
+
185
+ getContainerSize:function (node) {
186
+ if (node)
187
+ return node.getContentSize();
188
+ else
189
+ return this._rootContainerSize;
190
+ },
191
+
192
+ addNode:function (node, seq) {
193
+ this._nodeSequences.setObject(seq, node);
194
+ },
195
+ setBaseValue:function (value, node, propName) {
196
+ var props = this._baseValues.objectForKey(node);
197
+ if (!props) {
198
+ props = new cc._Dictionary();
199
+ this._baseValues.setObject(props, node);
200
+ }
201
+ props.setObject(value, propName);
202
+ },
203
+
204
+ moveAnimationsFromNode:function(fromNode,toNode){
205
+ // Move base values
206
+ var locBaseValues = this._baseValues;
207
+ var baseValue = locBaseValues.objectForKey(fromNode);
208
+ if(baseValue != null) {
209
+ locBaseValues.setObject(baseValue, toNode);
210
+ locBaseValues.removeObjectForKey(fromNode);
211
+ }
212
+
213
+ // Move seqs
214
+ var locNodeSequences = this._nodeSequences;
215
+ var seqs = locNodeSequences.objectForKey(fromNode);
216
+ if(seqs != null) {
217
+ locNodeSequences.setObject(seqs, toNode);
218
+ locNodeSequences.removeObjectForKey(fromNode);
219
+ }
220
+ },
221
+
222
+ getActionForCallbackChannel:function(channel) {
223
+ var lastKeyframeTime = 0;
224
+
225
+ var actions = [];
226
+ var keyframes = channel.getKeyframes();
227
+ var numKeyframes = keyframes.length;
228
+
229
+ for (var i = 0; i < numKeyframes; ++i) {
230
+ var keyframe = keyframes[i];
231
+ var timeSinceLastKeyframe = keyframe.getTime() - lastKeyframeTime;
232
+ lastKeyframeTime = keyframe.getTime();
233
+ if(timeSinceLastKeyframe > 0) {
234
+ actions.push(cc.delayTime(timeSinceLastKeyframe));
235
+ }
236
+
237
+ var keyVal = keyframe.getValue();
238
+ var selectorName = keyVal[0];
239
+ var selectorTarget = keyVal[1];
240
+
241
+ if(this._jsControlled) {
242
+ var callbackName = selectorTarget + ":" + selectorName; //add number to the stream
243
+ var callback = this._keyframeCallFuncs[callbackName];
244
+
245
+ if(callback != null)
246
+ actions.push(callback);
247
+ } else {
248
+ var target;
249
+ if(selectorTarget == CCB_TARGETTYPE_DOCUMENTROOT)
250
+ target = this._rootNode;
251
+ else if (selectorTarget == CCB_TARGETTYPE_OWNER)
252
+ target = this._owner;
253
+
254
+ if(target != null) {
255
+ if(selectorName.length > 0) {
256
+ var selCallFunc = 0;
257
+
258
+ var targetAsCCBSelectorResolver = target;
259
+
260
+ if(target.onResolveCCBCCCallFuncSelector != null)
261
+ selCallFunc = targetAsCCBSelectorResolver.onResolveCCBCCCallFuncSelector(target, selectorName);
262
+ if(selCallFunc == 0)
263
+ cc.log("Skipping selector '" + selectorName + "' since no CCBSelectorResolver is present.");
264
+ else
265
+ actions.push(cc.callFunc(selCallFunc,target));
266
+ } else {
267
+ cc.log("Unexpected empty selector.");
268
+ }
269
+ }
270
+ }
271
+ }
272
+ if(actions.length < 1)
273
+ return null;
274
+
275
+ return cc.sequence(actions);
276
+ },
277
+ getActionForSoundChannel:function(channel) {
278
+ var lastKeyframeTime = 0;
279
+
280
+ var actions = [];
281
+ var keyframes = channel.getKeyframes();
282
+ var numKeyframes = keyframes.length;
283
+
284
+ for (var i = 0; i < numKeyframes; ++i) {
285
+ var keyframe = keyframes[i];
286
+ var timeSinceLastKeyframe = keyframe.getTime() - lastKeyframeTime;
287
+ lastKeyframeTime = keyframe.getTime();
288
+ if(timeSinceLastKeyframe > 0) {
289
+ actions.push(cc.delayTime(timeSinceLastKeyframe));
290
+ }
291
+
292
+ var keyVal = keyframe.getValue();
293
+ var soundFile = cc.BuilderReader.getResourcePath() + keyVal[0];
294
+ var pitch = parseFloat(keyVal[1]), pan = parseFloat(keyVal[2]), gain = parseFloat(keyVal[3]);
295
+ actions.push(cc.BuilderSoundEffect.create(soundFile, pitch, pan, gain));
296
+ }
297
+
298
+ if(actions.length < 1)
299
+ return null;
300
+
301
+ return cc.sequence(actions);
302
+ },
303
+
304
+ runAnimationsForSequenceNamed:function(name){
305
+ this.runAnimationsForSequenceIdTweenDuration(this._getSequenceId(name), 0);
306
+ },
307
+
308
+ runAnimationsForSequenceNamedTweenDuration:function(name, tweenDuration){
309
+ this.runAnimationsForSequenceIdTweenDuration(this._getSequenceId(name), tweenDuration);
310
+ },
311
+
312
+ runAnimationsForSequenceIdTweenDuration:function(nSeqId, tweenDuration){
313
+ if(nSeqId === -1)
314
+ throw "cc.BuilderAnimationManager.runAnimationsForSequenceIdTweenDuration(): Sequence id should not be -1";
315
+ tweenDuration = tweenDuration || 0;
316
+
317
+ this._rootNode.stopAllActions();
318
+
319
+ var allKeys = this._nodeSequences.allKeys();
320
+ for(var i = 0,len = allKeys.length ; i< len;i++){
321
+ var node = allKeys[i];
322
+ node.stopAllActions();
323
+
324
+ var seqs = this._nodeSequences.objectForKey(node);
325
+ var seqNodeProps = seqs.objectForKey(nSeqId);
326
+ var j;
327
+ var seqNodePropNames = [];
328
+ if(seqNodeProps){
329
+ var propKeys = seqNodeProps.allKeys();
330
+ for(j = 0; j < propKeys.length; j++){
331
+ var propName = propKeys[j];
332
+ var seqProp = seqNodeProps.objectForKey(propName);
333
+ seqNodePropNames.push(propName);
334
+
335
+ this._setFirstFrame(node, seqProp,tweenDuration);
336
+ this._runAction(node,seqProp,tweenDuration);
337
+ }
338
+ }
339
+
340
+ var nodeBaseValues = this._baseValues.objectForKey(node);
341
+ if(nodeBaseValues){
342
+ var baseKeys = nodeBaseValues.allKeys();
343
+ for(j = 0; j < baseKeys.length;j++){
344
+ var selBaseKey = baseKeys[j];
345
+ if(seqNodePropNames.indexOf(selBaseKey) == -1){
346
+ var value = nodeBaseValues.objectForKey(selBaseKey);
347
+ if(value != null)
348
+ this._setAnimatedProperty(selBaseKey,node, value, tweenDuration);
349
+ }
350
+ }
351
+ }
352
+ }
353
+
354
+ // Make callback at end of sequence
355
+ var seq = this._getSequence(nSeqId);
356
+ var completeAction = cc.sequence(cc.delayTime(seq.getDuration() + tweenDuration),
357
+ cc.callFunc(this._sequenceCompleted,this));
358
+ this._rootNode.runAction(completeAction);
359
+
360
+ // Playback callbacks and sounds
361
+ var action;
362
+ if (seq.getCallbackChannel()) {
363
+ // Build sound actions for channel
364
+ action = this.getActionForCallbackChannel(seq.getCallbackChannel());
365
+ if (action) {
366
+ this._rootNode.runAction(action);
367
+ }
368
+ }
369
+
370
+ if (seq.getSoundChannel()) {
371
+ // Build sound actions for channel
372
+ action = this.getActionForSoundChannel(seq.getSoundChannel());
373
+ if (action) {
374
+ this._rootNode.runAction(action);
375
+ }
376
+ }
377
+ // Set the running scene
378
+ this._runningSequence = this._getSequence(nSeqId);
379
+ },
380
+
381
+ runAnimations:function (name, tweenDuration) {
382
+ tweenDuration = tweenDuration || 0;
383
+ var nSeqId;
384
+ if(cc.isString(name))
385
+ nSeqId = this._getSequenceId(name);
386
+ else
387
+ nSeqId = name;
388
+
389
+ this.runAnimationsForSequenceIdTweenDuration(nSeqId, tweenDuration);
390
+ },
391
+
392
+ setAnimationCompletedCallback:function(target,callbackFunc){
393
+ this._target = target;
394
+ this._animationCompleteCallbackFunc = callbackFunc;
395
+ },
396
+
397
+ setCompletedAnimationCallback:function(target,callbackFunc){
398
+ this.setAnimationCompletedCallback(target,callbackFunc);
399
+ },
400
+ setCallFunc:function(callFunc, callbackNamed) {
401
+ this._keyframeCallFuncs[callbackNamed] = callFunc;
402
+ },
403
+
404
+ debug:function () {
405
+ },
406
+
407
+ _getBaseValue:function (node, propName) {
408
+ var props = this._baseValues.objectForKey(node);
409
+ if (props)
410
+ return props.objectForKey(propName);
411
+ return null;
412
+ },
413
+
414
+ _getSequenceId:function (sequenceName) {
415
+ var element = null;
416
+ var locSequences = this._sequences;
417
+ for (var i = 0, len = locSequences.length; i < len; i++) {
418
+ element = locSequences[i];
419
+ if (element && element.getName() === sequenceName)
420
+ return element.getSequenceId();
421
+ }
422
+ return -1;
423
+ },
424
+
425
+ _getSequence:function (sequenceId) {
426
+ var element = null;
427
+ var locSequences = this._sequences;
428
+ for (var i = 0, len = locSequences.length; i < len; i++) {
429
+ element = locSequences[i];
430
+ if (element && element.getSequenceId() === sequenceId)
431
+ return element;
432
+ }
433
+ return null;
434
+ },
435
+
436
+ _getAction:function (keyframe0, keyframe1, propName, node) {
437
+ var duration = keyframe1.getTime() - (keyframe0 ? keyframe0.getTime() : 0);
438
+ var getArr,type,getValueArr, x, y;
439
+
440
+ if (propName === "rotation") {
441
+ return cc.BuilderRotateTo.create(duration, keyframe1.getValue());
442
+ } else if (propName === "rotationX") {
443
+ return cc.BuilderRotateXTo.create(duration, keyframe1.getValue());
444
+ } else if (propName === "rotationY") {
445
+ return cc.BuilderRotateYTo.create(duration, keyframe1.getValue());
446
+ } else if (propName === "opacity") {
447
+ return cc.fadeTo(duration, keyframe1.getValue());
448
+ } else if (propName === "color") {
449
+ var selColor = keyframe1.getValue().getColor();
450
+ return cc.tintTo(duration, selColor.r, selColor.g, selColor.b);
451
+ } else if (propName === "visible") {
452
+ var isVisible = keyframe1.getValue();
453
+ if (isVisible) {
454
+ return cc.sequence(cc.delayTime(duration), cc.show());
455
+ } else {
456
+ return cc.sequence(cc.delayTime(duration), cc.hide());
457
+ }
458
+ } else if (propName === "displayFrame") {
459
+ return cc.sequence(cc.delayTime(duration), cc.BuilderSetSpriteFrame.create(keyframe1.getValue()));
460
+ } else if(propName === "position"){
461
+ getArr = this._getBaseValue(node,propName);
462
+ type = getArr[2];
463
+
464
+ //get relative position
465
+ getValueArr = keyframe1.getValue();
466
+ x = getValueArr[0];
467
+ y = getValueArr[1];
468
+
469
+ var containerSize = this.getContainerSize(node.getParent());
470
+
471
+ var absPos = cc._getAbsolutePosition(x,y, type,containerSize,propName);
472
+
473
+ return cc.moveTo(duration,absPos);
474
+ } else if( propName === "scale"){
475
+ getArr = this._getBaseValue(node,propName);
476
+ type = getArr[2];
477
+
478
+ //get relative position
479
+ getValueArr = keyframe1.getValue();
480
+ x = getValueArr[0];
481
+ y = getValueArr[1];
482
+
483
+ if(type === CCB_SCALETYPE_MULTIPLY_RESOLUTION){
484
+ //TODO need to test
485
+ var resolutionScale = cc.BuilderReader.getResolutionScale();
486
+ x *= resolutionScale;
487
+ y *= resolutionScale;
488
+ }
489
+
490
+ return cc.scaleTo(duration,x,y);
491
+ } else if( propName === "skew") {
492
+ //get relative position
493
+ getValueArr = keyframe1.getValue();
494
+ x = getValueArr[0];
495
+ y = getValueArr[1];
496
+ return cc.skewTo(duration,x,y);
497
+ } else {
498
+ cc.log("BuilderReader: Failed to create animation for property: " + propName);
499
+ }
500
+ return null;
501
+ },
502
+
503
+ _setAnimatedProperty:function (propName, node, value, tweenDuration) {
504
+ if(tweenDuration > 0){
505
+ // Create a fake keyframe to generate the action from
506
+ var kf1 = new cc.BuilderKeyframe();
507
+ kf1.setValue(value);
508
+ kf1.setTime(tweenDuration);
509
+ kf1.setEasingType(CCB_KEYFRAME_EASING_LINEAR);
510
+
511
+ // Animate
512
+ var tweenAction = this._getAction(null, kf1, propName, node);
513
+ node.runAction(tweenAction);
514
+ } else {
515
+ // Just set the value
516
+ var getArr, nType, x,y;
517
+ if(propName === "position"){
518
+ getArr = this._getBaseValue(node,propName);
519
+ nType = getArr[2];
520
+
521
+ x = value[0];
522
+ y = value[1];
523
+ node.setPosition(cc._getAbsolutePosition(x,y,nType, this.getContainerSize(node.getParent()),propName));
524
+ }else if(propName === "scale"){
525
+ getArr = this._getBaseValue(node,propName);
526
+ nType = getArr[2];
527
+
528
+ x = value[0];
529
+ y = value[1];
530
+
531
+ cc.setRelativeScale(node,x,y,nType,propName);
532
+ } else if( propName === "skew") {
533
+ x = value[0];
534
+ y = value[1];
535
+ node.setSkewX(x);
536
+ node.setSkewY(y);
537
+ }else {
538
+ // [node setValue:value forKey:name];
539
+ // TODO only handle rotation, opacity, displayFrame, color
540
+ if(propName === "rotation"){
541
+ node.setRotation(value);
542
+ } else if(propName == "rotationX")
543
+ {
544
+ node.setRotationSkewX(value);
545
+ }else if(propName == "rotationY")
546
+ {
547
+ node.setRotationSkewY(value);
548
+ }else if(propName === "opacity"){
549
+ node.setOpacity(value);
550
+ } else if(propName === "displayFrame"){
551
+ node.setSpriteFrame(value);
552
+ } else if(propName === "color"){
553
+ var ccColor3B = value.getColor();
554
+ if(ccColor3B.r !== 255 || ccColor3B.g !== 255 || ccColor3B.b !== 255){
555
+ node.setColor(ccColor3B);
556
+ }
557
+ } else if( propName === "visible"){
558
+ value = value || false;
559
+ node.setVisible(value);
560
+ } else {
561
+ cc.log("unsupported property name is "+ propName);
562
+ }
563
+ }
564
+ }
565
+ },
566
+
567
+ _setFirstFrame:function (node, seqProp, tweenDuration) {
568
+ var keyframes = seqProp.getKeyframes();
569
+
570
+ if (keyframes.length === 0) {
571
+ // Use base value (no animation)
572
+ var baseValue = this._getBaseValue(node, seqProp.getName());
573
+ if(!baseValue)
574
+ cc.log("cc.BuilderAnimationManager._setFirstFrame(): No baseValue found for property");
575
+ this._setAnimatedProperty(seqProp.getName(), node, baseValue, tweenDuration);
576
+ } else {
577
+ // Use first keyframe
578
+ var keyframe = keyframes[0];
579
+ this._setAnimatedProperty(seqProp.getName(), node, keyframe.getValue(), tweenDuration);
580
+ }
581
+ },
582
+
583
+ _getEaseAction:function (action, easingType, easingOpt) {
584
+ if (easingType === CCB_KEYFRAME_EASING_LINEAR || easingType === CCB_KEYFRAME_EASING_INSTANT ) {
585
+ return action;
586
+ } else if (easingType === CCB_KEYFRAME_EASING_CUBIC_IN) {
587
+ return action.easing(cc.easeIn(easingOpt));
588
+ } else if (easingType === CCB_KEYFRAME_EASING_CUBIC_OUT) {
589
+ return action.easing(cc.easeOut(easingOpt));
590
+ } else if (easingType === CCB_KEYFRAME_EASING_CUBIC_INOUT) {
591
+ return action.easing(cc.easeInOut(easingOpt));
592
+ } else if (easingType === CCB_KEYFRAME_EASING_BACK_IN) {
593
+ return action.easing(cc.easeBackIn());
594
+ } else if (easingType === CCB_KEYFRAME_EASING_BACK_OUT) {
595
+ return action.easing(cc.easeBackOut());
596
+ } else if (easingType === CCB_KEYFRAME_EASING_BACK_INOUT) {
597
+ return action.easing(cc.easeBackInOut());
598
+ } else if (easingType === CCB_KEYFRAME_EASING_BOUNCE_IN) {
599
+ return action.easing(cc.easeBounceIn());
600
+ } else if (easingType === CCB_KEYFRAME_EASING_BOUNCE_OUT) {
601
+ return action.easing(cc.easeBounceOut());
602
+ } else if (easingType === CCB_KEYFRAME_EASING_BOUNCE_INOUT) {
603
+ return action.easing(cc.easeBounceInOut());
604
+ } else if (easingType === CCB_KEYFRAME_EASING_ELASTIC_IN) {
605
+ return action.easing(cc.easeElasticIn(easingOpt));
606
+ } else if (easingType === CCB_KEYFRAME_EASING_ELASTIC_OUT) {
607
+ return action.easing(cc.easeElasticOut(easingOpt));
608
+ } else if (easingType === CCB_KEYFRAME_EASING_ELASTIC_INOUT) {
609
+ return action.easing(cc.easeElasticInOut(easingOpt));
610
+ } else {
611
+ cc.log("BuilderReader: Unkown easing type " + easingType);
612
+ return action;
613
+ }
614
+ },
615
+
616
+ _runAction:function (node, seqProp, tweenDuration) {
617
+ var keyframes = seqProp.getKeyframes();
618
+ var numKeyframes = keyframes.length;
619
+
620
+ if (numKeyframes > 1) {
621
+ // Make an animation!
622
+ var actions = [];
623
+
624
+ var keyframeFirst = keyframes[0];
625
+ var timeFirst = keyframeFirst.getTime() + tweenDuration;
626
+
627
+ if (timeFirst > 0) {
628
+ actions.push(cc.delayTime(timeFirst));
629
+ }
630
+
631
+ for (var i = 0; i < numKeyframes - 1; ++i) {
632
+ var kf0 = keyframes[i];
633
+ var kf1 = keyframes[(i+1)];
634
+
635
+ var action = this._getAction(kf0, kf1, seqProp.getName(), node);
636
+ if (action) {
637
+ // Apply easing
638
+ action = this._getEaseAction(action, kf0.getEasingType(), kf0.getEasingOpt());
639
+ actions.push(action);
640
+ }
641
+ }
642
+
643
+ node.runAction(cc.sequence(actions));
644
+ }
645
+ },
646
+
647
+ _sequenceCompleted:function () {
648
+ var locRunningSequence = this._runningSequence;
649
+
650
+ var locRunningName = locRunningSequence.getName();
651
+
652
+ if(this._lastCompletedSequenceName != locRunningSequence.getName()){
653
+ this._lastCompletedSequenceName = locRunningSequence.getName();
654
+ }
655
+
656
+ var nextSeqId = locRunningSequence.getChainedSequenceId();
657
+ this._runningSequence = null;
658
+
659
+ if (nextSeqId != -1)
660
+ this.runAnimations(nextSeqId, 0);
661
+
662
+ if (this._delegate)
663
+ this._delegate.completedAnimationSequenceNamed(locRunningName);
664
+
665
+ if(this._target && this._animationCompleteCallbackFunc){
666
+ this._animationCompleteCallbackFunc.call(this._target);
667
+ }
668
+ }
669
+ });
670
+
671
+
672
+ cc.BuilderSetSpriteFrame = cc.ActionInstant.extend({
673
+ _spriteFrame:null,
674
+
675
+ initWithSpriteFrame:function (spriteFrame) {
676
+ this._spriteFrame = spriteFrame;
677
+ return true;
678
+ },
679
+ update:function (time) {
680
+ this.target.setSpriteFrame(this._spriteFrame);
681
+ }
682
+ });
683
+
684
+ cc.BuilderSetSpriteFrame.create = function (spriteFrame) {
685
+ var ret = new cc.BuilderSetSpriteFrame();
686
+ if (ret) {
687
+ if (ret.initWithSpriteFrame(spriteFrame))
688
+ return ret;
689
+ }
690
+ return null;
691
+ };
692
+
693
+ //
694
+ // cc.BuilderRotateTo
695
+ //
696
+ cc.BuilderRotateTo = cc.ActionInterval.extend({
697
+ _startAngle:0,
698
+ _dstAngle:0,
699
+ _diffAngle:0,
700
+
701
+ initWithDuration:function (duration, angle) {
702
+ if (cc.ActionInterval.prototype.initWithDuration.call(this, duration)) {
703
+ this._dstAngle = angle;
704
+ return true;
705
+ } else {
706
+ return false;
707
+ }
708
+ },
709
+ update:function (time) {
710
+ this.target.setRotation(this._startAngle + (this._diffAngle * time));
711
+ },
712
+
713
+ startWithTarget:function (node) {
714
+ cc.ActionInterval.prototype.startWithTarget.call(this, node);
715
+ this._startAngle = this.target.getRotation();
716
+ this._diffAngle = this._dstAngle - this._startAngle;
717
+ }
718
+ });
719
+
720
+ cc.BuilderRotateTo.create = function (duration, angle) {
721
+ var ret = new cc.BuilderRotateTo();
722
+ if (ret) {
723
+ if (ret.initWithDuration(duration, angle))
724
+ return ret;
725
+ }
726
+ return null;
727
+ };
728
+
729
+ //
730
+ // cc.BuilderRotateXTo
731
+ //
732
+ cc.BuilderRotateXTo = cc.ActionInterval.extend({
733
+ // TODO: rotationX is not implemented in HTML5
734
+ });
735
+
736
+ cc.BuilderRotateXTo.create = function (duration, angle) {
737
+ throw "rotationX has not been implemented in cocos2d-html5";
738
+ };
739
+
740
+ //
741
+ // cc.BuilderRotateYTo
742
+ //
743
+ cc.BuilderRotateYTo = cc.ActionInterval.extend({
744
+ // TODO: rotationX is not implemented in HTML5
745
+ });
746
+
747
+ cc.BuilderRotateYTo.create = function (duration, angle) {
748
+ throw "rotationY has not been implemented in cocos2d-html5";
749
+ };
750
+
751
+ //
752
+ // cc.BuilderSoundEffect
753
+ //
754
+ cc.BuilderSoundEffect = cc.ActionInstant.extend({
755
+ init:function(file) {
756
+ this._file = file;
757
+ return true;
758
+ },
759
+ update:function(dt) {
760
+ cc.audioEngine.playEffect(this._file);
761
+ }
762
+ });
763
+ cc.BuilderSoundEffect.create = function (file, pitch, pan, gain) {
764
+ var ret = new cc.BuilderSoundEffect();
765
+ if (ret && ret.init(file)) {
766
+ return ret;
767
+ }
768
+ return null;
769
+ };
770
+