Skip to content

Releases: melonjs/melonJS

melonJS 1.0.1

29 May 02:28
Compare
Choose a tag to compare
  • Core : removed unused Object.mixin method, (caused compatibility issues with socket.io and other libs)
  • Entity : disable falling flag when gravity is disabled
  • Entity : fix an exception in ObjectEntity.checkCollision()
  • Entity : fixed a regression on breakable tiles
  • Entity : use width and height by default if spritewidth and spriteheight are not defined
  • Entity : throw an exception if mandatory fields width and height are not defined
  • Entity : fixed an exception in ObjectEntity.flipX/Y()
  • Loader : fixed asset loading when named as a number
  • ObjectContainer : use cyclic zIndex by default instead of Infinity
  • Audio : sync'ed with last Howler version (as now officially and properly support CocoonJS)
  • Audio : melonJS now throws an exception when attempting to load audio assets before audio is initialized
  • TMX : fixed a potential issue with ImageLayer when ratio is set to 0 in Tiled
  • Font : fixed opacity property usage for me.BitmapFont object.
  • Renderable : added a tap and hold feature to the me.GUI_Object object (juhanapaavola)
  • Particles : fixed the particle emitter bounds (aaschmitz)
  • Input : added several keyboard keys for input mapping (aaschmitz)

melonJS 1.0.0

29 May 02:39
Compare
Choose a tag to compare
  • Core : now pass the elapsed time as a parameter when calling any object update function
  • Core : cleaned-up/renamed conflicting set function in shape and font objects
  • Core : added new shapes objects (Ellipse, Polygon) on top of the existing Rectangle one
  • Core : added a mixing property to object (insidiator)
  • Core : deprecated object manipulation (add, remove) have been removed from me.game
  • Core : renamed the me.entityPool API to me.pool and related functions (see documentation & upgrade guide)
  • Entity : deprecated helper function (doJump, doWalk) have been removed
  • ObjectContainer : renamed getEntityByProp to getChildByProp
  • ObjectContainer : getChildByProp now returns all matching object type and not only "entities"
  • Camera : camera bounds are now defined as a rectangle and not only in width and height
  • Loader : added resource information to loader progress event (warpten)
  • Loader : added loading of TMX data from javascript (json) objects (paulmedwal)
  • Color : melonJS now defines a new me.Color class for advanced color manipulation
  • Particles : added basic Particle System, with emitters and particles (ciangames/insidiator)
  • Particles : added a particle emmiter editor, see the example folder (insidiator)
  • Device : added full cross-browser support for the Fullscreen API (see me.device)
  • Device : added support for the vibration API (me.device.vibrate)
  • Device : renamed the me.save.delete function to me.save.removed (delete is a reserved keyword)
  • Device : added support for the visibilitychange API (pause/stop state on window show/hidden status)
  • Audio : modernised (and also mobile compatible) web audio API based on the awesome Howler library
  • Input : added the possibility to disable globally or per key the default browser action
  • Input : automatically enable keyboard even on desktop type devices
  • Input : the registerPointerEvent functio now only accepts the standardized Pointer Event names.
  • TMX : added proper support for all shape type (collision is still however resolved using AABB detection)
  • TMX : XML TMX map are now converted to a JXON object on-the-fly, allowing to remove duplicated parsing code
  • TMX : added the Tiled "type" property to TMXObject
  • TMX : melonJS will now respect the object size as defined in Tiled when parsing/creating related object in the game world
  • Timer : added a setTimeout and setIntveral function obeying the engine pause state
  • Tween : Fixed tweens to properly maintain time state when paused
  • Renderable : collisionBox has been replaced by a more cleaner implementation (see getShape/addShape/getBounds)
  • Renderable : the flicker function now takes the global flickering duration in ms (as opposed in frame count)
  • Renderable : removed the visible property

melonJS 0.9.11

