|
1 | 1 | # Change Log |
2 | 2 |
|
| 3 | +## Version 2.2.2 - "Alkindar" - 6th January 2015 |
| 4 | + |
| 5 | +### New Features |
| 6 | + |
| 7 | +* Phaser.Loader now supports BLOB urls for audio files (thanks @aressler38 #1462) |
| 8 | +* Line.reflect will calculate the reflected, or outgoing angle of two lines. This can be used for Body vs. Line collision responses and rebounds. |
| 9 | +* Line.normalAngle gets the angle of the line normal in radians. |
| 10 | +* Line.normalX and Line.normalY contain the x and y components of the left-hand normal of the line. |
| 11 | +* Line.fromAngle will sets this line to start at the given `x` and `y` coordinates and for the segment to extend at `angle` for the given `length`. |
| 12 | +* BitmapData.drawGroup draws the immediate children of a Phaser.Group to a BitmapData. Children are only drawn if they have their `exists` property set to `true`. The children will be drawn at their `x` and `y` world space coordinates. When drawing it will take into account the child's rotation, scale and alpha values. No iteration takes place. Groups nested inside other Groups will not be iterated through. |
| 13 | + |
| 14 | +### Updates |
| 15 | + |
| 16 | +* TypeScript definitions fixes and updates (thanks @clark-stevenson @Schmavery) |
| 17 | +* DOM.visualBounds now includes scroll bars (#1429) |
| 18 | +* The new fixed time-step code has been more carefully linked to Pixi transform updates. This should finally put a stop to the tunneling issues that were being reported. |
| 19 | +* Tween.stop fired a different set of onComplete parameters to Tween.update. Both now dispatch `onComplete(target, tween)`` as the parameters in that order (thanks @P0rnflake #1450) |
| 20 | +* Removed redundant `tolerance` parameter from Rectangle.intersects (thanks @toolness #1463) |
| 21 | +* Phaser.Graphics.drawCircle now overrides PIXI.drawCircle which means the docs are now correct re: diameter not radius (thanks @ethankaminski #1454) |
| 22 | +* Device.webAudio check inversed to avoid throwing a warning in Chrome. |
| 23 | +* Mouse.mouseMoveCallback is flagged as deprecated. |
| 24 | +* Remove `tw` and `th` init from TilemapLayer (thanks @nextht #1474) |
| 25 | +* Particles.Arcade.Emitter.makeParticles now checks the given `quantity` value against `Emitter.maxParticles`. If `quantity` is more than `maxParticles` then the `maxParticles` value is reset to the new `quantity` given (as this is how most devs seem to use it). |
| 26 | +* Particles.Arcade.Emitter.emitParticle now returns a boolean depending if a particle was emitted or not. |
| 27 | +* Particles.Arcade.Emitter.update only updates `_counter` if a particle was successfully emitted. |
| 28 | +* Phaser.Point.angleSq removed. It didn't work so any code relying on it would be broken, and it's unclear what it was meant for (thanks @nextht #1396) |
| 29 | +* BitmapData.copy `tx` parameter if `null` and `source` is a Display Object, it will default to `source.x`. |
| 30 | +* BitmapData.copy `ty` parameter if `null` and `source` is a Display Object, it will default to `source.y`. |
| 31 | + |
| 32 | +### Bug Fixes |
| 33 | + |
| 34 | +* Fix / double-copy for Safari tilemap bug when rendering with delta scrolling. This fixes tilemaps not appearing to update on Safari OS X and iOS specifically (thanks @pnstickne @neurofuzzy @lastnightsparty #1439 #1498) |
| 35 | +* Simplified call to `updateTransform`. This is the unified and verified fix for #1424 #1479 #1490 #1502 and solves issues with physics tunneling and visual glitches under the new time step code. |
| 36 | +* Tween.delay, Tween.repeat and Tween.yoyo will no longer throw an error if called before a TweenData object has been created (via Tween.to or Tween.from) (thanks @SomMeri #1419) |
| 37 | +* The click trampoline added for IE prevented Chrome for Android from being |
| 38 | +able to launch Full Screen mode with the default parameters for |
| 39 | +ScaleManger#startFullScreen (the desktop version of Chrome was not |
| 40 | +affected.). This is now fixed and additional compatibility settings (clickTrampoline) that can be used to configure when such is used. By default the 'when-not-mouse' mode is only enabled for Desktop browsers, where the |
| 41 | +primary input is ubiquitously a mouse. There are no known breaking compatibility changes - the Full Screen should be initiatable in Chrome for Android as it was in 2.1.x. The default Android browser does not support Full Screen (thanks @pnstickne) |
| 42 | +* TilemapParser now checks for image collections, avoiding crashes. These would arise with maps exported from the new release of Tiled (thanks @paul-reilly #1440) |
| 43 | +* Group.replace could still access `newChild.parent` after it was set to `undefined`. This unifies the approach (thanks @pnstickne #1410 #1417) |
| 44 | +* P2.postBroadphaserHandler updated to avoid skipping final 2 pairs. |
| 45 | +* The P2 World constructor wouldn't let you use your own config unless you specified both the gravity *and* broadphase. Now allows one or both (thanks @englercj #1412) |
| 46 | +* The RandomDataGenerator could be seeded with an array of values. However if the array contained a zero it would stop seeding from that point (thanks @jpcloud @pnstickne #1456) |
| 47 | +* Added extra checks to Sound.play to stop it throwing DOM Exception Error 11 if the `sound.readyState` wasn't set or the sound was invalid. Also wrapped `stop()`` call in a `try catch`. |
| 48 | +* Time.reset would incorrectly reset the `_started` property, now maps it to `Time.time` (thanks @XekeDeath #1467) |
| 49 | +* Fix floating point inaccuracy in Tween easing edge cases (thanks @jounii #1492) |
| 50 | +* Phaser.Signal was causing a CSP script-src violations in Cordova and Google Chrome Apps (thanks @elennaro #1494) |
| 51 | +* Added Events.onEnterBounds to the destroy method (thanks @legendary-mich #1497) |
| 52 | +* AnimationManager.destroy is now more careful about clearing up deep references (thanks @Arturszott #1449) |
| 53 | +* Ellipse.right and Ellipse.bottom setters fixed (thanks @nextht #1397) |
| 54 | +* Fixed double Ellipse.getBounds definition (thanks @nextht #1397) |
| 55 | +* TileSprite.loadTexture crashed when textures were updated in WebGL (thanks @pandavigoureux29 #1495) |
| 56 | + |
| 57 | +### Pixi.js 2.2.0 Updates |
| 58 | + |
| 59 | +* The strip class has now three extra properties, canvasPadding, paddingX, and paddingY : @darionco |
| 60 | +* Added mipmap option to to textures. |
| 61 | +* Added the ability to use GL_TRIANGLES when rendering Strips @darionco |
| 62 | +* Added the ability to tint the Graphics. |
| 63 | +* Fixed Y-flipped mask issue on render texture. |
| 64 | +* Fixed the issue where you could an alpha that is more than one and it would. |
| 65 | +* Fixed text issues when using accents. |
| 66 | +* Fixed sprite caching not clearing the previous cached texture : @kambing86 |
| 67 | +* Fixed arcTo issues. |
| 68 | +* Vertex buffer and and vertex shader optimisation and reduced memory footprint on the tint and alpha : @bchevalier |
| 69 | +* Applied the new generic updateTransform to spritebatch : @kambing86 |
| 70 | + |
3 | 71 | ## Version 2.2.1 - "Danabar" - 4th December 2014 |
4 | 72 |
|
5 | 73 | ### Bug Fixes |
@@ -137,10 +205,10 @@ required on mobile browsers. |
137 | 205 | * AudioSprite - removed an unnecessary if-statement (thanks @DaanHaaz #1312) |
138 | 206 | * ArcadePhysics.skipQuadTree is now set to `true` by default. A QuadTree is a wonderful thing if the objects in your game are well spaced out. But in tightly packed games, especially those with tilemaps or single-screen games, they are a considerable performance drain and eat up CPU. We've taken the decision to disable the Arcade Physics QuadTree by default. It's all still in there and can be re-enabled via `game.physics.arcade.skipQuadTree = false`, but please only do so if you're sure your game benefits from this. |
139 | 207 | * Phaser.DOM now houses new DOM functions. Some have been moved over from ScaleManager as appropriate. |
140 | | -* Key.justPressed has bee renamed to Key.downDuration which is a much clearer name for what the method actually does. See Key.justDown for a nice clean alternative. |
141 | | -* Key.justReleased has bee renamed to Key.upDuration which is a much clearer name for what the method actually does. See Key.justUp for a nice clean alternative. |
142 | | -* Keyboard.justPressed has bee renamed to Keyboard.downDuration which is a much clearer name for what the method actually does. |
143 | | -* Keyboard.justReleased has bee renamed to Keyboard.upDuration which is a much clearer name for what the method actually does. |
| 208 | +* Key.justPressed has been renamed to Key.downDuration which is a much clearer name for what the method actually does. See Key.justDown for a nice clean alternative. |
| 209 | +* Key.justReleased has been renamed to Key.upDuration which is a much clearer name for what the method actually does. See Key.justUp for a nice clean alternative. |
| 210 | +* Keyboard.justPressed has been renamed to Keyboard.downDuration which is a much clearer name for what the method actually does. |
| 211 | +* Keyboard.justReleased has been renamed to Keyboard.upDuration which is a much clearer name for what the method actually does. |
144 | 212 | * Keyboard.downDuration, Keyboard.upDuration and Keyboard.isDown now all return `null` if the Key wasn't found in the local keys array. |
145 | 213 | * The Phaser.Device class has been made into a singleton and removed it's dependency on Phaser.Game (thanks @pnstickne #1328) |
146 | 214 | * ArrayList has been renamed to `ArraySet` (as it's actually a data set implementation) and moved from the `core` folder to the `utils` folder (thanks @pnstickne) |
|
0 commit comments