Releases: melonjs/melonJS
Releases · melonjs/melonJS
melonJS 0.9.5
- 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
- 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
melonJS 0.9.3
- General : better error management and reporting
- General : added a dummy console.log for platforms not supporting it
- General : melonJS now uses Google Closure for library minification
- General : added a global gravity setting that will override entities default value if defined
- Core : now properly calls all objects onDestroyEvent function when resetting game
- Core : added the possibility to define a callback when a level is fully loaded
- Core : added a couple of utility functions (degToRad, radToDeg)
- Core : fixed GUID creation when passing a non string parameter
- Core : only check for collision when the projection vector is set
- TMX : global rewrite, code optimization and clean-up
- TMX : added support for isometric map loading and display
- TMX : added support for perspective map loading and display
- TMX : relaxed TMX property case sensitive checks
- TMX : added tile rotation support (Tiled 0.8.0)
- TMX : fixed level name property not being set, and use it when required
- LevelDirector : fixed the nextLevel & previousLevel functions
- Loader : added binary file support
- Loader : added possibility to dynamically load any resources (i.e. during the game)
- AnimationSheet : the entire sprite-sheet is now use to create the default animation
- Entity : fixed CollisionBox not being properly used on y axis when checking for collision
- Entity : fixed CollisionBox issue when dealing with sub-pixel positioning
- Entity : fixed setVelocity not setting y velocity when x velocity is null
- Entity : added missing properties (GUID, name) in InvisibleEntity
- Entity : fixed res.obj not defined in InvisibleEntity
- HUD : added a removeItem function
- GUI : rewrote the GUI Object accordingly to the new event management
- Geometry : added a containsPoint function
- Geometry : added a floor() and ceil() function to Vector2d
- BitmapFont : fixed BitmapFont ignoring 'center' alignment
- BitmapFont : avoid implicit object conversion when rendering a bitmapFont
- Input : fixed use of numeric keys by using a proper constant value.
- Input : rewrote mouse event management
- Input : added touch event management (with mouse event emulation)
- Input : (beta) multitouch support
- Input : added Accelerometer event management
- Documentation : added a lots of missing documentation on various API
- Documentation : added JS syntax highlighting in the tutorial
- Documentation : don't use onDestroyEvent to manage score in the examples
- Documentation : exposed more TMX objects and APIs
melonJS 0.9.2
- General : melonJS is now licensed under the terms of the MIT License
- General : added some Cake magic, allowing to use melonJS with CoffeeScript (by scan)
- General : added melonJS UML Class Diagram in the official repository (by Ben2303)
- General : melonJS now properly stays in it's own namespace (me)
- Audio : configurable behavior in case of audio loading error
- Core : fixed a shaking bug when collision box is not aligned with the sprite box
- Core : fixed collision detection bug (object being tested again itself)
- Core : refactored fading function using Tween objects (API CHANGE, see documentation)
- Core : added a helper method to know the sign of an number
- Core : corrected variables definition (global->local)
- Core : added a GUID (Game Unique Identifier) to objects
- Core : getEntityByName now also returns non Entity Object (like layers)
- Core : fixed state change when using custom state values
- Core : me.game.collide now also returns an object reference in the collision vector
- Core : renamed and correctly initialize the localStorage flag capability
- Documentation : various documentation correction and improvements
- Entity : added friction management
- Entity : updateMovement function now returns a collision "vector" (API CHANGE, see documentation)
- Entity : refactored/cleaned-up movement/collision function
- Entity : added support for multiline spritesheet (fixed cell size)
- Entity : added the possibility to define a specific transparent color for spritesheet
- Entity : implemented a resize function, allowing to resize a sprite on the fly
- Entity : optimized/refactored SpriteObject
- Entity : fixed object with 1 single sprite (no animation) not begin updated
- Entity : added the possibility to also specify a callback when an animation is over
- Entity : fixed an initialization issue when using melonJS without a Tilemap
- GUI : corrected me.GUI_Object and added missing documentation
- GUI : marked me.GUI_Object as deprecated, as it will be rewritten in a next release
- Event : also cancel event bubbling
- Font : added support for multiline fontsheet
- HUD : added a setItemValue() function
- HUD : corrected display issue on Opera
- Loader : added possibility to add graphics resources after pre-loading (e.g. ingame)
- TMX : use native Base64 decoding when available
- Viewport : object to follow can either be a Object Entity or a position Vector
- Viewport : fixed default value (if parameter not specified) for Axis to follow on
- Video : cleaned-up the applyRGBFilter function
melonJS 0.9.1
- Core : "cache image" option (disabled by default) to use canvas instead of directly using Image Object
- Core : add onPause and onResume callback when game is paused/resumed on losing/gaining focus
- Core : added possibility to pass more than 1 extra argument to me.state.change (extra arguments will be passed to the reset function of the target object)
- Core : object can now only be destroyed using me.game.remove(obj), made of ObjectEntity.destroy a private function
- Core : beta dirty Rectangle support (only working for non scrolling level for now)
- Core : experimental webGL wrapper
- Core : added a getEntityByName function
- Core : fixed some kind of "lag" issues when deleting objects
- Core : improved the requestAnimFrame usage, and fallback to setInterval. me.sys.useNativeAnimFrame to enable it (disable by default)
- Core : optimized the way objects are managed in the game loop
- Core : defined (and used) a Object.defineProperty function to replace defineGetter / defineSetter (was not supported on IE9/IE10)
- TMX : implemented Tiled "transparency" property for Tileset, allowing to specify which color should be transparent (note: this slows down level loading)
- TMX : fixed unnecessary canvas creation for the collision layer (should free some memory)
- TMX : cleaned/optimized data loading and fixed an issue on FF with XML parsing of "big" Base64 encoded maps (only first nodeValue was parsed by the engine)
- TMX : added support for CSV data encoding
- TMX : added support for flipped tiles, as supported in Tiled 0.7
- TMX : added multiple tileset support
- TMX : added a "background_image" property. To be set through Tiled, and allowing to specify a fix background.
- Entity : merge AnimatedSpriteObject into SpriteObject. SpriteObject now takes an optional additional argument to create an animated sprite
- Entity : added a distanceTo function
- Viewport : fixed camera refresh when changing "deadzone" values
- Loader : added a "onProgress" callback to get progress notification, removing the need to poll the loader each frame for loading progress
- Loader : fix progress notification when TMX files are loaded into the levelDirector
- Loader : added a retry counter for the audio loading : script will now stop and throw an exception after 3 unsuccessful loading attempts.
- Video : renamed "applyEffect" to "applyRGBFilter", and fixed an issue on Opera
- Audio : fixed compatibility issues with IE9/10
- Geometry : added a merge function to me.Rect
melonJS 0.9.0
- Documentation : API documentation using jsdoc-toolkit (finally!)
- Geometry : define getter for me.Rect coordinates (simplify code)
- Level : support for fadeOut/fadeIn effect in me.LevelEntity (when changing levels)
- Entity : correctly implemented InvisibleEntity Objects (no longer inherit from ObjectEntity)
- Entity : makes SpriteObjet inherit from me.Rect (make it easier to manage sprite pos and size)
- Loader : cosmetic update of the preloader screen
- Viewport : "rounding" issue fix in the viewportEntity (~~30% less CPU usage on Safari/OSX!)
- TMX : cleaned & refactored tilemap collision detection (still not perfect though)