29 May 07:43
Compare
Choose a tag to compare
  • Documentation : numerous fixes and improvements
  • General : fix initial loading for me.save, and update documentation
  • General : fix detection of localStorage on some phones (agmcleod)
  • General : fix uncaught exception when objects without a position vector are added to a container
  • Input : fully support event-driven key input with me.event.KEYDOWN and me.event.KEYUP
  • Input : multiple keys bound to the same action will no longer cancel each other
  • Input : fixed pointerEvent support on IE11
  • ObjectContainer : fixed rendering of nested containers (again) - Thanks to Peter Hull
  • ObjectContainer : fixed getEntityByProp with nested containers
  • Animation : (quick) fixed hWidth and hHeight not being updated when the frame size is different
  • Core : better support object reset through a onResetEvent function when using object pooling
  • Tween : updated the me.Tween object to be usable with the object pooling mechanism
  • Font : added a trimRight polyfill to the String class to help fixing multi-line ASCII rendering
  • Font : added a drawStroke function
  • Font : fixed a bug that broke some CSS font-family names, like monospace and "Trebuchet MS"

melonJS 0.9.10

29 May 07:43
Compare
Choose a tag to compare
  • Core : fixed object visible flag not being set based on their parent group visible status
  • Core : fixed both pauseOnBlur and StopOnBlur being enabled by default
  • TMX : fixed the imageLayer reset bug (when unsubscribing the viewport change event)
  • TMX : fixed an undefined tileset issue when adding a new Tile through the setTile function
  • Documentation : fixed the parameter value of the hasChild function
  • Renderable : moved the opacity related getter/setter function into the Renderable class
  • Renderable : fixed group opacity setting fully overwriting renderable opacity settings
  • ScreenObject : fixed cases where ScreenObjects may not be considered in the viewport
  • ObjectContainer : fixed rendering of nested containers

melonJS 0.9.9

29 May 07:43
Compare
Choose a tag to compare
  • General : added proper support for a jslint task and cleaned source code accordingly (nvlbg)
  • General : added a renderable container object (me.ObjectContainer) and reorganize me.game accordingly
  • General : added me.game.world as a reference to the game world root object container.
  • General : added a new me.save class to manage localStorage, and moved (deprecated) the old me.stat to the plugin repository
  • Core : improved game pause management (by swmuron)
  • Core : added a me.device object containing device specific capabilities and events (agmcleod)
  • Core : moved all device read-only flags to the new me.device object
  • Core : fixed Opera Mobile detection when sniffing user agent
  • Core : improved orientation change detection, added me.device.orientation and a specific minpubsub channel
  • Core : moved debug flags to the debugPanel plugin
  • Input : fixed accelerometer event registration when supported
  • Input : added support for windows 8 accelerometer (Halfman)
  • Input : improved mouse wheel event support to be compatible with all recent browsers
  • Input : added support for the touchCancel and mousecancel events
  • Input : added TAB key definition to key bindings (agmcleod)
  • Loader : refreshed the loader a bit, and added the new logo
  • Loader : fixed binary loader (agmcleod)
  • Video : added support for CocoonJS 1.4 ('antialias' parameter and the new dispose function)
  • Video : added proper support for video scaling on High-DPI devices (no longer requires the JS hack in the index HTML file)
  • Video : fix me.sys.scalingInterpolation when display is resized.
  • TMX : fixed default group opacity value not being applied to child objects.
  • TMX : optimized tile rendering, by using a tileset reference in Tile object
  • TMX : added preliminary support for non rectangular shapes in Tiled (although currently converted to me.Rect)
  • TMX : fixed multiple image backgrounds with ratio properties that are different values
  • TMX : fixed me.ImageLayer drawing being delayed by one frame
  • Font : Font objects now properly extend me.Renderable
  • GUI : HUD objects have been completely replaced by me.ObjectContainer; See Platformer example for new HUD implementation pattern.
  • Animation : the animationspeed property, now defines the delay between frames in terms of milliseconds (as opposed to framecount)
  • Animation : allow animation callback to prevent resetting to first frame by returning false really fixed this time
  • Shapes : new shapes added for future expansion: me.Ellipse, me.PolyShape
  • Shapes : me.Rect.getRect() renamed getBounds()
  • Tween : the tween implementation has been updated to the last official r11 version.
  • Camera : renamed the mislabeled worldToScreen and ScreenToWorld, and fixed a bug in one of the function.

melonJS 0.9.8

