Commit graph

400 commits

Author SHA1 Message Date
Richard Davey
5e4e6ca49f Tween.seek has been rewritten so you can now seek to any point in the Tween, regardless of repeats, loops, delays and hold settings. Fix #4409 2019-06-26 23:17:52 +01:00
Richard Davey
bd99ff36d8 New onActive callback 2019-06-26 17:45:32 +01:00
Richard Davey
c1578012c0 Tween now extends EventEmitter
Also added startDelay, hasStarted and new onActive callback. onStart now only fires when the Tween actually starts tweening. Lots of debug stuff left to remove.
2019-06-26 17:45:01 +01:00
Richard Davey
c89fac2288 Adding new Tween events 2019-06-26 17:43:43 +01:00
Richard Davey
d97fb97cf6 Typo 2019-06-26 00:36:47 +01:00
Richard Davey
ae591c1c34 Timeline.setTimeScale would only impact the Timeline loop and completion delays, not the actively running Tweens. It now scales the time for all child tweens as well. Fix #4164 2019-06-19 12:34:41 +01:00
Richard Davey
6d173434eb Looped Tween Timelines would mess-up the tween values on every loop repeat, causing the loop to fail. They now loop correctly due to a fix in the Tween.play method. Fix #4558 2019-06-19 12:23:24 +01:00
Richard Davey
bb27213f12 Improved jsdocs 2019-06-19 11:25:33 +01:00
Richard Davey
8f22f37dca Tween.restart wouldn't restart the tween properly. Fix #4594 2019-06-19 11:05:27 +01:00
samme
d9ecd70f59 Add TimelineBuilderConfig type and callbacks 2019-06-03 12:12:01 -07:00
samme
3ebd1839eb Docs for Tween 2019-06-03 12:09:04 -07:00
samme
0306aab176 Docs for Timeline 2019-06-03 12:08:45 -07:00
samme
8410f6b131 Add types for tween props configs 2019-06-01 10:24:15 -07:00
samme
8f2e774c4b Correct ease type 2019-05-30 16:11:34 -07:00
samme
7a98fe6d8a Add tween callbacks 2019-05-29 11:42:19 -07:00
samme
d6b3141b8b Add the remaining tween config properties 2019-05-29 10:45:55 -07:00
samme
a1e8668aee Extra properties for tween configs 2019-05-29 10:42:30 -07:00
samme
5018061751 Add NumberTweenBuilderConfig type 2019-05-28 13:13:39 -07:00
samme
c7af250100 Add TweenBuilderConfig type 2019-05-28 11:44:43 -07:00
Richard Davey
9f1946ec45 Tweens created in a paused state couldn't be started by a call to play. Fix #4525 2019-05-14 09:37:26 +01:00
Richard Davey
c91ed91ce3 License link update 2019-05-10 16:15:04 +01:00
Richard Davey
0a0330bdfc Tween Types 2019-05-09 12:40:41 +01:00
Richard Davey
2d3c905f53 Calling Tween.play on a tween that had already finished and was pending removal will stop the tween from getting stuck in an isPlaying state and will restart the tween again from the beginning. Calling play on a Tween that is already playing does nothing. Fix #4184 2019-04-08 16:25:31 +01:00
Richard Davey
e9c34c73a8
Merge pull request #3923 from Edwin222/comment
Fix a bug that tween delay doesn't applied after one loop of timeline(issue #3841)
2019-04-08 13:00:10 +01:00
Richard Davey
ded1320e8e Fixed issue with multiple calls to Tween.restart 2019-04-08 12:58:03 +01:00
Richard Davey
e53a0a1de2
Merge pull request #4087 from TadejZupancic/patch-1
Tween inside Timeline fix
2019-04-08 12:13:27 +01:00
Richard Davey
cd8fb4217a Tweens created with a duration of zero will now render for one frame before completing. Fix #4235 2019-04-08 11:18:42 +01:00
Richard Davey
bc10276b9e
Merge pull request #4449 from kyranet/patch-2
fix: Inconsistent return in TweenManager#makeActive()
2019-04-05 17:18:23 +01:00
Antonio Román
a55b106f12
fix: Inconsistent return in TweenManager#makeActive() 2019-03-28 13:06:19 +01:00
Antonio Román
e2a0c091ce
fix: Inconsistent return in Tween#pause() 2019-03-28 01:03:29 +01:00
Richard Davey
0897b78f8a Added remove method to fully nuke a tween from the manager. 2019-03-15 10:30:50 +00:00
Richard Davey
a799f5abf0 Added Tween.remove method. 2019-03-15 10:30:31 +00:00
Richard Davey
4fc817c519 Final batch of typedefs 2019-02-13 16:06:00 +00:00
Richard Davey
c85497b6c5 Fixing jsdocs 2019-02-12 11:59:31 +00:00
Richard Davey
ccaae460a4 Added jsdoc version numbers to each event 2019-02-12 11:37:58 +00:00
Richard Davey
a9d6951660 A Tween Timeline will now set it's internal destroy state _before_ calling either the onComplete callback or sending the COMPLETE event. This means you can now call methods that will change the state of the Timeline, such as play, during the callback handlers, where-as before doing this would have had the internal state changed immediately, preventing it 2019-01-30 15:49:08 +00:00
Richard Davey
9d5612c6df Added missing jsdocs 2019-01-23 23:49:04 +00:00
Richard Davey
bc962c25dc All listeners use the new Events 2019-01-18 13:41:43 +00:00
Richard Davey
550c9bb50e Added Timeline Events. 2019-01-17 18:38:48 +00:00
Richard Davey
aa341854c7 Happy New Year 2019-01-15 16:20:22 +00:00
Richard Davey
2780babe10 Final Doc Jam merge 2018-12-03 15:16:23 +00:00
Richard Davey
db0be54737 Fixed breaking Tween loop change and implemented PathFollower startAt in a slightly different way 2018-11-21 10:17:48 +00:00
Richard Davey
8cd45a72b2 ESLint fixes 2018-11-20 11:02:19 +00:00
Diego Teixeira
1cbceb215d
Setting initial current
Setting initial current location
2018-11-19 16:24:53 -02:00
Diego Teixeira
1db9e15a76
Getting startAt
Getting startAt config and using for current
2018-11-19 16:14:48 -02:00
Richard Davey
956a0913b8 Added new jsdocs 2018-10-22 12:12:31 +01:00
Richard Davey
4c4421c47f Docjam merge 2018-10-19 12:32:43 +01:00
Richard Davey
4b1c762296 Updated @memberOf to @memberof 2018-10-10 10:49:13 +01:00
TadejZupancic
5a93c7b474
Tween inside Timeline fix
The stop method in Tween assumed, that tween's parent was TweenManager. If the Tween has been added to the Timeline, that was not true and the stop method crashed.
2018-10-04 15:38:46 +02:00
Richard Davey
e297b3272e Added hundreds of new jsdoc descriptions 2018-10-01 11:35:01 +01:00
Richard Davey
b687f051e9 Added new jsdocs 2018-09-28 15:00:55 +01:00
Richard Davey
5fe6dbbe0c Added more jsdocs 2018-09-13 08:09:44 +01:00
Richard Davey
0436f1ff6d If you flagged a Tween as paused in its config, never started it, and then called Tween.stop it wouldn't ever be removed from the _pending array. It's now moved to the Tween Manager's destroy list, ready for removal on the next frame. Fix #4023 2018-09-12 14:54:08 +01:00
Edwin222
f44291133f Fix a bug that tween delay doesn't applied after one loop of timeline 2018-08-13 20:01:48 +09:00
Richard Davey
7aa46657c2 Tidying up jsdocs and changing float to number 2018-06-26 23:19:14 +01:00
Chris Andrew
4b5ab4e217 Documented most of the remaining PathFollower descriptions. 2018-06-21 13:19:52 +01:00
Richard Davey
e5fbcd5574 Calling Tween.play on a tween created via TweenManager.create wouldn't actually start playback until the tween was first added to the Tween Manager. Now, calling play will have it automatically add itself to the Tween Manager if it's not already in there. Fix #3763 2018-06-19 12:28:29 +01:00
cyantree
e578cd55fa Fixed endless loop in TweenManager.getTweensOf() 2018-06-01 01:25:46 +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
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
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
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
Antriel
47dc14079b fix Timeline#destroy 2018-04-10 14:19:51 +02:00
Richard Davey
833355a9a4 Tween.resume will now call Tween.play on a tween that was paused due to its config object, not as a result of having its paused method called. Fix #3452 2018-04-09 13:25:20 +01:00
Travis O'Neal
edb81c9096 Tween.Restart adds Tween back to the active list for the TweenManager to properly process and replay 2018-03-30 11:24:36 -04:00
Richard Davey
06998276ec Removed stict mode warning 2018-03-28 16:00:19 +01:00
Richard Davey
747f09af86 jsdoc fixes 2018-03-28 15:04:09 +01:00
Richard Davey
b3965fb5a2 Added TweenData type def 2018-03-21 16:23:48 +00:00
Richard Davey
a2352f2049 Renamed tween config defaults 2018-03-21 15:17:53 +00:00
orblazer
7fba122321 Fix "any" types 2018-03-20 17:15:49 +01:00
orblazer
44103dc475 Fix remaining multiple types 2018-03-20 16:12:42 +01:00
orblazer
454849d67d Update JSDoc on Tweens and Utils 2018-03-19 02:07:03 +01:00
Richard Davey
4ab98eb492 The TweenManager will now check the state of a tween before playing it. If not in a pending state it will be skipped. This allows you to stop a tween immediately after creating it and not have it play through once anyway. Fix #3405 2018-03-16 14:31:49 +00:00
Richard Davey
a524dc44b0 Expose constants. Fix #3387 2018-03-16 13:29:30 +00:00
Allan Reyes
a08c75bb06 Delegate Timeline#makeActive to TweenManager
This fixes a bug when calling Timeline#resetTweens() while the tweens
are pending removal or completed. Delegating the #makeActive method
here was chosen to:
- Follow "tell, don't ask" (pragprog.com/articles/tell-dont-ask)
- Prevent an additional branch conditional in Tween.js
- Prevent a Law of Demeter violation, e.g.

        // src/tweens/tween/Tween.js
        if (this.parentIsTimeline) // "asking"
        {
            this.parent.manager.makeActive(this); // LoD violation
        }
        else
        {
            this.parent.makeActive(this);
        }
