- Replace Box2D.js with Planck.js physics engine
- Update all require paths from 'Lib/Vendor/Box2D' to 'Lib/Vendor/Planck'
- Convert Box2D contact listeners to Planck.js event system
- Fix all method name capitalization (Get* -> get*, Set* -> set*)
- Update collision detection system for Planck.js compatibility
- Server now starts successfully and basic physics working
- Character can land on platforms - core physics functional
Major milestone: Game now running on modern, maintained physics engine
When a user leaves the channel, some items need to be cleared of
their fingerprints (lastTouchedBy). This feature was broken
because it used the this.gameObjects pool which was no longer in
use.
The channel GameController now triggers an event to which all
items are subscribed to and if it is triggered, all items with that
users fingerprints clear themselves off those.
Fixes#170
In order to not provide deep exposure to PlayerController,
we refactored it so that it is not visible anymore outside Player.
Also we renamed isInBetweenGames to inBetweenRounds.
Moved creation of PlayerController from GameController(s) to
The channel Player and client Me.