29 May 07:43
Compare
Choose a tag to compare
  • Renderable : added ShoeBox Packed Texture Support (see me.TextureAtlas)
  • Loader : the tps data type has been changed to a more generic json data type (agmcleaod)
  • Input : added MSPointer support (Halfman)
  • Input : normalized API and management of input event and enabled multi-touch for PointerEvent
  • Input : added throttling support for ****move events
  • Core : main loop now uses requestAnimationFrame by default with a fallback to setTimeout
  • Video : added the possibility to specify a maximum size when enabling video scaling
  • Video : automatically limit the maximum size if the corresponding CSS properties are set
  • TMX : added the possibility to specify different axis value for the scrolling ratio
  • Font : fixed drawing characters with charCode smaller than the firstChar value.
  • Renderable : allow animation callback to prevent resetting to first frame by returning `false
  • Core : added "Mobile" to me.sys.isMobile UA sniffer (fix Firefox OS detection)

melonJS 0.9.7

29 May 07:42
Compare
Choose a tag to compare
  • General : melonJS now uses Grunt, the task manager, for the build system
  • General : game objects will not update unless inside the viewport or obj.alwaysUpdate flag is enabled
  • Audio : preliminary audio support for mobile devices (iOS6 for now)
  • Core : added a me.sys.isMobile flag to detect running on a mobile device
  • Core : now using screencanvas extension for CocoonJS
  • Core : fixed me.game.remove() destroying the object too early
  • Entity : ObjectEntity is now composed with a renderable component (does not anymore inherit from AnimationSheet)
  • Entity : renderable default position is now set based on the me.ObjectEntity default anchor point.
  • Entity : fixed ladder collision detection/management
  • Examples : new collision_test example (see ticket #103)
  • Examples : new font_test example
  • Font : changed default alignement to left/top
  • Font : added multiline support for me.Font and me.BitmapFont
  • Geometry : most me.Vector2d methods return a reference to this, to allow method chaining
  • Input : added a me.input.unlockKey() function that allows to manually unlock key (DblK)
  • Loader : fixed loader when repeatedly calling the preloader
  • Renderable : new base class for any objects that needs to draw (Sprite, ImageLayer, GUI, etc...)
  • Renderable : added TexturePacker Support (see me.TextureAtlas)
  • TMX : fixed me.ImageLayer.ratio on Firefox & Opera
  • TMX : allows changing the imageLayer default origin using the imageLayer anchorPoint
  • TMX : added a new me.game.getEntityByProp() function (DblK)
  • TMX : added JSON map parsing support
  • TMX : small optimization for isometric rendering (pixelToTileCoords() function)
  • TMX : fixed access to inherited properties
  • TMX : added an entry point for a potential gzip/zlib TMX decompression plugin
  • TMX : fixed object positioning on isometric maps (andyveliz)
  • TMX : property value convention for automatically JSON-decoding; prefix with json:
  • Video : fixed viewport.shake()
  • Video : optimized framerate on cocoonJS platforms by using the 'screencanvas' extension
  • Video : disable video scaling interpolation by default

melonJS 0.9.6

29 May 07:42
Compare
Choose a tag to compare
  • General : fix compatibility issue with previous iOS(5.x) and Android version
  • Core : workaround for useNativeFrame when cancelAnimationRequest is not supported
  • Audio : added volume and mute control settings
  • Audio : added the possibility to stream audio elements
  • TMX : code optimization to lower memory usage
  • TMX : fixed layer scrolling when using pre-rendering
  • Loader : fixed me.loader.load not adding TMX into the me.levelDirector

melonJS 0.9.5

29 May 07:41
Compare
Choose a tag to compare
  • Audio : added mp4/aac pre-loading support
  • Audio : added codec selection based on audio support level
  • Core : fixed requestAnimationFrame
  • Core : added an official plugin API
  • Core : fixed a object removing and sorting lock issue
  • Core : added a 'floating' property for renderables
  • Core : added Object Pooling support
  • Core : fixed the me.game.getEntityByName function when using camelcase names
  • Debug : added a simple debug panel plugin
  • Font : fixed font name starting with a decimal value
  • Font : added changes to allow specifying a flat number of px,em, etc for font sizes.
  • Font : added support for comma separated font names like in CSS
  • Event : added Daniel Lamb minPubSub library for event publishing
  • Event : fixed touch event support detection on cocoonJS
  • Event : added click, dblclick, tap events
  • Event : fixed mouse event conflict and mousewheel event
  • Geometry : added a function to return the angle between two vectors
  • Input : me.GUI_Object's onClicked() function has been renamed to onClick()
  • Loader : use asynchronous mode when loading XML files
  • Entity : added spacing and margin capacities for sprite (same as Tile Map Sprite)
  • Entity : fixed flickering when using requestAnimationFrame
  • Entity : added opacity setting
  • Entity : fixed visible property automatic setting
  • Entity : moved collision check outside of the Entity Object
  • Entity : cleaned and renamed the collision utility function
  • Entity : added the possibility to check for multiple collision
  • Entity : added a collideType function to check for collision with a specific type
  • Entity : moved collisionBox from SpriteObject to Entity Object
  • Entity : added a distanceToPoint, angleTo and angleToPoint function
  • Tween : fixed tween when pausing game
  • Tween : various fixes and optimization from the official repository
  • TMX : fixed a bug that was preventing a non visible layer to be set visible later
  • TMX : fixed the clearTile function on non visible layers (e.g. collision map)
  • TMX : added official support for Opacity in TiledLayer, TMXLayer, colorLayer and ImageLayer
  • TMX : added support for TSX files
  • TMX : added a repeat property to Image Layer instances, similar to CSS background-position
  • TMX : parallax layer is now based on the new "official" Image Layer support (from Tiled 0.9.0)
  • TMX : fixed the getObjectGroupByName() function
  • TMX : added support for custom tile type
  • Tutorial : fixed camel case issue in resource names
  • Tutorial : update the parallax part to reflect last changes in melonJS (Image Layer)
  • Video : added support for display scaling
  • Video : added a setImageSmoothing function
  • Example : added "whack-a-mole" as an official example
  • Example : added a new "platfomer" example (using legal assets) and removed alex kidd based examples

melonJS 0.9.4

29 May 07:41
Compare
Choose a tag to compare
  • General : melonJS is now only using Google Closure (removed YUI compressor)
  • General : melonJS is now ES5 strict mode compliant
  • General : added a .editorconfig file to provide basic rules to editors
  • Core : added a flag to enable/disable automatic pause on loosing/gaining focus
  • Core : fixed rendering loop when using requestAnimationFrame (parasyte)
  • Core : added a renderCollisionMap debug setting (parasyte)
  • Core : use console.error instead of window.alert
  • Core : added the possibility to specify a user-defined sort function
  • Core : fixed mixing screenObject added as object, and TMX level loading
  • Core : fixed screenObject when extending update & draw function
  • Entity : added an anchor point for renderables (through SpriteObject)
  • Entity : added rotation support (through SpriteObject)
  • Entity : added the possibility to pause an animation (parasyte)
  • Entity : fixed default position by using top-left coordinates as in Tiled
  • Entity : fixed invisible entities being removed when colliding
  • Font : fixed me.Font horizontal alignement
  • General : fixed & enhanced object/memory deallocation when switching levels
  • General : rewrote the parallax code using the new Generic Image Layer Object
  • General : added support for vertical parallax layer
  • Geometry : added a function to test for vector "equality"
  • Geometry : added a couple of Self function (to help avoid object creation)
  • Loader : fixed a case issue between filename and asset name
  • Input : added the possibility to check for mouse event based on world or screen coordinates
  • Input : fixed a false-positive issue at initialization, and usage of special keys (parasyte)
  • TMX : added dynamic layer rendering (configurable globally or per layer through Tiled)
  • TMX : added Image Layer Support (Tiled daily builds only)
  • TMX : added support for the new map background property (Tiled daily builds only)
  • TMX : added a Color Layer (used when a background color is defined)
  • TMX : another round of clean-up and various bug fixing
  • TMX : added support for TMX Object without name (parasyte)
  • TMX : added preliminary support for polygon and polyline objects (parasyte)
  • TMX : fixed visible flag and user-defined properties not being applied to ObjectGroup
  • TMX : fixed rendering issue with transformed tiles (AD, H, V)
  • TMX : fixed display of map being smaller than the viewport
  • TMX : fixed TMXObject not being declared correctly under the "me" namespace
  • Utils : fixed the HexToRGB function and added support for the 3 char format (#hhh)
  • Tween : fixed exception in the tween library (parasyte)
  • Documentation : corrected and added missing documentation