Commit graph

41 commits

Author SHA1 Message Date
Richard Davey
b95f980023 Added in data object passing to all relevant methods #3748 2018-06-26 16:08:14 +01:00
rook2pawn
44a0813591 [feat] scene.run can now pass data to .wake and .resume if it needs to invoke those methods
update javadoc for scene and scene systems
2018-06-22 03:32:17 -07:00
Richard Davey
579f5bf4a1 Added the new sceneUpdate reference property. 2018-06-12 16:21:37 +01:00
Richard Davey
6906e6bd15 Hundreds more jsdocs completed. 2018-06-04 15:19:25 +01:00
Richard Davey
0b1d32b571 New registerFileType argument, new Global Plugin mapping and createEntry method
* PluginManager.registerFileType has a new property `addToScene` which allows you to inject the new file type into the LoaderPlugin of the given Scene. You could use this to add the file type into the Scene in which it was loaded.
* PluginManager.install has a new property `mapping`. This allows you to give a Global Plugin a property key, so that it is automatically injected into any Scenes as a Scene level instance. This allows you to have a single global plugin running in the PluginManager, that is injected into every Scene automatically.
* PluginManager.createEntry is a new private method to create a plugin entry and return it. This avoids code duplication in several other methods, which now use this instead.
2018-05-18 18:43:27 +01:00
Richard Davey
350cb037b7 All systems now register themselves with the new PluginCache 2018-05-15 12:51:50 +01:00
Richard Davey
e431cc33f9 Moved plugins file to DefaultPlugins and changed the namespace 2018-05-11 14:06:13 +01:00
Richard Davey
be330e609e Moved PluginManager to new location 2018-05-10 17:14:33 +01:00
Richard Davey
e1532b3154 The Scene Systems will emit a ready event when it has fully finished starting up and all plugins are available. Fix #3636 2018-05-01 12:22:18 +01:00
Richard Davey
55965c748f jsdoc fixes 2018-04-18 12:13:49 +01:00
Richard Davey
1507dcf448 eslint fix 2018-04-16 17:16:07 +01:00
Richard Davey
b28a7276f4 Fixed Game.destroy 2018-04-16 17:02:32 +01:00
Richard Davey
bd023c20df Clear listeners on shutdown, tighten up the flow and allow you to remove a scene after transition 2018-04-15 23:14:56 +01:00
Richard Davey
ce7d67297f Moving from 3.4.1 to 3.5.0 so we can release new camera fx and scene transitions 2018-04-15 12:44:47 +01:00
Richard Davey
352ec91bb5 New methods to determine if a Scene is transitioning 2018-04-14 04:24:21 +01:00
Richard Davey
6b2307594a Scene plugin flow overhaul
Every Plugin has been updated to correctly follow the same flow through the Scene lifecycle. Instead of listening for the Scene 'boot' event, which is only dispatched once (when the Scene is first created), they will now listen for the Scene 'start' event, which occurs every time the Scene is started. All plugins now consistently follow the same Shutdown and Destroy patterns too, meaning they tidy-up after themselves on a shutdown, not just a destroy. Overall, this change means that there should be less issues when returning to previously closed Scenes, as the plugins will restart themselves properly.
2018-04-13 17:12:17 +01:00
Richard Davey
66a9bec9bb Only set data if it's not undefined. 2018-04-09 12:57:03 +01:00
Richard Davey
c1e5aa72ef Added jsdocs for TS defs export 2018-04-03 15:08:48 +01:00
Richard Davey
91008232ad jsdoc fixes 2018-03-29 13:12:07 +01:00
Richard Davey
f1e646c9ee jsdoc fixes 2018-03-28 15:39:57 +01:00
orblazer
dcd80375c0 Fix "object" types on Renderer and Scene 2018-03-21 14:41:17 +01:00
orblazer
44103dc475 Fix remaining multiple types 2018-03-20 16:12:42 +01:00
Richard Davey
4fe6a25117 Added jsdoc data types 2018-03-19 11:25:46 +00:00
orblazer
6a4dd8db8f Update JSDoc on Renderer and Scene 2018-03-19 01:59:59 +01:00
Richard Davey
e44ce76214 Scene.Systems resize handler added. 2018-02-28 17:18:40 +00:00
Richard Davey
8f4a1012fd Updated jsdocs. 2018-02-13 01:39:22 +00:00
Richard Davey
2813ac8162 Moved PluginManager and merged configs into single root file for easier changing. 2018-02-12 23:03:48 +00:00
Richard Davey
b6b8f70550 DisplayList now just extends List and removed the Plugin, as it acts as its own plugin now. 2018-02-12 16:59:57 +00:00
Richard Davey
d1f5f8a82b Added jsdocs 2018-02-12 16:01:21 +00:00
Richard Davey
fd9cf6c1f7 Added jsdocs 2018-02-12 15:18:31 +00:00
Richard Davey
a802914243 Added in destroy methods for all managers and invoked them from Game 2018-01-31 03:38:10 +00:00
Richard Davey
9988e4eb5b Removed un-needed files and moved plugins around. 2018-01-26 05:21:45 +00:00
Richard Davey
f9cc2a9714 Scene now sets a status flag for every state it goes through, allowing the manager to know when to allow updating and rendering 2018-01-20 16:22:40 +00:00
Richard Davey
f676fc2bbd Recoded the SceneManage
The Scene Manager no longer tries to maintain an 'active' list and instead just iterates the scenes in order, skipping those that aren't awake. Scene array changing events like moveUp etc are queued if the list is being processed and the ScenePlugin has been vastly updated to take care of this. You can now happily move scenes around the list, block scene input, consume input events, switch scenes around and more.
2018-01-20 04:47:03 +00:00
Richard Davey
fb7cdbf29b Added ability to load plugins from external files and have them register with the PluginManager. 2018-01-18 16:48:25 +00:00
Richard Davey
69dbe38c9f Scene.Systems keeps track of it's booted, so plugins know how to respond to the boot event (or not). You can now also load a plugin into a Scene at runtime. 2018-01-18 13:59:37 +00:00
Richard Davey
c8d859c6a4 Systems now does everything based on events and config files, no more creation of its own plugins 2018-01-18 05:20:57 +00:00
Richard Davey
ddba95873d Moved Arcade and Impact Physics over to the new plugin system 2018-01-17 03:41:58 +00:00
Richard Davey
f9a7939812 Lots of work migrating to the new plugin system, fixing references and exposing on the namespace 2018-01-16 22:28:29 +00:00
Richard Davey
8e07320596 Migrating to plugins 2018-01-16 19:49:13 +00:00
Richard Davey
674c1b5ba8 Moving plugins to their own locations 2018-01-16 18:34:37 +00:00
Renamed from src/scene/local/Systems.js (Browse further)