Commit graph

11696 commits

Author SHA1 Message Date
Richard Davey
3dff7f07d2 Tween needs to persist 2022-09-27 21:12:47 +01:00
Richard Davey
951006bf8f Create NineSlice.js 2022-09-27 18:42:50 +01:00
Richard Davey
62f3315b1c Trying DynamicTexture (to replace RenderTexture) 2022-09-27 18:42:46 +01:00
Richard Davey
b13232c211 Moved nineslice out, use multi pipeline and make snapshot functions smaller 2022-09-27 16:59:01 +01:00
Richard Davey
35bae05603 Allow negative offsets 2022-09-27 13:29:34 +01:00
Richard Davey
e15f2414d6 Update TextureManager.js 2022-09-26 23:18:12 +01:00
Richard Davey
90ad29e958 Renamed frameFill to repeat and made it a lot more flexible.
Added resetStamp and removed un-used methods.
2022-09-26 23:18:07 +01:00
Richard Davey
9ca7513b14 Use Tween.callbackScope fix #6229 2022-09-26 21:42:24 +01:00
Richard Davey
291f3049e6 RenderTexture.isDrawing is a new read-only flag that tells if the Render Texture is currently batch drawing, or not. 2022-09-26 18:32:31 +01:00
Richard Davey
3d3db60331 Fixed repeating methods 2022-09-26 18:06:28 +01:00
Richard Davey
af66164302 Testing 9-slice 2022-09-26 18:00:15 +01:00
Richard Davey
1283ca8198 The TextureManager.get methof can now accept a Frame instance as its parameter, which will return the frames parent Texture. 2022-09-26 17:18:04 +01:00
Richard Davey
ff4d7084d9 Update IsPlainObject.js 2022-09-26 17:15:45 +01:00
Richard Davey
3d0d2b4d94 The GameObject#setFrame method can now accept a Frame instance as its parameter, which will also automatically update the Texture the Game Object is using. 2022-09-26 17:15:34 +01:00
Richard Davey
25ab9f329d TextureManager.parseFrame is a new method that will return a Texture Frame instance from the given argument, which can be a string, array, object or Texture instance. 2022-09-26 15:28:41 +01:00
Richard Davey
5320402a07 The endFrame and startFrame properties of the SpriteSheet parser wouldn't correctly apply themselves, the Texture would still end up with all of the frames. It will now start at the given startFrame so that is frame zero and end at endFrame, regardless how many other frames are in the sheet. 2022-09-24 21:35:58 +01:00
Emil Schnedler Vad
340f9d29a1 made seek use less then instead of less or equal 2022-09-23 22:00:30 +02:00
Emil Schnedler Vad
f07042cbc4 BaseTween and TweenChain available from Phaser.Tweens 2022-09-23 20:53:51 +02:00
Emil Schnedler Vad
169faa6b96 made tweenManager# chain use TweenChainBuilderConfig 2022-09-23 13:07:16 +02:00
Richard Davey
ab04cb6c05 Lots of LightPipeline improvements
* The Light Pipeline no longer creates up to `maxLights` copies of the Light shader on boot. Previously it would then pick which shader to use, based on the number of visible lights in the Scene. Now, the number of lights is passed to the shader and branches accordingly. This means rather than compiling _n_ shaders on boot, it now only ever needs to create one.
* You can now have no lights in a Scene, but the Scene will still be impacted by the ambient light. Previously, you always needed at least 1 light to trigger ambient light (thanks jstnldrs)
* The `Light.frag` shader now uses a new `uLightCount` uniform to know when to stop iterating through the max lights.
* The `LightPipeline.LIGHT_COUNT` constant has been removed as it's not used internally.
* The `LightPipeline` previous created a global level temporary vec2 for calculations. This is now part of the class as the new `tempVec2` property.
2022-09-23 00:42:04 +01:00
Richard Davey
a135271f19 Use new uLightCount uniform 2022-09-23 00:41:47 +01:00
Richard Davey
b789742636 Update Utils.js 2022-09-22 14:55:29 +01:00
Richard Davey
9d43583a63 This shader is just better. More crappy iOS testing needed though. 2022-09-21 23:13:04 +01:00
Richard Davey
023343c789 All events have a type of string. Fix #6136 2022-09-21 22:01:03 +01:00
Richard Davey
10fe5db0a6 Fixed jsdocs
Fix #6195
2022-09-21 21:10:52 +01:00
Richard Davey
71703ff19c GameConfig.stableSort is a new optional property that will control if the internal depth sorting routine uses our own StableSort function, or the built-in browser Array.sort one. Only modern browsers have a _stable_ Array.sort implementation, which Phaser requires. Older ones need to use our function instead. Set to 1 to use the legacy version, 0 to use the ES2019 version or -1 to have Phaser try and detect which is best for the browser
Ref #6217
2022-09-21 17:52:57 +01:00
Richard Davey
cf397b7c13 Added missing safariVersion and new es2019 test 2022-09-21 17:35:47 +01:00
Richard Davey
7c9d6a180b Testing native stable sort 2022-09-21 16:34:08 +01:00
Richard Davey
17415902ab The Texture.destroy method will only destroy sources, dataSources and frames if they exist, protecting against previously destroyed instances. 2022-09-21 14:06:58 +01:00
Richard Davey
4dcf3b1622 Getting ready for Beta 11 2022-09-20 23:23:26 +01:00
Richard Davey
6fe41a4845 Fix path 2022-09-20 22:24:27 +01:00
Richard Davey
06b1adca14 Lint fix 2022-09-20 22:23:09 +01:00
Richard Davey
6c70869ea4 Lots of jsdoc / TS fixes 2022-09-20 22:17:21 +01:00
Richard Davey
c5610630a1 Lots of jsdoc fixes and Tween State updates 2022-09-20 18:44:44 +01:00
Richard Davey
2834dba8d0 jsdoc fixes 2022-09-20 17:36:31 +01:00
Richard Davey
a4d7c6d680 Fixed destroy 2022-09-20 16:39:01 +01:00
Richard Davey
ded399e727 Call addFrame 2022-09-20 13:09:01 +01:00
Richard Davey
e42c814af8 Corrected jsdocs 2022-09-20 13:08:53 +01:00
Richard Davey
009ad199bf Updated to use the new BaseTweenData to avoid duplicate props and methods 2022-09-20 12:40:28 +01:00
Richard Davey
e2389927ea Create BaseTweenData.js 2022-09-20 12:40:15 +01:00
Richard Davey
6e0566ced4 Fixed target getting bug 2022-09-19 23:24:23 +01:00
Richard Davey
c6338aab5f Merge branch 'master' of https://github.com/photonstorm/phaser 2022-09-19 22:52:44 +01:00
Richard Davey
09b7901380 Supports making TweenFrameData 2022-09-19 22:52:39 +01:00
Richard Davey
9b70d1c998 Added addFrameData method 2022-09-19 22:52:26 +01:00
Richard Davey
ff8d86c516 Force yoyo for repeat (or it all looks wrong) 2022-09-19 22:52:15 +01:00
samme
cfb92c6957 Give TilemapLayer origin (0, 0) 2022-09-19 08:33:33 -07:00
Richard Davey
ef5f40c1b8 Support TweenFrameData 2022-09-16 18:53:47 +01:00
Richard Davey
4e40a6941a Create TweenFrameData.js 2022-09-16 18:53:35 +01:00
Richard Davey
f7583926cc t1 and t2 don't need to be properties 2022-09-16 18:53:30 +01:00
Richard Davey
d42122d05b Added completeAfterLoop method 2022-09-16 17:50:18 +01:00
Richard Davey
618891bcda The TextureManager.addSpriteSheet method will now allow you to pass in a Phaser Texture as the 2nd parameter. This allows you to add sprite sheet data to textures that came from external sources, such as SVG files or canvas elements. 2022-09-15 22:30:59 +01:00
Richard Davey
0b14cc4898 Update BaseTween.js 2022-09-14 23:22:34 +01:00
Richard Davey
20e8c183c2 Fixed 2022-09-14 22:34:08 +01:00
Richard Davey
fc231a23b2 Fixed path 2022-09-14 14:16:44 +01:00
Richard Davey
de8614356d All method and property jsdocs done 2022-09-13 23:34:19 +01:00
Richard Davey
b419f79b6a Added remove method 2022-09-13 23:34:09 +01:00
Richard Davey
673a7251d4 Make the creation methods a lot more flexible 2022-09-13 22:54:18 +01:00
Richard Davey
94b3e19c75 Remove un-used method 2022-09-13 22:54:02 +01:00
Richard Davey
3429946b13 Update TweenChainBuilder.js 2022-09-13 22:53:51 +01:00
Richard Davey
c05d8d6c6c All method and property docs done. Fixed init, restart and others. 2022-09-13 22:53:45 +01:00
Richard Davey
b8a3cf9232 Extends BaseTween and start delay and lots of other fixes 2022-09-13 18:47:12 +01:00
Richard Davey
a2b349d745 Extends BaseTween 2022-09-13 18:46:57 +01:00
Richard Davey
c6250fe62c Update TweenBuilderConfig.js 2022-09-13 18:46:46 +01:00
Richard Davey
20ff1c99ec add can now take Tween instances and chain uses the new TweenChainBuilder 2022-09-13 18:46:41 +01:00
Richard Davey
de53735e93 Added START_DELAY const 2022-09-13 18:45:20 +01:00
Richard Davey
2c5cdf7023 Removed non-BaseTween methods 2022-09-13 18:45:11 +01:00
Richard Davey
8705f2a606 If you pass in a tween, return it. Also use merged defaults and base type 2022-09-13 18:44:56 +01:00
Richard Davey
1a509fbd98 Create TweenChainBuilder.js 2022-09-13 18:44:36 +01:00
Richard Davey
6c2fc3fcba Working on BaseTween again so Chain can share the features 2022-09-13 13:16:31 +01:00
Richard Davey
bdbadd1339 Update CreateGroupLayer.js 2022-09-12 20:17:11 +01:00
Richard Davey
96203aac19 Swap to use TweenChain 2022-09-12 18:50:01 +01:00
Richard Davey
bfce0c147b Update Tween.js 2022-09-12 18:49:53 +01:00
Richard Davey
0f6977c03e Update TweenChain.js 2022-09-12 18:49:49 +01:00
Jernej Habjan
f8030d5ed8 Lint fixes 2022-09-11 10:34:58 +02:00
samme
1a5320dc08 Rope and Video already on update list 2022-09-10 08:44:43 -07:00
samme
ed7c999a0a Update video texture after loading
loadURL() or loadMediaStream()
2022-09-10 08:42:53 -07:00
Richard Davey
672fe0c97f Create TweenChain.js 2022-09-08 22:57:50 +01:00
Richard Davey
4e866b6046 onComplete can handle the pending state 2022-09-08 22:57:47 +01:00
Richard Davey
bdce1b255f Update index.js 2022-09-08 21:36:28 +01:00
Richard Davey
5a7949b391 Refactored updated to handle progress better 2022-09-08 18:54:19 +01:00
Jernej Habjan
272f61eda2 Improve visible children performance 2022-09-08 19:18:45 +02:00
Richard Davey
145832ed93 Destroying a WebAudioSound in the same game step as destroying the Game itself would cause an error when trying to disconnect already disconnected Web Audio nodes. WebAudioSound will now bail out of its destroy sequence if it's already pending removal. 2022-09-08 14:53:02 +01:00
Rex
05d4d87b2c Get viewport under a camera 2022-09-08 09:52:18 +08:00
Richard Davey
3f89904040 Fixed a bug where setting repeat and hold would cause the Tween to include one final hold before marking itself as complete. It now completes as soon as the final repeat concludes, not after an addition hold. 2022-09-07 22:40:35 +01:00
Richard Davey
f3d798d4b4 Rename to avoid conflict with tween property of same name 2022-09-07 22:05:40 +01:00
Richard Davey
a2a492bb9f Optimize the update flow with new countdown boolean 2022-09-07 18:49:28 +01:00
Richard Davey
fd17a6c569 Fixed state setter 2022-09-07 18:41:50 +01:00
Richard Davey
783254f47a
Merge pull request #6213 from vzhou842/delta-smoothing-max-fix
Fix delta history array length
2022-09-07 18:26:20 +01:00
Richard Davey
a421b1057a Add jsdocs so TypeScript won't complain #6200 2022-09-07 18:24:55 +01:00
Richard Davey
ec412b08a5 Tidy up 2022-09-07 18:24:26 +01:00
Richard Davey
135c504035 Removed INIT as no longer used 2022-09-07 18:11:32 +01:00
Richard Davey
f3c53b4c55 Added all of the state methods and swapped to using them
Reduces code complexity, improves readability, reduces duplicated code
2022-09-07 18:11:24 +01:00
Richard Davey
2482eab664 Added Game.pause and Game.resume methods 2022-09-07 16:11:13 +01:00
Victor Zhou
213dc394bc Fix delta history array length 2022-09-06 14:36:04 -07:00
Richard Davey
3aaf9b1dbd Reset the delta and elapsed for more accurate timing 2022-09-06 18:50:14 +01:00
Richard Davey
9fc45df7ac Update Tween.js 2022-09-06 18:50:01 +01:00
Richard Davey
68c560064c All of the 'Scope' tween configuration callback properties have been removed, including onActiveScope, onCompleteScope, onLoopScope, onPauseScope, onRepeatScope, onResumeScope, onStartScope, onStopScope, onUpdateScope and onYoyoScope. You should set the callbackScope property instead, which will globally set the scope for all callbacks. You can also set the Tween.callbackScope property. 2022-09-06 15:38:05 +01:00
Richard Davey
2f638d4abe You can now specify a target property as 'random' to have the Tween pick a random float between the two given values. For example: alpha: 'random(0.25, 0.75)'. If you wish to only select a random integer, you can use 'int' instead: x: int(300, 600)'. 2022-09-06 15:34:02 +01:00
Richard Davey
ca571b2571 Update TweenData.js 2022-09-05 18:54:21 +01:00
Richard Davey
b0797af3d8
Merge pull request #6201 from samme/fix/no-audio-sound-manager-missing-methods
Add missing NoAudioSoundManager methods
2022-09-05 18:35:26 +01:00
Richard Davey
a79cb668aa
Merge pull request #6202 from samme/fix/render-texture-snapshot-pixel-alpha
Fix wrong alpha in snapshot pixel
2022-09-05 18:34:03 +01:00
Richard Davey
fea706cdf0
Merge pull request #6206 from zpxp/master
Show WebGL error code
2022-09-05 18:32:45 +01:00
Artem
754ed600d1
fix function Graphics -> strokeRoundedRect
added max radius
2022-09-03 16:50:29 +03:00
Richard Davey
d058d216ed Starting to refactor for new TweenData format 2022-09-02 18:56:40 +01:00
Richard Davey
e22009f585 Don't pass value if no interpolation func 2022-09-02 18:56:26 +01:00
Richard Davey
46739819db Added jsdocs and returned TweenData 2022-09-02 18:56:04 +01:00
Richard Davey
e0202e6953 No need for ternary check 2022-09-02 18:55:53 +01:00
Richard Davey
02a6989ec7 Uses string based callback approach 2022-09-02 18:14:51 +01:00
Richard Davey
9da43d3af4 jsdoc updates and tidying up 2022-09-02 18:10:24 +01:00
Richard Davey
4eea1e75b3 Use GetValue for numeric-only properties 2022-09-02 18:10:08 +01:00
Richard Davey
072c709d04 Update GetNewValue.js 2022-09-02 18:09:52 +01:00
Richard Davey
2fc5c358f1 Finished jsdocs and tidied up some functions 2022-09-02 18:09:46 +01:00
Richard Davey
9cb86916ab Added new typedefs for states and TweenData 2022-09-02 18:09:30 +01:00
Richard Davey
b60fa310be Update Tween.js 2022-09-02 16:20:49 +01:00
Richard Davey
8b6bdba654 Just use targetIndex plus tidied up functions 2022-09-02 16:20:39 +01:00
Richard Davey
05659d2b6b Refactored TweenData into a class to aid the VM in knowing its shape 2022-09-02 00:56:22 +01:00
Richard Davey
be6d69b574 Updated new timestep system, added full docs 2022-09-01 18:54:42 +01:00
Richard Davey
13e812bea0 Lots of tidying up and refactoring 2022-09-01 18:54:27 +01:00
Richard Davey
32bf211131 Removed unused const 2022-09-01 18:54:17 +01:00
Richard Davey
6aea1e7c94 Update TweenManager.js 2022-09-01 00:00:05 +01:00
Richard Davey
af18ffd564 Testing new timing system 2022-08-31 18:55:40 +01:00
Richard Davey
465d6727b0 Switch setTimeout order to avoid double-length frames 2022-08-31 17:11:01 +01:00
Richard Davey
18e639a37a Consolidated init, seek and calcDuration into a single method 2022-08-31 13:48:37 +01:00
Richard Davey
6e69ecdb0c Corrected the jsdocs 2022-08-31 12:50:25 +01:00
Richard Davey
9eb364e3a2 Trying new flow 2022-08-30 23:45:19 +01:00
Richard Davey
b352deff83 create accepts an array as well 2022-08-30 22:06:48 +01:00
Richard Davey
95d0dbb624 RenderTexture.fillFrame is a new method that will take a given texture and draw it to the Render Texture as a fill-pattern. You can control the offset, alpha and tint of the draw 2022-08-30 22:06:34 +01:00
Richard Davey
0781e0f05b Better chain method and getChainedTweens 2022-08-30 18:44:09 +01:00
Richard Davey
3bfa25f410 Improved docs, new chain method, new getChainedTweens method 2022-08-30 18:43:54 +01:00
Richard Davey
7e69ffb279 add can now take an array of configs and moved chain related functions to the new chain method 2022-08-30 18:18:09 +01:00
brendo
93eceb7d99 show error code 2022-08-30 07:42:14 +08:00
Richard Davey
6332241d88 Testing chained tweens debug 2022-08-29 23:49:28 +01:00
Richard Davey
42b1afb784 Fixed fps rate limit 2022-08-29 16:58:54 +01:00
Richard Davey
9017d29d52 Update FPSConfig.js 2022-08-29 16:31:58 +01:00
Richard Davey
f776037f8e Lots of jsdoc updates. Fixed time reset. Split limit fps up. 2022-08-29 16:29:37 +01:00
Richard Davey
bda695280f Pass the raf timer value across to Timestep 2022-08-29 16:10:01 +01:00
samme
0462351a64 Add missing NoAudioSoundManager methods
Fixes #6200
2022-08-26 11:41:34 -07:00
Richard Davey
bbe25598f5 Update Tween.js 2022-08-26 18:55:06 +01:00
Richard Davey
7fdaa08343 Testing new fps limit system 2022-08-26 18:54:55 +01:00
samme
bbd4840dbc Fix wrong alpha in snapshot pixel 2022-08-26 10:44:06 -07:00
Richard Davey
3c2272708f The RequestAnimationFrame.target property has been renamed to delay to better describe what it does. 2022-08-26 18:34:32 +01:00
Richard Davey
45e3c24497 Removed tick, lastTime and target
* The `RequestAnimationFrame.tick` property has been removed as it's no longer used internally.
* The `RequestAnimationFrame.lastTime` property has been removed as it's no longer used internally.
* The `RequestAnimationFrame` class no longer calculates the tick or lastTime values and doesn't call `performance.now` as these values were never used internally and not used by the receiving callback either.
2022-08-26 18:32:47 +01:00
Richard Davey
593aaced12 The TimeStep no longer calculates or passes the interpolation value to Game.step as it was removed several versions ago, so is redundant. 2022-08-26 17:56:54 +01:00
Richard Davey
8625b02314 * RequestAnimationFrame.step will now no longer call requestAnimationFrame is isRunning has been set to false (via the stop method) 2022-08-26 17:56:01 +01:00
Richard Davey
262dc391d6 Remove useFrames 2022-08-24 21:53:19 +01:00
Richard Davey
508252c039 The property and feature Tween.useFrames has been removed and is no longer a valid Tween Config option. Tweens are now entirely ms/time based. 2022-08-24 21:51:57 +01:00
Richard Davey
bc7e5f9c79
Merge pull request #6196 from samme/feature/texture-add-remove-key-events
Add texture add/remove key events
2022-08-24 21:20:13 +01:00
Richard Davey
5c4f4a3450
Merge pull request #6197 from samme/fix/getTextureKeys-white
Exclude __WHITE in getTextureKeys()
2022-08-24 21:16:15 +01:00
Richard Davey
169c402bb8
Merge pull request #6198 from samme/fix/arcade-world-destroy-debugGraphic
Destroy Arcade Physics debug graphic with world
2022-08-24 21:14:41 +01:00
Richard Davey
7fea4a095b Testing new chain + delta system 2022-08-24 18:51:30 +01:00
Richard Davey
88d9c9c19c Allow arrays of chained tweens 2022-08-24 18:51:18 +01:00
Richard Davey
23130bfaf0 Added CHAINED const 2022-08-24 18:50:16 +01:00
samme
7824876bd7 Add texture add/remove key events
- Phaser.Textures.Events.ADD_KEY
- Phaser.Textures.Events.REMOVE_KEY
2022-08-24 10:13:58 -07:00
Richard Davey
fef6718ea6 Added missing property 2022-08-24 14:51:45 +01:00
Richard Davey
4c2d3e3cff setTextureZero will now set isTextureClean to false 2022-08-24 13:56:12 +01:00
Richard Davey
c7d66ded23 Corrected docs 2022-08-24 13:55:53 +01:00
Richard Davey
a236326dcc Fixed jsdocs and preparing for Tween.chain 2022-08-23 21:43:05 +01:00
Richard Davey
2d11103c34 Removed BaseTween and merged back into Tween
As we don't need to split it for Timeline any longer.
2022-08-23 21:27:15 +01:00
Richard Davey
77603c2b42 Removed all Timeline related code and events 2022-08-23 21:13:03 +01:00
samme
01735b5a5c Exclude __WHITE in getTextureKeys() 2022-08-23 10:38:51 -07:00
Richard Davey
1f01eaa355 Update StaggerBuilder.js 2022-08-23 18:08:48 +01:00
Richard Davey
30ef13291c Dispatch the pause and resume events 2022-08-23 18:05:59 +01:00
Richard Davey
80d0f9197c Updated typedefs 2022-08-23 17:54:53 +01:00
Richard Davey
2a32d33860 No need to pass TweenData ref to funcs 2022-08-23 17:50:08 +01:00
Richard Davey
68f2f6cb61 Remove console.log 2022-08-23 17:49:55 +01:00
Richard Davey
73a96bc4c2 Removed unsupported interpolation functions 2022-08-23 17:49:47 +01:00
Richard Davey
86f123fc8f Now supports interpolation tweens 2022-08-23 17:38:19 +01:00
Richard Davey
b5f219097c Added interpolationData parameter 2022-08-23 17:37:59 +01:00
Richard Davey
2f46aaf54a Typo 2022-08-23 17:37:46 +01:00
Richard Davey
4c23a88e03 We can simplify this a lot and only call funcs during TweenData creation 2022-08-23 17:37:40 +01:00
Richard Davey
6f9f20f0b3 Add interpolation to reserved props list 2022-08-23 17:37:13 +01:00
Richard Davey
e697176fd8 Add interpolation default 2022-08-23 17:37:01 +01:00
Richard Davey
0eb0171dfb Specify return type 2022-08-23 17:36:52 +01:00
Richard Davey
b3b4d596a9 Return interpolation getStart and getEnd 2022-08-23 17:36:42 +01:00
Richard Davey
4f34cb6b42 Can return null. 2022-08-23 17:36:14 +01:00
Richard Davey
e845dc207f Added support for value interpolation 2022-08-23 15:21:32 +01:00
Richard Davey
bec14fbac1 Now supports tween interpolation 2022-08-23 15:21:15 +01:00
Richard Davey
17d9c4b362 Added TweenData.interpolation 2022-08-23 15:21:01 +01:00
Richard Davey
98cba07913 Now passes the TweenData to the start and end callbacks 2022-08-23 15:20:50 +01:00
Richard Davey
16c1c4352b Added GetInterpolationFunction 2022-08-23 15:20:28 +01:00
Richard Davey
1b4053a8e7 Removed array check and tidied up direction code 2022-08-23 15:20:14 +01:00
Richard Davey
7cd749e776 Working through getting timelines running again 2022-08-23 00:04:24 +01:00
Richard Davey
285fc14b87 Update jsdocs and persist checks 2022-08-23 00:04:15 +01:00
Richard Davey
6165549c6f Remove console 2022-08-23 00:03:59 +01:00
Richard Davey
f8933f151e Ready for TIMELINE_ACTIVE 2022-08-23 00:03:52 +01:00
Richard Davey
45f1bef45e Make sure Tween.restart fires the Start event again 2022-08-22 21:36:44 +01:00
Richard Davey
94d0b8d797 Add onPause and onResume callbacks 2022-08-22 21:36:31 +01:00
Richard Davey
63fbff291a Added persist to the config defaults 2022-08-22 19:45:19 +01:00
Richard Davey
fced56b261 Tween.restart should unpause the tween 2022-08-22 19:42:23 +01:00
Richard Davey
70c0aa2091 Reworked the 'restart' flow 2022-08-22 17:55:15 +01:00
Richard Davey
cbe9aa5c17 Fixed missing const 2022-08-22 17:55:03 +01:00
Richard Davey
2065f29f10 Added new persist feature 2022-08-22 17:54:52 +01:00
Richard Davey
36f60d9bb7 Added FINISHED state 2022-08-22 17:54:38 +01:00
Richard Davey
337d5b3228 Tween.stop has had the resetTo parameter removed from it. Calling stop on a Tween will now prepare the tween for immediate destructions. If you only wish to pause the tween, see Tween.pause instead. 2022-08-22 16:43:24 +01:00
Jaro Vanderheijden
b271accaf0 Add raw character index to bitmap text bounds 2022-08-20 12:29:47 +02:00
Richard Davey
a13b79f86e Added getTotal test 2022-08-19 18:49:08 +01:00
Richard Davey
c72ea9b7f8 Stop removing 2022-08-19 18:48:59 +01:00
Richard Davey
ce772272b0 Remove as part of destroy 2022-08-19 18:48:40 +01:00
Richard Davey
b6ae1f0061 Removed un-used property 2022-08-19 17:29:54 +01:00
Richard Davey
faec522e15 Special-case for scale 2022-08-19 17:29:44 +01:00
Richard Davey
7c26b7d461 Remove scale 2022-08-19 17:29:35 +01:00
Richard Davey
489130ce7b Added scale 2022-08-19 16:52:53 +01:00
Richard Davey
87ba0cdbb0 Use substring instead 2022-08-19 16:50:59 +01:00
Richard Davey
3f502758b3 Updated docs 2022-08-19 16:45:03 +01:00
Richard Davey
0258714887 Update TextureManager.js 2022-08-19 16:44:55 +01:00
Richard Davey
21a695d070 Removed log 2022-08-19 16:44:51 +01:00
Richard Davey
1cee183703 Fixed jsdocs 2022-08-19 16:44:41 +01:00
Richard Davey
5260fd90f2 Update Tween.js 2022-08-19 15:05:33 +01:00
Richard Davey
ec870f6a86 Corrected target param 2022-08-19 14:58:30 +01:00
Richard Davey
dfebdb9a7a The TweenManager calls init. 2022-08-19 14:42:20 +01:00
Richard Davey
30e92ac5b8 Create callback arguments dynamically 2022-08-19 14:36:35 +01:00
Richard Davey
7eec2cedd2 Pass by reference 2022-08-19 14:36:20 +01:00
Richard Davey
c2827e83fe Unified all of the tween callbacks 2022-08-19 14:35:24 +01:00
Richard Davey
328fb964e2 Fixed missing event params in jsdocs 2022-08-19 13:45:56 +01:00
samme
d40b084063 Destroy debugGraphic also 2022-08-18 17:25:32 -07:00
samme
f32043a605 Skip the post-creation options if not set 2022-08-18 12:41:07 -07:00
Richard Davey
bf95d61c11 Tween.init called by the TweenBuilder 2022-08-18 18:45:25 +01:00
Richard Davey
a8b7e7c249 Added BaseTypes back 2022-08-18 18:45:02 +01:00
Richard Davey
e25b3249c3 TweenBuilder calls Tween.init directly 2022-08-18 18:44:53 +01:00
Richard Davey
e3afb1d159 GameObjects.Text.appendText is a new method that will append the given text, or array of text, to the end of the content already stored in the Text object. 2022-08-18 18:44:40 +01:00
Richard Davey
f96986a2e7 Remove console.log 2022-08-18 18:24:08 +01:00
Richard Davey
c44b25ea8e Update TweenManager.js 2022-08-18 18:01:57 +01:00
Richard Davey
af202fdc6c Update CanvasPool.js 2022-08-18 18:01:53 +01:00
Richard Davey
9bc8826684 Specify the canvas is for drawing, not reading 2022-08-18 18:01:45 +01:00
Richard Davey
7c4eff9251 The CanvasFeatures tests and the TextureManager _tempContext now specify the { willReadFrequently: true } hint to inform the browser the canvas is to be read from, not composited. 2022-08-18 18:01:28 +01:00
Richard Davey
21ed9efca1 Improved jsdocs 2022-08-18 16:23:38 +01:00
Richard Davey
e39970eeff Create TweenCallbacks.js 2022-08-18 15:18:16 +01:00
Richard Davey
778521393b Using ACTIVE again. Also hardened destroyed tween handling. 2022-08-18 15:18:12 +01:00
Richard Davey
6e100270fd Swapping from PLAYING to ACTIVE 2022-08-18 15:17:57 +01:00
Richard Davey
d689908aa0 Added onStop and callback types 2022-08-18 15:17:47 +01:00
Richard Davey
810cfa587b Added link to SnowBMF 2022-08-17 16:41:40 +01:00
Richard Davey
da59d01823 Update Tween.js 2022-08-09 18:39:23 +01:00
Richard Davey
df978a4801 Fixed jsdocs for class 2022-08-09 18:39:17 +01:00
Richard Davey
790b4a4341 Added Tween pause and resume events 2022-08-09 18:39:09 +01:00
Richard Davey
13b6598558 The Physics.Arcade.Body.reset() method will now call Body.checkWorldBounds as part of the process, moving the body outside of the bounds, should you have positioned it so they overlap during the reset. Fix #5978 2022-07-28 18:35:56 +01:00
Flávio Silva
b2a0fe79ed
fix: Wrap documentation 2022-07-28 15:42:18 +01:00
Richard Davey
41803facaa Fixed an issue where neither Tweens or Timelines would factor in the Tween Manager timeScale value unless they were using frame-based timing instead of delta timing. 2022-07-28 14:21:50 +01:00
Richard Davey
ef0ddec588 Update TweenBuilder.js 2022-07-27 17:52:28 +01:00
Richard Davey
62e6fc6946 Now extend from BaseTween 2022-07-27 16:54:57 +01:00
Richard Davey
87bb5dbea9 Create BaseTween.js 2022-07-27 16:54:57 +01:00
Dmitry Omelchenko
901dc31880 add second possible flac mime 2022-07-27 15:49:39 +03:00
Dmitry Omelchenko
ef5432df57 add "flac" sound type support 2022-07-27 15:45:33 +03:00
Richard Davey
7fb8fe2223 Calling Tween.setCallback() without specifying the params argument would cause an error invoking the callback params. This parameter is now fully optional. Fix #6047 2022-07-26 18:42:21 +01:00
Richard Davey
ceaafe7d6e Update Timeline.js 2022-07-26 18:36:08 +01:00
Richard Davey
fb4f95adf0 Now supports deeply-nested arrays of targets. Fix #6016 2022-07-26 18:36:02 +01:00
Richard Davey
1f6554f98e Utils.Array.Flatten is a new function that will return a flattened version of an array, regardless of how deeply-nested it is. 2022-07-26 18:34:04 +01:00
Richard Davey
f1bb335d35 Added ability to destroy a tween and tided up lots more 2022-07-26 12:50:27 +01:00
Richard Davey
246f60ba87 Update Tween.js 2022-07-26 02:41:11 +01:00
Richard Davey
efd97acdb6 Merge reset - check more isn't needed 2022-07-26 02:40:52 +01:00
Richard Davey
ff4d2184a4 Update TweenManager.js 2022-07-26 02:40:41 +01:00
Richard Davey
98dafdc39a Refactoring tween system 2022-07-26 02:14:21 +01:00
Richard Davey
fb765a47c4 Update TweenBuilder.js 2022-07-26 02:14:06 +01:00
Richard Davey
bb22e539b7 Still refactoring tweens. Almost there. 2022-07-25 19:22:29 +01:00
Richard Davey
15d5874cde Carrying on refactoring the tween system to be immediate 2022-07-20 18:45:17 +01:00
Richard Davey
f617e73498 Testing refactoring the Tween system to use a single list 2022-07-18 18:49:58 +01:00
Richard Davey
15c58bc71c Added maxAliveParticles
`maxAliveParticles` is a new Particle Emitter config property that sets the maximum number of _alive_ particles the emitter is allowed to update. When this limit is reached a particle will have to die before another can be spawned.
2022-07-12 16:28:12 +01:00
Richard Davey
f09ec762ee Removed Graphics Pipeline
The WebGL Graphics Pipeline has been removed. This pipeline wasn't used in v3.55, as all Graphics rendering is handled by the MultiTint pipeline, for better batching support. No Phaser Game Objects use the Graphics pipeline any longer, so to save space it has been removed and is no longer installed by the Pipeline Manager.
2022-07-12 13:39:51 +01:00
Richard Davey
c47a40ba97 Working through making Body a passable type 2022-07-04 18:44:10 +01:00
Richard Davey
ec8f20b692 Swap the handler type and fixed staticBody 2022-07-04 16:40:13 +01:00
Richard Davey
132ab9cdbd Added isBody property 2022-07-04 16:39:53 +01:00
Richard Davey
6b55ac6b06 Made gameObject optional 2022-07-04 15:55:14 +01:00
Richard Davey
284277887f Added body and staticBody methods 2022-07-04 15:55:07 +01:00
Richard Davey
20c597738f Made gameObject optional and added setGameObject method 2022-07-04 15:54:53 +01:00
Richard Davey
1591ebdb77
Merge pull request #6158 from samme/docs/audio-video-url-config
Add AudioFileURLConfig and VideoFileURLConfig types
2022-06-29 16:42:56 +01:00
samme
1a9fe0ccb6 Add AudioFileURLConfig and VideoFileURLConfig types 2022-06-28 11:12:30 -07:00
samme
e2aebec933
Fix JSDoc syntax 2022-06-28 10:50:19 -07:00
Richard Davey
e0f2a6585a The Device.Audio module has been rewritten to use a new internal CanPlay function that cuts down on the amount of code required greatly. 2022-06-28 16:53:07 +01:00
Richard Davey
9f78ccf2f5 Error if using compressed texture for TileSprite
fix #6156
2022-06-27 18:11:00 +01:00
Richard Davey
d2f7f220ae
Merge pull request #6141 from Cirras/canvas_antialias_scalemode
Let texture `scaleMode` override the `antialias` setting under `CANVAS`
2022-06-27 17:58:51 +01:00
Richard Davey
1ca0da3221
Merge pull request #6142 from lolimay/patch-1
Fixes GameObjectFactory#group method's signature
2022-06-27 17:56:52 +01:00
Richard Davey
c754bb9133 Removed un-needed characters 2022-06-27 17:53:04 +01:00
Edward Faulkner
0791302699 Improve types for ArcdePhysics.closest
This uses generics so that the return type from closest() is narrowed to match whatever type you passed in for the eligible targets.

