Final one, I went through the source code this time so I know its 99% matching your latest commit brining it upto par with 2 completely.
Congratulations on reaching 2! Phaser is amazing, and without the well documented code, I would be stumped.
ArcadePhysics.Body.reset incorrectly set the Body.rotation to Sprite.rotation instead of angle.
Emitter.emitParticle resets the rotation on the particle to zero before emitting it.
Lots of fixes to the TypeScript definitions file (thanks as always to clark-stevenson for his tireless work on these)
Emitters now bring the particle they are about to emit to the top of the Group before doing so. Avoids particles hidden behind others.
ArcadePhysics.Body.setSize corrected to take the parameters as positive, not negative values.
ArcadePhysics.Body now checks the Sprite scale automatically and adjusts the body size accordingly (fix#608)
Emitter.particleClass can now be set to any object that extends Phaser.Sprite, which will be emitted instead of a regular Sprite.
SAT removed
Physics modules should all be updated correctly #599
Misc updates from the last week of dev.
So the TS is upto date and it should be easy to maintain with the latest changes.
The only thing that bothers me is the historic references to <2.0 and the pre-pixi "any". That kind of thing will be my next update.
My final questions though are these!
1) displayObject: any can this now be considered PIXI.DisplayObject or should I keep "any"?
2) When an argument can either be a string or a number. Are you stuck with "any" or is there a concept I am missing in TypeScript? It is the same with stuff like "p2.Constraint". In this situation, is it wise to create an IConstraint which all constraints implement, rather than having "any" or is that just even more confusing?
I would like my next pass through to be as acceptable as possible.
Removed un-needed cache vars from ArcadePhysics.World.
Tidied up ArcadePhysics.Body and fixed rotation parameters.
Every single Arcade Physics Example now runs perfectly under this release.
Added Device.getUserMedia detection.
Updated config.php so you can toggle physics engines on/off via flags.
Updated Gruntfile.js so it builds a Phaser + Pixi but no Physics libs.
Will maybe be sketchy (a few Any's - p2.Shape or p2.Constraint etc). Also I may have messed up a couple of types (Phaser.Physics.p2.Body vs p2.Body).
Also fixed#585
This includes the latest changes made to Phaser.d.ts today. (Body)
I am pretty lost in the whole Physics Body definitions stuff so generally only do limited edits there.
Thanks to @natelong for Maintaining the original PIXI definitions.
Updated to 1.5.2 PIXI.
Needs testing. May be missing updates from the dev branch of Phaser 1.2 that occurred in the last few days.
Warning! I made Phaser.point extend PIXI.Point. It was the only way I could get this to work.
If class property position is PIXI.Point
And you try to overlay position with Phaser.Point
I get "X cannot extend Y type mismatch" for a whole bunch of classes. Only when I extend PIXI.Point does the errors dissapear.
Also was not sure to include PIXI in this file or a separate one.
Fixed issue where renderOrderID wasn't being assigned correctly, causing the Input Handler to be unable to select the "top" item on a display list (would all default to zero)
Fixed issue where Stage would assign renderOrderIDs in reverse, should be in sequence.
Fixed issue where objects where checking World for the currentRenderOrderID by mistake instead of Stage.
Basically, input handling works a lot better now for Groups and nested objects :)