/fantomEngine

fantomEngine - A game framework for Monkey X (mojo1)

Primary LanguageMonkeyMIT LicenseMIT

fe_logo fantomEngine

A 2D game framework for Monkey X

Description

fantomEngine is a 2D game framework (module) for Monkey X that was created to give game developers more time to work on the actual game play than on setting up render routines, update process chains and stuff like that.

With fantomEngine you will write only fractions of the code you did before.

Features

fantomEngine provides a lot of feature like these:

  • Various objects like images, tile maps, graphic primitives, sounds, collision zones and layers.
  • Automatic processes to create, update and render objects.
  • Callback methods which are called during the handling of an object, layer, timer and transitions.
  • Layer transitions with callback methods.
  • Object transitions for position, rotation, scaling and alpha values with callback methods.
  • Several equation and ease types for object and layer transitions.
  • Object timers with callback methods.
  • Different collision methods with callback methods.
  • Touch input handling with callback methods.
  • Organize your objects in layers.
  • Automatic content scaling via providing a virtual canvas setup.
  • Simple high-score list loading, saving and updating.
  • Simple sound loading which handles the proper file extension depending on the chosen platform.
  • Support for bitmap font text objects which load EzGUI font descriptions.
  • Build-in frames per second calculator.
  • Extensive handling methods for the engine's objects.
  • Simple camera support which you can move around to render parts of your scenery.
  • Support for texture maps (atlas) created by the tool TexturePacker.
  • Support for tile maps created by the tool Tiled.
  • Engine time scaling supporting object updates, timers and transitions.
  • Automatic swipe gesture detection with event method.
  • Path/Waypoint handling. Let your objects follow them.
  • A pathfinding* und user definable grids of nodes. It doesn't have to be a grid of squares!
  • Easy integration of Box2D powered physics including ray casting. Physics definition created by the tool PhysicsEditor are supported too.
  • Localize your game easily with easy support of multiple languages.
  • Support different key maps for different controllers or user definitions.
  • Embedded objects inside a Tiled map will be stored and are accessable.
  • Easy scene/room management.
  • Objects can be composed of several single images.
  • Automatic object pooling.
  • Custom GUI elements