2018-03-12 09:31:00 -07:00
Richard Davey
a89be7abc5 Tween.complete will allow you to flag a tween as being complete, no matter what stage it is at. If an onComplete callback has been defined it will be invoked. You can set an optional delay before this happens (thanks @Jerenaux for the idea)
Fix #3280
2018-02-28 21:14:56 +00:00
Richard Davey
997338c35b jsdoc fixes 2018-02-22 01:52:11 +00:00
Richard Davey
147dec11ab Tween.updateTweenData will now check to see if the Tween target still exists before trying to update its properties. 2018-02-22 01:50:36 +00:00
Richard Davey
e1554c34d6 eslint fixes 2018-02-16 18:07:49 +00:00
Richard Davey
6a9ac033e2 Fixed call to TweenManager.makeActive. Fix #3219 2018-02-13 21:55:07 +00:00
Richard Davey
eec13883e0 Removed rogue Tween emit calls. Fix #3222 2018-02-13 21:45:21 +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
d1f5f8a82b Added jsdocs 2018-02-12 16:01:21 +00:00
Greg
e9897c31f9 #3190 Tweens/Timeline parent.makeActive missing 2018-02-10 20:45:32 -05:00
Richard Davey
2dda99c1ab Added jsdocs 2018-02-10 17:51:02 +00:00
Richard Davey
5f39206f35 Added jsdocs 2018-02-10 17:40:40 +00:00
Richard Davey
da88485bc7 Added jsdocs 2018-02-10 17:14:35 +00:00
Richard Davey
38b6d2834b Added jsdocs 2018-02-10 17:11:36 +00:00
Richard Davey
2ece55c28e Renamed folder to match namespace 2018-02-10 14:56:08 +00:00
Richard Davey
bc87630d61 Added jsdocs. 2018-02-09 18:03:39 +00:00
Richard Davey
2a86400a28 Added in jsdocs 2018-01-31 13:54:44 +00:00
Antriel
975b2b59ca Fixed Tween.resume/pause. 2018-01-26 10:25:13 +01: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
5a333bc2fd Updated to new Plugin format, removed injection and mapping 2018-01-18 05:18:09 +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
7e5163adf0 Merged source. 2018-01-16 16:43:38 +00:00
Richard Davey
9a2eb0eb58 Merged source. 2018-01-16 16:37:34 +00:00
Richard Davey
d8f1ba03e9 Moved repository location 2018-01-09 21:43:56 +00:00