joybox 0.0.6 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (202) hide show
  1. checksums.yaml +8 -8
  2. data/README.md +18 -2
  3. data/Rakefile +1 -2
  4. data/joybox.gemspec +34 -35
  5. data/lib/joybox/joybox-ios.rb +2 -4
  6. data/lib/joybox/version.rb +1 -1
  7. data/motion/joybox-ios/configuration/configuration.rb +12 -1
  8. data/motion/joybox-ios/configuration/debug.rb +27 -0
  9. data/motion/joybox-ios/debug/debug.rb +10 -0
  10. data/motion/joybox-ios/debug/node.rb +66 -0
  11. data/motion/joybox-ios/debug/proxy_view.rb +31 -0
  12. data/motion/joybox-osx/configuration/configuration.rb +11 -0
  13. data/motion/joybox-osx/configuration/debug.rb +27 -0
  14. data/motion/joybox-osx/configuration/sprite_view.rb +91 -0
  15. data/motion/joybox-osx/debug/debug.rb +10 -0
  16. data/motion/joybox-osx/debug/node.rb +51 -0
  17. data/motion/joybox-osx/debug/proxy_view.rb +31 -0
  18. data/motion/joybox/actions/fade.rb +1 -3
  19. data/motion/joybox/core/ns_object.rb +8 -0
  20. data/motion/joybox/core/sprite.rb +19 -13
  21. data/motion/joybox/macros.rb +3 -3
  22. data/motion/joybox/physics/body.rb +0 -1
  23. data/motion/joybox/physics/physics_sprite.rb +14 -11
  24. data/motion/joybox/physics/world.rb +4 -4
  25. data/template/joybox-ios-example-repl/files/Rakefile.erb +9 -0
  26. data/template/joybox-ios-example-repl/files/app/app_delegate.rb +55 -0
  27. data/template/joybox-ios-example-repl/files/app/layers/actions_layer.rb +13 -0
  28. data/template/joybox-ios-example-repl/files/app/layers/background_layer.rb +9 -0
  29. data/template/joybox-ios-example-repl/files/app/scenes/game_scene.rb +11 -0
  30. data/template/joybox-ios-example-repl/files/resources/fps_images-hd.png +0 -0
  31. data/template/joybox-ios-example-repl/files/resources/fps_images-ipadhd.png +0 -0
  32. data/template/joybox-ios-example-repl/files/resources/fps_images.png +0 -0
  33. data/template/joybox-ios-example-repl/files/resources/images/background.png +0 -0
  34. data/template/joybox-ios-example-repl/files/resources/sprites/character_boy.png +0 -0
  35. data/template/joybox-ios-example-repl/files/resources/sprites/character_horn_girl.png +0 -0
  36. data/template/joybox-ios-example-repl/files/resources/sprites/character_pink_girl.png +0 -0
  37. data/template/joybox-ios-example-repl/files/spec/layers/actions_layer_spec.rb +3 -0
  38. data/template/joybox-ios-example-repl/files/spec/layers/background_layer_spec.rb +3 -0
  39. data/template/joybox-ios-example-repl/files/spec/main_spec.rb +9 -0
  40. data/template/joybox-ios-example-repl/files/spec/scenes/game_scene_spec.rb +3 -0
  41. data/template/joybox-ios/files/resources/Default-568h@2x.png +0 -0
  42. data/template/joybox-osx-example-repl/files/Rakefile.erb +9 -0
  43. data/template/joybox-osx-example-repl/files/app/app_delegate.rb +32 -0
  44. data/template/joybox-osx-example-repl/files/app/layers/actions_layer.rb +20 -0
  45. data/template/joybox-osx-example-repl/files/app/layers/background_layer.rb +9 -0
  46. data/template/joybox-osx-example-repl/files/app/menu.rb +51 -0
  47. data/template/joybox-osx-example-repl/files/app/scenes/game_scene.rb +11 -0
  48. data/template/joybox-osx-example-repl/files/readme.md +12 -0
  49. data/template/joybox-osx-example-repl/files/resources/fps_images-hd.png +0 -0
  50. data/template/joybox-osx-example-repl/files/resources/fps_images-ipadhd.png +0 -0
  51. data/template/joybox-osx-example-repl/files/resources/fps_images.png +0 -0
  52. data/template/joybox-osx-example-repl/files/resources/images/background.png +0 -0
  53. data/template/joybox-osx-example-repl/files/resources/sprites/character_boy.png +0 -0
  54. data/template/joybox-osx-example-repl/files/resources/sprites/character_horn_girl.png +0 -0
  55. data/template/joybox-osx-example-repl/files/resources/sprites/character_pink_girl.png +0 -0
  56. data/template/joybox-osx-example-repl/files/spec/layers/actions_layer_spec.rb +3 -0
  57. data/template/joybox-osx-example-repl/files/spec/layers/background_layer_spec.rb +3 -0
  58. data/template/joybox-osx-example-repl/files/spec/main_spec.rb +9 -0
  59. data/template/joybox-osx-example-repl/files/spec/scenes/game_scene_spec.rb +3 -0
  60. data/template/joybox-osx/files/app/layers/default_layer.rb +2 -4
  61. data/vendor/vendor-ios/box_2d/box_2d.bridgesupport +176 -0
  62. data/vendor/{vendor-osx/box_2d/include → vendor-ios/box_2d/box_2d_include}/B2DBody.h +1 -1
  63. data/vendor/vendor-ios/{Box2D.framework/Versions/A/Headers/Collision/Shapes → box_2d/box_2d_include}/B2DCircleShape.h +1 -1
  64. data/vendor/{vendor-osx/box_2d/include → vendor-ios/box_2d/box_2d_include}/B2DContactListener.h +1 -2
  65. data/vendor/{vendor-osx/box_2d/include → vendor-ios/box_2d/box_2d_include}/B2DEdgeShape.h +1 -1
  66. data/vendor/{vendor-osx/box_2d/include → vendor-ios/box_2d/box_2d_include}/B2DPolygonShape.h +1 -1
  67. data/vendor/{vendor-osx/box_2d/include → vendor-ios/box_2d/box_2d_include}/B2DShape.h +1 -1
  68. data/vendor/{vendor-osx/box_2d/include → vendor-ios/box_2d/box_2d_include}/B2DWorld.h +5 -4
  69. data/vendor/vendor-ios/box_2d/libBox2D.a +0 -0
  70. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCAction.h +0 -0
  71. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCActionCamera.h +0 -0
  72. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCActionCatmullRom.h +0 -0
  73. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCActionEase.h +0 -0
  74. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCActionGrid.h +0 -0
  75. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCActionGrid3D.h +0 -0
  76. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCActionInstant.h +0 -0
  77. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCActionInterval.h +0 -0
  78. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCActionManager.h +0 -0
  79. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCActionPageTurn3D.h +0 -0
  80. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCActionProgressTimer.h +0 -0
  81. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCActionTiledGrid.h +0 -0
  82. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCActionTween.h +0 -0
  83. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCAnimation.h +0 -0
  84. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCAnimationCache.h +0 -0
  85. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCAtlasNode.h +0 -0
  86. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCCamera.h +0 -0
  87. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCClippingNode.h +0 -0
  88. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCConfiguration.h +0 -0
  89. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCDirector.h +0 -0
  90. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCDrawNode.h +0 -0
  91. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCDrawingPrimitives.h +0 -0
  92. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCGLProgram.h +0 -0
  93. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCGrabber.h +0 -0
  94. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCGrid.h +0 -0
  95. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCLabelAtlas.h +0 -0
  96. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCLabelBMFont.h +0 -0
  97. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCLabelTTF.h +0 -0
  98. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCLayer.h +0 -0
  99. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCMenu.h +0 -0
  100. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCMenuItem.h +0 -0
  101. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCMotionStreak.h +0 -0
  102. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCNode+Debug.h +0 -0
  103. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCNode.h +0 -0
  104. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCParallaxNode.h +0 -0
  105. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCParticleBatchNode.h +0 -0
  106. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCParticleExamples.h +0 -0
  107. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCParticleSystem.h +0 -0
  108. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCParticleSystemQuad.h +0 -0
  109. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCPhysicsDebugNode.h +0 -0
  110. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCPhysicsSprite.h +0 -0
  111. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCProgressTimer.h +0 -0
  112. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCProtocols.h +0 -0
  113. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCRenderTexture.h +0 -0
  114. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCScene.h +0 -0
  115. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCScheduler.h +0 -0
  116. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCShaderCache.h +0 -0
  117. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCSprite.h +0 -0
  118. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCSpriteBatchNode.h +0 -0
  119. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCSpriteFrame.h +0 -0
  120. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCSpriteFrameCache.h +0 -0
  121. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCTMXLayer.h +0 -0
  122. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCTMXObjectGroup.h +0 -0
  123. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCTMXTiledMap.h +0 -0
  124. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCTMXXMLParser.h +0 -0
  125. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCTexture2D.h +0 -0
  126. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCTextureAtlas.h +0 -0
  127. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCTextureCache.h +0 -0
  128. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCTexturePVR.h +0 -0
  129. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCTileMapAtlas.h +0 -0
  130. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCTransition.h +0 -0
  131. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCTransitionPageTurn.h +0 -0
  132. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/CCTransitionProgress.h +0 -0
  133. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Platforms/CCGL.h +0 -0
  134. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Platforms/CCNS.h +0 -0
  135. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Platforms/Mac/CCDirectorMac.h +0 -0
  136. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Platforms/Mac/CCEventDispatcher.h +0 -0
  137. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Platforms/Mac/CCGLView.h +0 -0
  138. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Platforms/Mac/CCWindow.h +0 -0
  139. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Platforms/iOS/CCDirectorIOS.h +0 -0
  140. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Platforms/iOS/CCES2Renderer.h +0 -0
  141. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Platforms/iOS/CCESRenderer.h +0 -0
  142. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Platforms/iOS/CCGLView.h +0 -0
  143. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Platforms/iOS/CCTouchDelegateProtocol.h +0 -0
  144. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Platforms/iOS/CCTouchDispatcher.h +0 -0
  145. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Platforms/iOS/CCTouchHandler.h +0 -0
  146. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Support/CCArray.h +0 -0
  147. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Support/CCFileUtils.h +0 -0
  148. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Support/CCProfiling.h +0 -0
  149. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Support/CCVertex.h +0 -0
  150. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Support/CGPointExtension.h +0 -0
  151. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Support/NSThread+performBlock.h +0 -0
  152. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Support/OpenGL_Internal.h +0 -0
  153. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Support/TGAlib.h +0 -0
  154. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Support/TransformUtils.h +0 -0
  155. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Support/ZipUtils.h +0 -0
  156. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Support/base64.h +0 -0
  157. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Support/ccCArray.h +0 -0
  158. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Support/ccUtils.h +0 -0
  159. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Support/uthash.h +0 -0
  160. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/Support/utlist.h +0 -0
  161. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/ccConfig.h +0 -0
  162. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/ccDeprecated.h +0 -0
  163. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/ccFPSImages.h +0 -0
  164. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/ccGLStateCache.h +0 -0
  165. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/ccMacros.h +0 -0
  166. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/ccShader_PositionColorLengthTexture_frag.h +0 -0
  167. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/ccShader_PositionColorLengthTexture_vert.h +0 -0
  168. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/ccShader_PositionColor_frag.h +0 -0
  169. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/ccShader_PositionColor_vert.h +0 -0
  170. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/ccShader_PositionTextureA8Color_frag.h +0 -0
  171. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/ccShader_PositionTextureA8Color_vert.h +0 -0
  172. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/ccShader_PositionTextureColorAlphaTest_frag.h +0 -0
  173. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/ccShader_PositionTextureColor_frag.h +0 -0
  174. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/ccShader_PositionTextureColor_vert.h +0 -0
  175. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/ccShader_PositionTexture_frag.h +0 -0
  176. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/ccShader_PositionTexture_uColor_frag.h +0 -0
  177. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/ccShader_PositionTexture_uColor_vert.h +0 -0
  178. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/ccShader_PositionTexture_vert.h +0 -0
  179. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/ccShader_Position_uColor_frag.h +0 -0
  180. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/ccShader_Position_uColor_vert.h +0 -0
  181. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/ccShaders.h +0 -0
  182. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/ccTypes.h +0 -0
  183. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/cocos2d-ios-exceptions.bridgesupport +0 -0
  184. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/cocos2d.h +0 -0
  185. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/gen_cocos2d_bridgesupport.sh +0 -0
  186. data/vendor/vendor-ios/cocos_2d/{include → cocos_2d_include}/gen_cocos2d_complement.sh +0 -0
  187. data/vendor/vendor-osx/box_2d/box_2d.bridgesupport +87 -87
  188. data/vendor/{vendor-ios/Box2D.framework/Versions/A/Headers/Dynamics → vendor-osx/box_2d/box_2d_include}/B2DBody.h +5 -2
  189. data/vendor/vendor-osx/box_2d/{include → box_2d_include}/B2DCircleShape.h +1 -1
  190. data/vendor/{vendor-ios/Box2D.framework/Versions/A/Headers/Collision → vendor-osx/box_2d/box_2d_include}/B2DContactListener.h +6 -2
  191. data/vendor/{vendor-ios/Box2D.framework/Versions/A/Headers/Collision/Shapes → vendor-osx/box_2d/box_2d_include}/B2DEdgeShape.h +1 -1
  192. data/vendor/{vendor-ios/Box2D.framework/Versions/A/Headers/Collision/Shapes → vendor-osx/box_2d/box_2d_include}/B2DPolygonShape.h +1 -1
  193. data/vendor/{vendor-ios/Box2D.framework/Versions/A/Headers/Collision/Shapes → vendor-osx/box_2d/box_2d_include}/B2DShape.h +5 -2
  194. data/vendor/{vendor-ios/Box2D.framework/Versions/A/Headers/Dynamics → vendor-osx/box_2d/box_2d_include}/B2DWorld.h +9 -5
  195. data/vendor/vendor-osx/box_2d/libBox2D.a +0 -0
  196. metadata +199 -165
  197. data/vendor/vendor-ios/Box2D.framework/Box2D +0 -0
  198. data/vendor/vendor-ios/Box2D.framework/Box2D.framework.bridgesupport +0 -176
  199. data/vendor/vendor-ios/Box2D.framework/Versions/A/Box2D +0 -0
  200. data/vendor/vendor-ios/Box2D.framework/Versions/A/Resources/Box2DConfig.cmake +0 -3
  201. data/vendor/vendor-ios/Box2D.framework/Versions/A/Resources/CMakeLists.txt +0 -205
  202. data/vendor/vendor-ios/Box2D.framework/Versions/A/Resources/LICENSE +0 -22
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- ODczNzk5MjM1YzkyNWM0NDJlZjAxZjkzNDdlOGNhYmNjYmNkODY2MQ==
4
+ NmVlNDc5NzkzNDc5M2M5ZDg2ZDk5ZDM4YmU5OGU2NTI4M2QzMDgwNg==
5
5
  data.tar.gz: !binary |-
