• Stars
    star
    280
  • Rank 147,492 (Top 3 %)
  • Language
    Ruby
  • License
    MIT License
  • Created almost 12 years ago
  • Updated almost 6 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Cocos2D & Box2D Wrapper for Ruby Motion - Currently out of date an unmaintained :-(

Joybox Build Status

Currently this project is unmaintained, if you are interested in picking it up please open an issue and let us know! In the meantime take a look at SpriteKit and SceneKit for iOS and OS X.

Introduced at #Inspect 2013, Joybox is the easiest way to build 2D games for iPhones and iPads using RubyMotion. Joybox combines the most popular and widely used 2D game engine for iOS, Cocos2D, folds in the amazing Box2D physics engine, and then wraps them up into a clean Ruby API that will make game development faster and more enjoyable for both beginners and experts alike.

For more information, see the presentation: Cocos2D, an Easier Way.

Latest version (1.1.0)

Physics

  • Support for all Shapes and Listeners.
  • Filters, AABB computations, Queries and Ray Casts.
  • Collision support for Physics Sprites.
  • Experimental support for actions on Physics Sprites.
  • Physics Debug Draw.

Effects and Background Music

  • AudioEffect and BackgroundAudio to playback background music and special effects.

Tile Maps Support

  • Support for TMX Maps using the TileMap class.

Actions

  • Complete actions

Gestures

  • Support the default gestures on OSX.

Commands

  • Adds joybox:retina command to create a Retina version of a TMX Map.

Sprites

  • Support for custom options on the Sprite initialization.

Source Code

  • The commands and templates now install automatically.
  • Added 218 specifications and 617 requirements.

Critical Changes

  • Node: The method add_childs is now add_children.

  • SpriteFrameCache: The method where now starts from 1 instead of 0.

  • Animation: The delay method is now delay_units, and total_delay is now delay_per_unit.

  • Menu: The method align_items_in_columns now receive an array for defining how many columns and how many items in which of them.

  • Physics: Now every object returns their values in pixel coordinates and degrees, if you still need to use the metric values you can access them with the prefix metric_. For example: metric_position.

  • World: The Method continuos_physics is now deprecated.

  • Physics Collisions: Now for use when_collide method of the World instance, you need to pass an instance of a PhysicsSprite and it will return in the block the colliding physics sprite if available, or the body that is colliding.

  • Point: The methods to and from pixel coordinates are now inverted, there was an incorrect naming.

Documentation and Getting Started

If you are looking for the installation process and the documentation, please visit: joybox.io

Also you can look at some examples in this repository: Joybox - Examples

Troubleshoot Installation

If you run into troubles running your Joybox game, please do the following, in the root folder of your project:

gem uninstall joybox -a

gem install joybox

rm .repl_history

rake clean

rake

Troubleshoot the REPL

If the iOS application starts in landscape orientation, please rotate and return it to the original orientation.

(cmd + <= & cmd + =>)

Feedback and Help

For questions and feedback use the project's Google Group

For bug reports use the project's Issue Tracker.

Contributions

If you wish to help us to stop the madness, there are some ways you can do it:

To contribute just:

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Added some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

License

Joybox is released under the MIT License.

Authors

Cocos2D: Ricardo Quesada, Zynga and contributors cocos2d for iPhone

Box2D: Erin Catto Box2D | A 2D Physics Engine for Games

Joybox: Juan JosΓ© Karam @JuanKaram and Gabriel Sosa @mexinsane and contributors

More Repositories

1

BubbleWrap

Cocoa wrappers and helpers for RubyMotion (Ruby for iOS and OS X) - Making Cocoa APIs more Ruby like, one API at a time. Fork away and send your pull requests
Ruby
1,181
star
2

sugarcube

Some sugar for your cocoa. RubyMotion helpers.
Ruby
422
star
3

ib

IB Outlets for rubymotion
Ruby
253
star
4

afmotion

AFMotion is a thin RubyMotion wrapper for AFNetworking
Ruby
215
star
5

motion-cocoapods

Integrate 3rd-party libraries in RubyMotion for iOS / OS X projects via CocoaPods
Ruby
203
star
6

motion-support

Commonly useful extensions to the standard library for RubyMotion
Ruby
132
star
7

motion-firebase

A RubyMotion wrapper for the Firebase SDK. Adds more rubyesque methods to the built-in classes.
Ruby
48
star
8

motion-provisioning

Simplified provisioning for RubyMotion iOS, tvOS and macOS apps.
Ruby
46
star
9

motion-sqlite3

A minimal wrapper over the SQLite 3 C API for RubyMotion
Ruby
33
star
10

motion-authentication

A simple, standardized authentication helper for common authentication strategies for RubyMotion apps.
Ruby
11
star
11

motion-authorization

Simple and intuitive authorization solution for RubyMotion. Inspired by CanCan and Pundit.
Ruby
10
star
12

motion-http

A cross-platform HTTP client for RubyMotion that's quick and easy to use.
Ruby
7
star
13

motion-turbo

Turbo Native for RubyMotion
Ruby
6
star
14

motion-lager

Full featured logger for use in RubyMotion apps.
Ruby
5
star
15

motion-expect

Bring RSpec 3.0 expect syntax to RubyMotion
Ruby
3
star
16

BubbleWrap-HTTP

BubbleWrap's (now deprecated) HTTP library
Ruby
3
star
17

motion-settings

Easily store and retrieve your user's preferences and settings using NSUserDefaults.
Ruby
1
star