Resulting typescript diff:

```diff
--- a/types/phaser.d.ts
+++ b/types/phaser.d.ts
@@ -70565,7 +70565,7 @@ declare namespace Phaser {
                  * @param source Any object with public `x` and `y` properties, such as a Game Object or Geometry object.
                  * @param targets The targets.
                  */
-                closest(source: any, targets?: Phaser.Physics.Arcade.Body[] | Phaser.Physics.Arcade.StaticBody[] | Phaser.GameObjects.GameObject[]): Phaser.Physics.Arcade.Body | Phaser.Physics.Arcade.StaticBody | Phaser.GameObjects.GameObject;
+                closest<Target extends Phaser.Physics.Arcade.Body|Phaser.Physics.Arcade.StaticBody|Phaser.GameObjects.GameObject>(source: Phaser.Types.Math.Vector2Like, targets?: Target[]): Target | null;

                 /**
                  * Finds the Body or Game Object farthest from a source point or object.
(END)
```
2022-06-25 17:00:02 -04:00
samme
ad32842fa4
Fix Phaser.Display.RGB#equals() 2022-06-22 17:49:40 -07:00
Richard Davey
cf94e2cc8e Update Container.js 2022-06-22 17:17:52 +01:00
Richard Davey
e032d573b1 Update Container.js 2022-06-22 16:13:41 +01:00
Richard Davey
e4c520aa9e Update TextStyle.js 2022-06-22 14:22:52 +01:00
Richard Davey
8ad90cc949 When passing a TextStyle configuration object to the Text Game Objects setStyle method, it would ignore any metrics data it may contain and reset it back to the defaults. It will now respect the metrics config and use it, if present. Fix #6149 2022-06-21 17:04:38 +01:00
Richard Davey
b82c01d336 GameObjects.Polygon.setTo is a new method that allows you to change the points being used to render a Polygon Shape Game Object. Fix #6151 2022-06-21 16:27:43 +01:00
Richard Davey
4f652e4c7c Only flip if being used as a sprite textured 2022-06-17 15:14:54 +01:00
Rex
59bf0365c8 Update hitarea when changing frame 2022-06-17 14:46:03 +08:00
Shiqi Mei
a60d0bc4e6
Fixes GameObjectFactory#group method's signature 2022-06-15 15:25:26 +08:00
Jonah Jeleniewski
e8c8be0385
Let texture scaleMode override the antialias setting under CANVAS 2022-06-11 18:07:29 +10:00
Richard Davey
01c7aab8c0 Fixed version number 2022-06-09 12:11:24 +01:00
Richard Davey
6b0962cff8 Preparing for 3.60 Beta 10 2022-06-07 17:54:19 +01:00
Richard Davey
5763f9e76b The DisplayList.addChildCallback method will now check to see if the child has a parent container, and if it does, remove it from there before adding it to the Scene Display List. Fix #6091 2022-06-07 17:17:18 +01:00
Richard Davey
9fb446c7e2 Container.removeAll (which is also called when a Container is destroyed) will now directly destroy the children, if the given parameter is set, rather than doing it after removing them via the event handler. This fixes an issue where nested Containers would add destroyed children back to the Scene as part of their shutdown process. Fix #6078 2022-06-07 17:07:46 +01:00
Richard Davey
bdc3c05a1a Container.removeHandler now specifies the context for Events.DESTROY, fixing an issue where objects moved from one container, to another, then destroyed, would cause sys reference errors. Fix 5846 2022-06-07 16:54:48 +01:00
Richard Davey
a5132b2342 Call addedToScene and removedFromScene
* `Container.addHandler` will now call `GameObject.addedToScene`.
* `Container.removeHandler` will now call `GameObject.removedFromScene`.
2022-06-07 16:44:26 +01:00
Richard Davey
186fe4a04b Game Objects that were created and destroyed (or moved to Containers) in the same frame were not correctly removed from the UpdateList. Fix #5803 #5817 #5818 #6052
* `ProcessQueue.isActive` is a new method that tests if the given object is in the active list, or not.
* `ProcessQueue.isPending` is a new method that tests if the given object is in the pending insertion list, or not.
* `ProcessQueue.isDestroying` is a new method that tests if the given object is pending destruction, or not.
* `ProcessQueue.add` will no longer place the item into the pending list if it's already active or pending.
* `ProcessQueue.remove` will check if the item is in the pending list, and simply remove it, rather than destroying it.
2022-06-07 16:43:56 +01:00
Richard Davey
4f005e3701 The Arcade Physics World.enableBody method will now only create and add a Body to an object if it has the Transform component, tested by checking the hasTransformComponent property. Without the Transform component, creating a Body would error with NaN values, causing the rest of the bodies in the world to fail. 2022-05-31 18:15:41 +01:00
Richard Davey
058fb24096 The Transform Component has a new boolean read-only property hasTransformComponent which is set to true by default. 2022-05-31 18:11:17 +01:00
Richard Davey
8a1faddecc The Light Game Object now has the Origin and Transform components, along with 4 new properties: width, height, displayWidth and displayHeight. This allows you to add a Light to a Container, or enable it for physics. Fix #6126 2022-05-31 18:10:25 +01:00
Richard Davey
ddd5e9b671 Typo fix 2022-05-31 00:25:44 +01:00
Richard Davey
695d0d861a
Merge pull request #6125 from samme/feature/particle-frequency
Allow particle frequency smaller than delta
2022-05-30 21:09:56 +01:00
samme
f393cb9c43 Allow particle frequency smaller than delta 2022-05-30 10:55:30 -07:00
Richard Davey
ec029cfaf0 RenderTexture.setIsSpriteTexture is a new method that allows you to flag a Render Texture as being used as the source for Sprite Game Object textures. You can also toggle the new boolean property isSpriteTexture as well. Doing this ensures that images drawn to the Render Texture are correctly inverted for rendering in WebGL. Not doing so can cause inverted frames. If you use this method, you must use it before drawing anything to the Render Texture. Fix #6057 #6017 2022-05-30 18:26:12 +01:00
Richard Davey
aa2dda09e2 UtilityPipeline.blitFrame has a new optional boolean parameter flipY which, if set, will invert the source Render Target while drawing it to the destination Render Target. 2022-05-30 18:25:21 +01:00
Richard Davey
4fd0fa2ab2 Update KeyboardPlugin.js 2022-05-27 18:54:41 +01:00
Richard Davey
0e09776bd5 Added tileFilterOptions property 2022-05-26 18:54:55 +01:00
Richard Davey
aedf666ffc Testing filterOptions to avoid needless iterations 2022-05-25 21:01:30 +01:00