6
- NWVjMjU5MjA5NDM4YjViY2UzZjJhODc3Y2IxNWYzNzNmYzYyY2E5Mg==
6
+ NmJjN2MwMGI0ODRmYTI4YWIwOTc2YTYzYmZiMGY5NTExZTIwY2U2OQ==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- ODEzZTdmNmY3MGYzZTk2YTA4NDNkMGY0NjNjNmI1NGI1YTg5NzM4Y2ZiYzVl
10
- YWU1YTlkNWE3YTQ4NGNiN2EzYWRjZDkxNTFlYWM3NDEzMjI1ZWEzMTc5ZTIy
11
- Nzg2ZDUzZWFkYjhmODJhNjJhMDE5ZTgyMmEyZDlhZDUwNDgxZDg=
9
+ ZTRjMTJjNmMwM2JlY2NkODE3OGY4ZDI4MmViY2JhNThmMWJlZDIxMmE5ZDNk
10
+ YjY1NmE1YjI5ZjlmNzc3MDU5NTczOWJkZTQ0NjI3NmY5ZWQ1MDlhMjhkMTQ3
11
+ Y2FjMmE0N2YyY2M4ZjMzMDYwMmM4ODRiNTJhYjQ2NmZiZDBmYTA=
12
12
  data.tar.gz: !binary |-
