Richard Davey
9c9e9cecbb
Updated log and lint fixes
2018-07-10 16:49:53 +01:00
Richard Davey
cd508ab3f1
The ScenePlugin
will now queue all of the following ops with the Scene Manager: start
, run
, pause
, resume
, sleep
, wake
, switch
and stop
. This means for all of these calls the Scene Manager will add the call into its queue and process it at the start of the next frame.
2018-07-09 14:08:55 +01:00
Richard Davey
7aa46657c2
Tidying up jsdocs and changing float to number
2018-06-26 23:19:14 +01:00
Richard Davey
f1190529d2
ScenePlugin.start
and ScenePlugin.restart
will now always queue the op with the Scene Manager, regardless of the state of the Scene, in order to avoid issues where plugins carry on running for a frame before closing down. Fix #3776
2018-06-26 16:35:45 +01:00
Richard Davey
b95f980023
Added in data object passing to all relevant methods #3748
2018-06-26 16:08:14 +01:00
Richard Davey
43fd10bbc1
ScenePlugin.run
is a new method that will run the given Scene and not change the state of the current Scene at all. If the scene is asleep, it will be woken. If it's paused, it will be resumed. If not running at all, it will be started.
2018-06-08 15:07:00 +01:00
Michael B
e322ed7916
jsdoc fixes
2018-05-18 02:56:32 +02:00
Richard Davey
350cb037b7
All systems now register themselves with the new PluginCache
2018-05-15 12:51:50 +01:00
Richard Davey
be330e609e
Moved PluginManager to new location
2018-05-10 17:14:33 +01:00
Richard Davey
a14ce15685
Fixed setActive and setVisible
2018-05-01 12:35:56 +01:00
Richard Davey
5d3c06d8b7
ScenePlugin.getIndex will return the index of the given Scene in the Scene List.
2018-05-01 01:23:19 +01:00
Richard Davey
b0544c73b8
jsdoc fixes
2018-04-18 13:29:22 +01:00
Richard Davey
55965c748f
jsdoc fixes
2018-04-18 12:13:49 +01:00
Richard Davey
1be486fab4
destroy
only called once, no matter how many times the Scene restarts. Fix #3581
2018-04-17 12:25:45 +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
a56465fdad
jsdoc tweak
2018-04-14 12:35:28 +01:00
Richard Davey
2b4e5ecd23
Is scene is asleep, wake it rather than start it
2018-04-14 04:28:39 +01:00
Richard Davey
370fbdd5f2
Added transition progress, sleep support and better checking
2018-04-14 04:23:57 +01:00
Richard Davey
616d17fa83
Sorted out the scene event order, targets and callbacks
2018-04-13 20:12:29 +01:00
Richard Davey
cfb1826da9
Added new test feature
2018-04-13 18:59:00 +01:00
Richard Davey
18a6cf8ad1
eslint fixes
2018-04-13 18:09:16 +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
bf368ab70b
ScenePlugin.restart allows you to restart the current Scene. It's the same result as calling ScenePlugin.start
without any arguments, but is more clear.
2018-04-09 12:56:28 +01:00
Chris Andrew
e047977f52
Documented the ScenePlugin class.
2018-04-02 18:29:23 +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
Nicolas Challeil
53de26e572
pass data to the manager queue
2018-03-14 23:52:00 +01:00
migiyubi
decbe18705
Make scene restartable
2018-03-08 20:27:22 +09:00
Richard Davey
95d85576c9
SceneManager.moveAbove and moveBelow added.
...
SceneManager.moveAbove will move a Scene to be directly above another Scene in the Scenes list. This is also exposed in the ScenePlugin.
SceneManager.moveBelow will move a Scene to be directly below another Scene in the Scenes list. This is also exposed in the ScenePlugin.
2018-03-02 18:25:44 +00:00
Richard Davey
a993251dea
ScenePlugin.swapPosition now allows you to use it to swap the positions of any two Scenes. Before the change it only allowed you to swap the position of the calling Scene and another one, but a new optional keyB
argument opens this up.
2018-03-02 17:47:01 +00:00
Richard Davey
98930de3a8
The SceneManager has a new method: remove
which allows you to remove and destroy a Scene, freeing up the Scene key for use by future scenes and potentially clearing the Scene from active memory for gc.
2018-03-02 03:50:55 +00:00
Travis Chase
ca0366bfc8
launching a scene that is not running will now pass data through when start op is called for this scene in the scene process queue
2018-02-26 22:04:58 -07:00
AleBles
697d096221
Added data to ScenePlugin, fixes #3180
2018-02-22 12:34:19 +01:00
Rafael Barbosa Lopes
7d64c12e66
Removed unused queue property in ScenePlugin
.
2018-02-19 10:00:52 -03:00
Richard Davey
d23688c3e4
Added eslint fixes and overrides
2018-02-16 18:44:07 +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
5ad167a8bf
Added jsdocs
2018-02-12 16:18:34 +00:00
Richard Davey
d1f5f8a82b
Added jsdocs
2018-02-12 16:01:21 +00:00
Richard Davey
123c8f8127
Calls to the Scene Manager that happen before the Scene is running are now queued
...
Thanks to gdomaradzki for bringing this one to my attention!
2018-01-23 02:12:33 +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
2deb9edc9e
Plugins now check to see if the Scene is already booted and adapt accordingly.
2018-01-18 14:00:31 +00:00
Richard Davey
53ec770696
Renamed to the correct class name: ScenePlugin
2018-01-18 05:20:00 +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
ca7550aa6f
Moved plugins
2018-01-16 18:38:29 +00:00