13
- YTQxZjMzMDQ5MmM5YTg4NWQzMDVlNWQ0NzExMjcxNGM3MjNlMWFlNjAyYTdh
14
- NjE4N2E1ZDAwMjY4NTRkNTU4YTUyNzIxOGMxNzcwMjQ5NjE0NzZhYWQ5NWNh
15
- MjQ0NmNiYWJiZmI2OGE2YmViYzQ3YWMyYTFmNTE3OGJlYjc4MzI=
13
+ N2ViYmFhZmNhNmY3ODE2ZjE0ZGVmZjM3ODJiZmE5YTEwYmY4MWQzOTdlNTkz
14
+ MGI1NTcxZWE2YjcyMjBmNWI3MTQ2MTZhYjY0MGIzNzViNjMxZDUxZThhYzM4
15
+ MWVlM2Q4NDMyN2U2OWVhYWJmOWQyNWQ0NDlhNjBkN2FmNTE0Nzc=
data/README.md CHANGED
@@ -3,7 +3,7 @@ Introduced at [#Inspect 2013](http://www.rubymotion.com/conference/), Joybox is
3
3
 
4
4
  For more information, see the presentation: [Cocos2D, an Easier Way](https://speakerdeck.com/curveberyl/cocos2d-an-easier-way).
5
5
 
6
- ## Latest version history (0.0.6)
6
+ ## Latest version (0.0.6)
7
7
  * Added OSX development support. Use 'motion create --template=joybox-osx' to create
8
8
  an OSX project.
9
9
  * Added Ruby Motion Template support. Use 'joybox install' to install the templates (joybox-ios & joybox-osx)
@@ -16,7 +16,8 @@ For more information, see the presentation: [Cocos2D, an Easier Way](https://spe
16
16
  * IMPORTANT: Changed Sequence.new items:<array of actions> for Sequence.with actions:<array of actions> in Sequence class.
17
17
  * IMPORTANT: Typo fix in the Body class, changing edge_fixure and polygon_fixure to edge_fixture and polygon_fixture.
18
18
  * Better bridgesupport generation :D, thank you Laurent Sansonetti!
19
- * Added: mouse and keyboard events to joybox-osx.
19
+ * Added: mouse and keyboard events to joybox-osx.
20
+ * Added: Bug fixes in the Website! Thanks Francisco Granados!
20
21
  * Joybox is stopping the madness! **Thanks all** for your support!
21
22
 
22
23
  ## Documentation and Getting Started
@@ -24,6 +25,20 @@ If you are looking for the installation process and the documentation, please vi
24
25
 
25
26
  Also you can look at some examples in this repository: [Joybox - Examples](https://github.com/CurveBeryl/Joybox-Examples)
26
27
 
28
+ ## Troubleshoot Installation
29
+ If you run into troubles running your Joybox game, please do the following, in the root folder of your project:
30
+ ```
31
+ gem uninstall joybox -a
32
+
33
+ gem install joybox
34
+
35
+ rm .repl_history
36
+
37
+ rake clean
38
+
39
+ rake
40
+ ```
41
+
27
42
  ## Feedback and Help
28
43
  For questions, feedback, bug reports, use the project's [Issue Tracker](https://github.com/rubymotion/Joybox/issues).
29
44
 
@@ -35,6 +50,7 @@ If you wish to help us to stop the madness, there are some ways you can do it:
35
50
  * Box2D Wrapper (C++): [Joybox - Box2D](https://github.com/CurveBeryl/Joybox-Box2D)
36
51
  * Documentation (markdown): [Joybox - Documentation](https://github.com/CurveBeryl/Joybox-Documentation)
37
52
 
53
+ To contribute just:
38
54
 
39
55
  1. Fork it
40
56
  2. Create your feature branch (git checkout -b my-new-feature)
data/Rakefile CHANGED
@@ -1,5 +1,5 @@
1
1
  $:.unshift("/Library/RubyMotion/lib")
2
- require 'motion/project/template/ios'
2
+ require 'motion/project/template/osx'
3
3
  require 'bundler'
4
4
  Bundler.require
5
5
 
@@ -9,5 +9,4 @@ Motion::Project::App.setup do |app|
9
9
  app.name = 'Joybox'
10
10
  app.identifier = 'com.rubymotion.joybox'
11
11
  app.version = "0.0.1"
12
-
13
12
  end
@@ -26,44 +26,43 @@ Gem::Specification.new do |gem|
26
26
  gem.executables = ["joybox"]
27
27
 
28
28
  gem.post_install_message = <<-MESSAGE
29
- ** Joybox 0.0.6 **
29
+ ** Joybox 1.0.0 **
30
30
 
31
- * Added OSX development support. Use 'motion create --template=joybox-osx' to create
32
- an OSX project.
33
- * Added Ruby Motion Template support. Use 'joybox install' to install the templates (joybox-ios & joybox-osx)
34
- * Added Ruby Motion Command support. Use 'motion joybox:generate <class> <name>' to generate Sprites, Layers and Scene subclases and their respective specs.
35
- * Added Circle Shape to Box2D Fixtures. Thank you Kenichi Yonekawa!
36
- * Added Sprite Batch & Sprite Frame Cache full support.
37
- * Added Animations and Animate Action.
38
- * Added Bezier, Blink, Fade, Jump, Place, Spawn, Tint action. Thanks Gabriel Sosa!
39
- * Added Repeat.with actions:<array of actions> times:<number of times> method to Repeat class.
40
- * IMPORTANT: Changed Sequence.new items:<array of actions> for Sequence.with actions:<array of actions> in Sequence class.
41
- * IMPORTANT: Typo fix in the Body class, changing edge_fixure and polygon_fixure to edge_fixture and polygon_fixture.
42
- * Better bridgesupport generation :D, thank you Laurent Sansonetti!
43
- * Added: mouse and keyboard events to joybox-osx.
31
+ * Added REPL Support for iOS and OSX :D
32
+ * NOTE: If the iOS simulator starts on landscape orientation, please rotate and return it.
33
+ (cmd + => and cmd + <=)
34
+ * Added REPL Example Template. Use 'motion create --template=joybox-ios-example-repl <name>' or
35
+ 'motion create --template=joybox-osx-example-repl <name>'
36
+ * IMPORTANT: Typo fix in World class (Joybox, Box2D and Website), changing to continuous_physics the configuration, thank you David Czarnecki!
37
+ * IMPORTANT: Typo fix in Macros, changing jbpLenght to jpbLength, thank you David Czarnecki!
38
+ * Added: Clear extra lines in iOS Template. Thank you Willrax!
39
+ * Added: Examples iPhone 5 support
40
+ * Added: iOS Template iPhone 5 support
44
41
  * Joybox is stopping the madness! Thanks all for your support!
45
42
 
46
- _+880_____________________________
47
- _++88_____________________________
48
- _++88_____________________________
49
- __+880_________________________++
50
- __+888________________________+88_
51
- __++880______________________+88__
52
- __++888_____+++88__________+++8___
53
- __++8888__+++8880++88____+++88____
54
- __+++8888+++8880++8888__++888_____
55
- ___++888++8888+++888888++888______
56
- ___++88++8888++8888888++888_______
57
- ___++++++888888888888888888_______
58
- ____++++++88888888888888888_______
59
- ____++++++++000888888888888_______
60
- _____+++++++000088888888888_______
61
- ______+++++++00088888888888_______
62
- _______+++++++088888888888________
63
- _______+++++++088888888888________
64
- ________+++++++8888888888_________
65
- ________+++++++0088888888_________
66
- ________++++++0088888888__________
43
+ 0
44
+ 101
45
+ 01010
46
+ 1010101
47
+ 010101010
48
+ 10101010101
49
+ 0101010101010
50
+ 101010101010101
51
+ 01010101010101010
52
+ 1010101010101010101
53
+ 010101010101010101010
54
+ 1 1
55
+ 010 010
56
+ 10101 10101
57
+ 0101010 0101010
58
+ 101010101 101010101
59
+ 01010101010 01010101010
60
+ 1010101010101 1010101010101
61
+ 010101010101010 010101010101010
62
+ 10101010101010101 10101010101010101
63
+ 0101010101010101010 0101010101010101010
64
+ 1010101010101010101011101010101010101010101
65
+
67
66
  MESSAGE
68
67
 
69
68
  end
@@ -21,19 +21,17 @@ Motion::Project::App.setup do |app|
21
21
 
22
22
 
23
23
  cocos2d_vendor = File.expand_path(File.join(platform_vendor, "cocos_2d"))
24
- box2d_vendor = File.expand_path(File.join(platform_vendor, "Box2D.framework"))
24
+ box2d_vendor = File.expand_path(File.join(platform_vendor, "box_2d"))
25
25
 
26
26
  app.vendor_project(cocos2d_vendor,
27
27
  :static,
28
28
  :products => ["libcocos2d.a"],
29
- :headers_dir => "include",
30
29
  :bridgesupport_cflags => "-D__CC_PLATFORM_IOS -ISupport -IPlatforms -IPlatforms/iOS",
31
30
  :bridgesupport_exceptions => ["cocos_2d_exceptions.bridgesupport"])
32
31
 
33
32
  app.vendor_project(box2d_vendor,
34
33
  :static,
35
- :products => ['Box2D'],
36
- :headers_dir => "Headers")
34
+ :products => ['libBox2D.a'])
37
35
 
38
36
 
39
37
  # Scans app.files until it finds app/ (the default)
@@ -1,3 +1,3 @@
1
1
  module Joybox
2
- VERSION = '0.0.6' unless defined?(Joybox::VERSION)
2
+ VERSION = '1.0.0' unless defined?(Joybox::VERSION)
3
3
  end
@@ -1,6 +1,6 @@
1
1
  module Joybox
2
2
  module Configuration
3
-
3
+
4
4
  module_function
5
5
 
6
6
  def setup(&block)
@@ -18,6 +18,7 @@ module Joybox
18
18
  opengl_view unless @is_opengl_view_configured
19
19
  texture_2d unless @is_texture_2d_configured
20
20
  file_utils unless @is_file_utils_configured
21
+ debug unless @is_debug_configured
21
22
  end
22
23
 
23
24
 
@@ -64,5 +65,15 @@ module Joybox
64
65
  @is_file_utils_configured = true
65
66
  end
66
67
 
68
+
69
+ def debug(*hash)
70
+
71
+ hash = hash.pop
72
+
73
+ Debug.configure(hash)
74
+
75
+ @is_debug_configured = true
76
+ end
77
+
67
78
  end
68
79
  end
@@ -0,0 +1,27 @@
1
+ module Joybox
2
+ module Configuration
3
+
4
+ class Debug
5
+
6
+ def self.default_configuration
7
+ {
8
+ repl: false,
9
+ bounding_box: false
10
+ }
11
+ end
12
+
13
+ def self.configure(options = {})
14
+ options = options.nil? ? default_configuration : default_configuration.merge!(options)
15
+ options[:repl] = true if options[:bounding_box]
16
+
17
+ Object.send(:include, Joybox) if options[:repl]
18
+ Sprite.send(:include, Joybox::Debug::Node) if options[:repl]
19
+
20
+ Joybox::Debug.repl = options[:repl]
21
+ Joybox::Debug.bounding_box = options[:bounding_box]
22
+ end
23
+
24
+ end
25
+
26
+ end
27
+ end
@@ -0,0 +1,10 @@
1
+ module Joybox
2
+ module Debug
3
+
4
+ class << self
5
+ attr_accessor :repl
6
+ attr_accessor :bounding_box
7
+ end
8
+
9
+ end
10
+ end
@@ -0,0 +1,66 @@
1
+ module Joybox
2
+ module Debug
3
+ module Node
4
+
5
+ def self.included(base)
6
+ base.send(:attr_accessor, :proxy_view)
7
+ base.send(:attr_accessor, :bounding_box_layer)
8
+ end
9
+
10
+ def initialize
11
+ @proxy_view = ProxyView.alloc.initWithFrame(translated_bounding_box)
12
+ @proxy_view.userInteractionEnabled = false
13
+ @proxy_view.node = self
14
+ Joybox.director.view.addSubview(@proxy_view)
15
+
16
+ initialize_bounding_box_layer if Joybox::Debug.bounding_box
17
+ end
18
+
19
+ def initialize_bounding_box_layer
20
+ @bounding_box_layer = CALayer.layer
21
+ @bounding_box_layer.borderColor = UIColor.greenColor.CGColor
22
+ @bounding_box_layer.borderWidth = 2
23
+ @bounding_box_layer.frame = translated_bounding_box
24
+
25
+ @proxy_view.layer.addSublayer(@bounding_box_layer)
26
+ end
27
+
28
+ def cleanup
29
+ @proxy_view.removeFromSuperview
30
+ super
31
+ end
32
+
33
+ def translated_bounding_box
34
+ bounding_box = boundingBox
35
+ bounding_box.origin = bounding_box.origin.from_opengl_coordinates
36
+ bounding_box.origin.y = bounding_box.origin.y - bounding_box.size.height
37
+ bounding_box
38
+ end
39
+
40
+ def setPosition(position)
41
+ super
42
+ update_bounding_box
43
+ end
44
+
45
+ def setContentSize(size)
46
+ super
47
+ @proxy_view.removeFromSuperview if boundingBox.size.width == Screen.width
48
+ update_bounding_box
49
+ end
50
+
51
+ def nodeToParentTransform
52
+ update_bounding_box
53
+ super
54
+ end
55
+
56
+
57
+ private
58
+
59
+ def update_bounding_box
60
+ @proxy_view.frame = translated_bounding_box unless @proxy_view.nil?
61
+ @bounding_box_layer.frame = @proxy_view.bounds unless @bounding_box_layer.nil?
62
+ end
63
+
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,31 @@
1
+ module Joybox
2
+ module Debug
3
+
4
+ class ProxyView < UIView
5
+
6
+ attr_accessor :node
7
+
8
+ def to_s
9
+ @node.to_s
10
+ end
11
+
12
+ def position
13
+ @node.position
14
+ end
15
+
16
+ def position=(position)
17
+ @node.position = position
18
+ end
19
+
20
+ def method_missing(method, *args, &block)
21
+ if @node.respond_to?(method)
22
+ @node.send(method, *args, &block)
23
+ else
24
+ raise NoMethodError
25
+ end
26
+ end
27
+
28
+ end
29
+
30
+ end
31
+ end
@@ -16,6 +16,7 @@ module Joybox
16
16
 
17
17
  director unless @is_director_configured
18
18
  opengl_view unless @is_opengl_view_configured
19
+ debug unless @is_debug_configured
19
20
  end
20
21
 
21
22
 
@@ -42,5 +43,15 @@ module Joybox
42
43
  @is_opengl_view_configured = true
43
44
  end
44
45
 
46
+
47
+ def debug(*hash)
48
+
49
+ hash = hash.pop
50
+
51
+ Debug.configure(hash)
52
+
53
+ @is_debug_configured = true
54
+ end
55
+
45
56
  end
46
57
  end
@@ -0,0 +1,27 @@
1
+ module Joybox
2
+ module Configuration
3
+
4
+ class Debug
5
+
6
+ def self.default_configuration
7
+ {
8
+ repl: false,
9
+ bounding_box: false
10
+ }
11
+ end
12
+
13
+ def self.configure(options = {})
14
+ options = options.nil? ? default_configuration : default_configuration.merge!(options)
15
+ options[:repl] = true if options[:bounding_box]
16
+
17
+ Object.send(:include, Joybox) if options[:repl]
18
+ Sprite.send(:include, Joybox::Debug::Node) if options[:repl]
19
+
20
+ Joybox::Debug.repl = options[:repl]
21
+ Joybox::Debug.bounding_box = options[:bounding_box]
22
+ end
23
+
24
+ end
25
+
26
+ end
27
+ end
@@ -0,0 +1,91 @@
1
+ module Joybox
2
+ module Core
3
+
4
+ class Sprites < CCSprite
5
+
6
+ attr_accessor :view
7
+
8
+ class << self
9
+ alias_method :old_new, :new
10
+ end
11
+
12
+
13
+ alias_method :old_nodeToParentTransform, :nodeToParentTransform
14
+
15
+ def self.new(options={})
16
+
17
+ sprite = old_new(options)
18
+
19
+ if sprite.boundingBox.size.width < Screen.width
20
+
21
+ view = SpriteView.alloc.initWithFrame(sprite.boundingBox)
22
+ view.sprite = sprite
23
+
24
+ sprite.view = view
25
+
26
+ Object.send(:include, Joybox)
27
+
28
+ Joybox.director.view.addSubview(view)
29
+
30
+ end
31
+
32
+ sprite
33
+ end
34
+
35
+ def setPosition(position)
36
+ super
37
+
38
+ unless @view.nil?
39
+ @view.frame = self.boundingBox
40
+ end
41
+ end
42
+
43
+
44
+ def setContentSize(size)
45
+ super
46
+
47
+ unless @view.nil?
48
+ @view.frame = self.boundingBox
49
+ end
50
+ end
51
+
52
+
53
+ def nodeToParentTransform
54
+ return super if @body.nil?
55
+ setPosition(@body.position)
56
+ end
57
+
58
+ end
59
+
60
+
61
+ class SpriteView < NSView
62
+
63
+ attr_accessor :sprite
64
+
65
+ def to_s
66
+ @sprite.to_s
67
+ end
68
+
69
+
70
+ def forwardInvocation(invocation)
71
+ if @sprite.respondsToSelector(invocation.selector)
72
+ invocation.invokeWithTarget(@sprite)
73
+ else
74
+ super
75
+ end
76
+ end
77
+
78
+
79
+ def methodSignatureForSelector(selector)
80
+ if @sprite.respondsToSelector(selector)
81
+ p @sprite.class
82
+ Sprite.class.instanceMethodSignatureForSelector(selector) or @sprite.class.instanceMethodSignatureForSelector(selector)
83
+ else
84
+ super
85
+ end
86
+ end
87
+
88
+ end
89
+
90
+ end
91
+ end