Commit graph

787 commits

Author SHA1 Message Date
Richard Davey
2102653416 Updated change log 2018-09-14 12:33:27 +01:00
Richard Davey
b8302a7f08 Updated log 2018-09-14 10:36:24 +01:00
Richard Davey
aeda1c042b If a Scene is already active (i.e. running) and you call start on it (such as from another Scene) then it will shutdown the Scene first, before starting it again. 2018-09-13 16:32:02 +01:00
Richard Davey
5e6f52a0f7 Updated log 2018-09-13 13:31:03 +01:00
Richard Davey
1db44806ed Updated log 2018-09-13 09:30:32 +01:00
Richard Davey
37d5de50cc Updated log 2018-09-12 16:30:07 +01:00
Richard Davey
0a152949cb Added setLineSpacing method and docs. 2018-09-12 16:29:38 +01:00
Richard Davey
a418995c15 Fixed jsdoc versions and updated them for #4019 2018-09-12 15:34:48 +01:00
Richard Davey
6d7ca32e6d Game Objects would not remove themselves from the Scene's shutdown event handler when destroyed, leading to a build-up over time 2018-09-12 15:06:13 +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
Richard Davey
b1771a17dd Updated InputPlugin event specificity flow and added stopPropagation support 2018-09-12 12:38:08 +01:00
Richard Davey
4d05e5ce7d Updated change log 2018-09-10 20:44:28 +01:00
Richard Davey
0350e0d078 Updated change log 2018-09-10 11:29:35 +01:00
Richard Davey
dedc939fdd initPipeline now defaults to the Texture Tint Pipeline if nothing else is specified. 2018-09-05 11:19:02 +01:00
Richard Davey
dff9bdef9f The Graphics Canvas Renderer will now automatically call beginPath on the target context before processing the command stack. This has the effect of clearing off any sub-paths that may have persisted on the stack from previous Graphics objects or frames. 2018-09-04 23:33:38 +01:00
Richard Davey
8216c11143 Updated log 2018-09-04 22:45:30 +01:00
Richard Davey
5b98386677 Calling Text.setStyle would make the Text vanish if you didn't provide a resolution property in the style configuration object. Calling setStyle now only changes the properties given in the object, leaving any previously changed properties as-is. Fix #4011 2018-09-04 22:43:25 +01:00
Richard Davey
03aeaefe21 Preparing for 3.13 development 2018-09-04 16:01:42 +01:00
Richard Davey
cb1c6f614d Preparing for 3.12 release 2018-09-04 15:42:10 +01:00
Richard Davey
382d6ae687 Updated log 2018-09-04 14:12:51 +01:00
Richard Davey
7c55e65543 Arcade Physics Body deltaX and deltaY methods will now return the previous steps delta values, rather than zero. Fix #3987 2018-09-04 12:16:24 +01:00
Richard Davey
3d989e136f Arcade Physics World collideSpriteVsTilemapLayer now syncs the collision results back to the body, allowing you to call collide from within an update loop once again. Fix #3999 2018-09-04 12:12:51 +01:00
Richard Davey
a1610fd9d7 Log updated 2018-09-03 13:13:37 +01:00
Richard Davey
a2dc7929dc Updated log 2018-09-01 10:22:03 +01:00
Richard Davey
d586483dc3 Merge branch 'master' of https://github.com/photonstorm/phaser 2018-09-01 01:48:30 +01:00
Richard Davey
cdd75f85a2 Updated log 2018-09-01 01:47:00 +01:00
Richard Davey
0a4fc5b026 Calling setTimeScale on the Sprite's Animation component will now set the time scale value and keep it set until you change it again. Previously it would be reset to 1 when a new animation was loaded into the component, but this no longer happens - once the time scale is set it remains in effect, regardless of which animations are played on the Sprite. 2018-08-31 18:45:50 +01:00
Richard Davey
ecae9d0503 The setTintFill method would ignore the alpha value of the Game Object in the shader. The alpha value is now blended with the tint fill, allowing you to properly alpha out tint-filled Game Objects. Fix #3992 2018-08-31 13:27:24 +01:00
Richard Davey
1f859208ea Updated log 2018-08-29 16:35:18 +01:00
Richard Davey
00b9da47d5 Updated log 2018-08-29 16:12:05 +01:00
Richard Davey
7041bd99ec The InputManager.inputCandidate method, which determines if a Game Object can be interacted with by a given Pointer and Camera combination, now takes the full camera status into consideration. This means if a Camera is set to ignore a Game Object you can now longer interact with it, or if the Camera is ignoring a Container with an interactive Game Object inside it, you cannot interact with the Container children any more. Previously they would interact regardless of the Camera state. Fix #3984 2018-08-29 11:57:30 +01:00
Richard Davey
cbfc208e5b Updated log 2018-08-24 23:58:38 +01:00
Richard Davey
ca783182bf Updated change log 2018-08-23 18:11:29 +01:00
Richard Davey
0e27dc33e4 When a Sprite3D object is added to a Camera via Camera.add it is now added to the Display and Update Lists. Fix #3945 2018-08-23 15:53:33 +01:00
Richard Davey
fc51f3a2db Updated log and added plugin readme 2018-08-23 15:44:53 +01:00
Richard Davey
a8b649cf98 Log update 2018-08-23 12:36:35 +01:00
Richard Davey
5443f9cf5a Fixed the way the arc overshoot works. 2018-08-23 12:31:55 +01:00
Richard Davey
144cfaff8f Previously the Input Manager would create a Touch handler unless the Game Config had input.touch set to false (the default was true). If no such property is set, it no longer defaults to true and instead is set to whatever Device.input.touch returns. On non-touchscreen desktops this means it will now only create one single Pointer, rather than two. 2018-08-22 17:01:21 +01:00
Richard Davey
dc868f8368 You can now resize SVG files during load, before they are rendered to textures.
Also added scale support and fixed some viewBox settings (#3941)
2018-08-22 15:43:09 +01:00
Richard Davey
65fb366ecd Matter updated to 0.14.2. Fix #3929 2018-08-22 14:01:35 +01:00
Richard Davey
0dccc3a510 Updated jsdocs. Fix #3849 2018-08-21 23:48:03 +01:00
Richard Davey
2dfe321d67 The getPixelAlpha and getPixel methods in the Texture Manager would allow x/y coordinates from outside the cut area of a frame. It now tests to ensure they're within the frame. Fix #3937 2018-08-21 23:25:08 +01:00
Richard Davey
198f353c9a The default Container Blend Mode is now SKIP_TEST. This allows you to either set a blend mode for a Container, in which case all children use that blend mode. Or, you can set a blend mode on the children and the children will render using their own blend modes, as the Container doesn't have one set. The WebGL and Canvas Renderer functions have also been updated to support this change. Fix #3684 2018-08-21 22:07:35 +01:00
Richard Davey
01290afda9 A Game Object couldn't have a blend mode of SKIP_TEST set by using the getter or the setBlendMode method. 2018-08-21 21:54:38 +01:00
Richard Davey
55c2de28b7 Updated log 2018-08-21 18:03:52 +01:00
Richard Davey
a98b3c3b15 In Matter.js if you scaled a Body it would only scale correctly once, due to the way Matter handles scaling internally. We now automatically reset the Matter scale before applying the new value, which allows you to keep the Phaser and Matter object scales in sync. Fix #3785 #3951 2018-08-21 15:55:39 +01:00
Richard Davey
a7bbbb657d Updated log 2018-08-21 15:40:40 +01:00
Richard Davey
3cc17f5c97 The RandomDataGenerator will now create a default random seed if you instantiate your own version of the class (instead of using Phaser.Math.RND) and don't provide a seed for it 2018-08-21 14:06:41 +01:00
Richard Davey
0eef6f1bb9 Updated scroll factor docs to clarify impact on physics bodies #3810 2018-08-20 19:19:53 +01:00
Richard Davey
761415f051 Updated log 2018-08-20 18:46:10 +01:00
Richard Davey
27c3cc30ac Previously, changing a Text object by setting its text property directly wouldn't change the text being rendered as using setText was the expected way to change what was being displayed. Internally the text property has been renamed to _text and flagged as private, and a new getter / setter for text has been added, which hands over to the setText method, meaning you can now use both ways of setting the text. Fix #3919 2018-08-20 17:41:05 +01:00
Richard Davey
818fbb05c7 Updated log 2018-08-20 16:42:27 +01:00
Richard Davey
661070ec6a Updated log 2018-08-18 16:46:03 +01:00
Richard Davey
4bdb0de312 The Arcade Physics Body.speed property is now set whenever you set the velocity via setVelocity or setVelocityX or setVelocityY which stops the body velocity being reset to zero if useDamping is enabled. Fix #3888 2018-08-08 17:31:22 +01:00
Richard Davey
764de08ff4 Camera.ignore can now take nested-arrays of Game Objects and also supports both Groups and Containers. 2018-08-08 16:46:14 +01:00
Richard Davey
452a364c0b Updated log 2018-08-08 01:33:39 +01:00
Richard Davey
9af64d02ad Updated log 2018-08-07 16:25:20 +01:00
Richard Davey
2d91d4a26b You can now access the Game instance directly from a Scene using this.game 2018-08-07 11:19:20 +01:00
Richard Davey
26cc84522d The CanvasRenderer.BlitImage function has been removed, as has the associated blitImage property from the Canvas Renderer as they're no longer used. 2018-08-06 15:29:27 +01:00
Richard Davey
fbb67ac201 The CanvasRenderer.DrawImage function has been removed, as has the associated drawImage property from the Canvas Renderer as they're no longer used. 2018-08-06 15:24:51 +01:00
Richard Davey
702e738ffc When a Static Tilemap Layer is generated in WebGL it will use the Cameras roundPixels value to clamp the tile coordinates. 2018-08-06 14:16:36 +01:00
Richard Davey
50821c29ac Updated jsdocs 2018-08-06 13:45:56 +01:00
Richard Davey
86965c28e4 The Tilemap Culling function now uses the Tilemap tile dimensions for its bounds calculations, instead of the layer tile sizes, as they two don't have to match and it's the underlying grid size that takes precedence when calculating visible tiles. Fix #3893 2018-08-06 13:31:27 +01:00
Richard Davey
41c9f8b1e1 Docs update 2018-08-06 00:41:34 +01:00
Richard Davey
c2782d89ca Updated log. 2018-08-03 19:31:02 +01:00
Richard Davey
c6cb0edf60 Updated log. 2018-08-03 19:17:17 +01:00
Richard Davey
ca68904953 The Canvas Renderer has a new batchSprite method that consolidates the process of drawing a texture-based Game Object to the canvas. It processes the alpha, blend mode and matrix calculations in a single function and now is used by nearly all Game Object canvas renderers. 2018-08-03 18:53:50 +01:00
Richard Davey
c98f5edc23 Added resetCropObject method to cut down on duplicate code. 2018-08-03 18:50:36 +01:00
Richard Davey
b65cf0647b New Crop Game Object component. 2018-08-03 18:49:10 +01:00
Richard Davey
8c842f67de Phaser.Utils.String.UUID will return an RFC4122 complaint UUID as a string. This is used internally to avoid cache key conflicts, but is exposed for your own use as well. 2018-08-03 18:47:27 +01:00
Richard Davey
fc0dc13930 Removed use of currentBlendMode and currentAlpha 2018-08-03 01:53:51 +01:00
Richard Davey
9f44896a3f The Blend Mode is now set directly in all Canvas Renderers without comparing it to what's stored in the Canvas Renderer. This fixes problems where the blend mode would be lost between two different Game Objects because they restored the context, but didn't update the renderer flag. Game Objects in Canvas can now mix and match blend modes across the display list. 2018-08-03 01:29:18 +01:00
Richard Davey
31421ee00a The CullTiles updates from 3.11 didn't factor in the position of the Tilemap Layer to its bounds calculations, causing Static layers displayed out of the Camera viewport to never render in Canvas mode. The method has also been optimized further, with less divisions and less checks if culling is disabled. 2018-08-03 00:40:56 +01:00
Richard Davey
eff01adbc9 Added divide argument to the Snap methods. 2018-08-03 00:34:11 +01:00
Richard Davey
c4c8b9e6ea Added copyToContext method 2018-08-02 17:23:52 +01:00
Richard Davey
2a66e01577 Added source property so we can purge TSs based on origin 2018-08-02 16:16:46 +01:00
Richard Davey
51163e6d4e If you set window.FORCE_WEBGL or window.FORCE_CANVAS in the window in which the Phaser game is loaded it will over-ride the renderer type setting in your game config, and force either WebGL or Canvas. This is handy for quickly testing the differences between renderers without having to do a new build each time. 2018-08-02 15:58:36 +01:00
Richard Davey
7566236d9b Added isRenderTexture property. 2018-08-02 12:34:57 +01:00
Richard Davey
3efc800bf7 Use global string to cut down on size a little. 2018-08-02 12:33:48 +01:00
Richard Davey
7ebf5766e8 Added docs for blankTexture and setBlankTexture. 2018-08-01 13:23:03 +01:00
Richard Davey
73524df816 The Game boot event flow has changed slightly. The Game will now listen for a texturesready event, which is dispatched by the Texture Manager when the default textures have finished processing. Upon receiving this, the Game will emit the ready event, which all the other systems listen for and respond to. The difference is that the Renderer uses the texturesready event to ensure that it is the first thing to be activated, before any other system. 2018-08-01 13:18:28 +01:00
Richard Davey
030911cf60 Log update 2018-07-31 23:22:45 +01:00
Richard Davey
7313573161 The ParticleEmitterManager now has the Transform component. This means you can now set the position, rotation or scale of the Emitter Manager, and it will influence every Emitter it is rendering. The Managers transform is mixed with that of the Camera. This works in both Canvas and WebGL. 2018-07-31 23:21:07 +01:00
Richard Davey
c3cc4317dd Particle.color has been removed as it's now calculated during rendering to allow for Camera alpha support. 2018-07-31 23:18:49 +01:00
Richard Davey
bc40830f00 Log update 2018-07-31 17:10:46 +01:00
Richard Davey
f26f78f0fe Updated log 2018-07-31 11:53:02 +01:00
Richard Davey
fa2b78192c The CameraManager was accidentally adding extra destroy event calls when a Scene was restarted, causing an Uncaught TypeError: Cannot read property 'events' of null when trying to destroy a game instance having swapped from a Scene to another, and back again. Fix #3878 2018-07-31 11:34:59 +01:00
Richard Davey
7e73024d83 Added new noReturn destroy boolean for when you absolutely want to nuke the site from orbit. 2018-07-31 10:29:11 +01:00
Richard Davey
3d23013b86 Body setSize changes to fix #3863 PR 2018-07-31 09:39:22 +01:00
Richard Davey
e799a0557a Updated log 2018-07-31 09:31:13 +01:00
Richard Davey
a8b605f42d Zone now calls updateDisplayOrigin in its constructor, causing the displayOriginX and displayOriginY values to now be correct if you create a Zone and then don't resize it. Fix #3865 2018-07-29 12:34:21 +01:00
Richard Davey
2889d68f93 Updated change log 2018-07-29 12:24:14 +01:00
Richard Davey
b30e4185b9 Updated log 2018-07-27 11:19:26 +01:00
Richard Davey
1abe90433f Updated log and docs 2018-07-27 02:49:05 +01:00
Richard Davey
6163340f58 Updated log 2018-07-27 00:53:07 +01:00
Richard Davey
a3c4c60519 Log update. 2018-07-26 16:34:13 +01:00
Richard Davey
c65e7dc5fa Updated log 2018-07-25 23:00:36 +01:00
Richard Davey
e2517486a1 Updated log 2018-07-23 15:52:55 +01:00
Richard Davey
9df7fbaa68 Adding an array of children to a Group would cause it to mistakenly think you were passing a config object. Fix #3854 2018-07-23 13:29:39 +01:00
Richard Davey
09bee35693 Updated log 2018-07-23 01:53:48 +01:00
Richard Davey
2c7280a2c0 Updated log 2018-07-23 01:39:37 +01:00
Richard Davey
2a008e6713 FileType.HTML is a new file type loader that will load an HTML snippet and store it in the new html cache. Access it via load.html (this method was previously used to load html to textures, please see load.htmlTexture for this feature now) 2018-07-19 13:21:51 +01:00
Richard Davey
ec5bd1912e GameObject.willRender now takes a Camera as its only argument and uses it within the check. This has allowed me to remove 23 duplicate checks spread across the various Game Objects, all of which did the same thing, saving both KB and CPU time as the flags were being checked twice in most cases. 2018-07-19 13:19:02 +01:00
Richard Davey
1d697b1371 Updated log 2018-07-19 00:42:37 +01:00
Richard Davey
ab35dfab95 The setCrop method stored its crop object on the prototype chain by mistake, causing all Images or Sprites that were cropped to display the same frame. The crop data has been moved to the Game Object instance, where it should be, fixing this issue 2018-07-19 00:18:09 +01:00
Richard Davey
20f1b37256 eslint fix and log update 2018-07-18 15:06:56 +01:00
Richard Davey
b6a1033dbd Fixed Camera FX for scaled camera sizes 2018-07-18 15:03:06 +01:00
Richard Davey
14ba51d928 Added Text.setResolution methods. 2018-07-18 14:45:10 +01:00
Richard Davey
1b9f5dc76d Updated change log 2018-07-18 14:32:55 +01:00
Richard Davey
e29671282b Updated change log 2018-07-17 22:44:28 +01:00
Richard Davey
73292c892a Updated change log 2018-07-16 15:16:29 +01:00
Richard Davey
05e6f65d51 3.11 Release 2018-07-13 11:37:57 +01:00
Richard Davey
9a82bd33e5 Updated change log 2018-07-13 11:14:29 +01:00
Richard Davey
944ca91e85 Updated log 2018-07-13 08:30:57 +01:00
Richard Davey
b4ddd44105 Added cullCallback support - the final step in culling. Don't like ours? Roll your own! 2018-07-12 17:06:36 +01:00
Richard Davey
8981cf4a03 Swapped from vec2 to explicit values for cullPadding 2018-07-12 16:51:54 +01:00
Richard Davey
b03d3ff783 Added support for cull padding 2018-07-12 16:44:36 +01:00
Richard Davey
52f50028c3 Updated change log 2018-07-12 16:32:36 +01:00
Richard Davey
7ea53767cd Updated change log 2018-07-12 16:13:00 +01:00
Richard Davey
049f59da70 Updated log and packages 2018-07-12 01:14:52 +01:00
Richard Davey
872788db1e Updated info 2018-07-11 17:20:13 +01:00
Richard Davey
e588ccc321 Updated log 2018-07-11 16:25:03 +01:00
Richard Davey
82b15c8695 Removed drawEmitterManager and moved to emitter render function 2018-07-11 14:40:36 +01:00
Richard Davey
497fa1f2ff Added copyFromArray method 2018-07-11 12:36:49 +01:00
Richard Davey
cced09bad6 Added Pointer.prevPosition and getInterpolatedPosition method 2018-07-11 12:34:00 +01:00
Richard Davey
14354fd151 Added deprecation warning 2018-07-10 17:18:08 +01:00
Richard Davey
9c9e9cecbb Updated log and lint fixes 2018-07-10 16:49:53 +01:00
Richard Davey
f813c3a4e3 Updated log 2018-07-10 16:34:29 +01:00
Richard Davey
469f6b6880 TransformMatrix.multiply has a new optional argument out which is a matrix to store the multiplication results in. If not given it will act as before, multiplying the current matrix. 2018-07-10 14:01:14 +01:00
Richard Davey
4d5eb4755b Updated log 2018-07-09 23:02:31 +01:00
Richard Davey
6560f51699 Added jsdocs and updated change log 2018-07-09 22:35:48 +01:00
Richard Davey
a3803a286f Fixed origin addition post-scale 2018-07-09 16:17:52 +01:00
Richard Davey
91a48c30c4 GetBitmapTextSize, which is used internally in the BitmapText Game Objects, will now produce different bounds from the previous version. Previously, the bounds were tight against the letters in the text. However, this meant the bounds were not properly aligned with the origin of the BitmapText, and consequently you'd get different bounds if the text consisted of different characters. The bounds are now calculated purely based on the glyph data and letter spacing values. This will give a far more consistent overall experience, but it does mean if you were using the bounds to position text previously, you'll need to revisit that code again. See issue #3799 for more details (and to discuss this further if you wish) 2018-07-09 16:06:36 +01:00
Richard Davey
17653fcf7d BitmapMask.destroy will now remove the textures and framebuffers that it created from the WebGL Renderer as part of the destroy process. Fix #3771 2018-07-09 14:26:45 +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
84c7960a48 The Quad Game Object now has a new setFrame method that allows you to change the frame being rendered by the Quad, including using frames that are part of a texture atlas. Fix #3161 2018-07-09 13:42:33 +01:00
Richard Davey
ecd99869bd Explained mask positioning better in docs. Fix #3770 2018-07-08 23:38:13 +01:00
Richard Davey
cb7510b2e5 Updated log 2018-07-08 23:19:33 +01:00
Richard Davey
8b13631107 Removed batchMesh and moved to the Mesh WebGL Renderer. Another one bites the dust. 2018-07-06 19:35:46 +01:00
Richard Davey
6aa1526ea9 Graphics.arc has a new optional argument overshoot. This is a small value that is added onto the end of the endAngle and allows you to extend the arc further than the default 360 degrees. You may wish to do this if you're trying to draw an arc with an especially thick line stroke, to ensure there are no gaps. Fix #3798 2018-07-06 17:15:46 +01:00
Richard Davey
a64d747c98 clearMask(true) would throw an exception if the Game Object didn't have a mask. Now it checks first before destroying the mask. Fix #3809 2018-07-06 16:34:11 +01:00
Richard Davey
1931716da3 Exposed isTinted bool 2018-07-06 16:22:42 +01:00
Richard Davey
901a75d053 setCrop will accept numbers or a Rectangle object 2018-07-06 12:57:42 +01:00
Richard Davey
f195a09530 Rectangle.Intersection will take two Rectangle objects and return the area of intersection between them. If there is no intersection, an empty Rectangle is returned. 2018-07-05 23:54:51 +01:00
Richard Davey
f3a446797d Added new TextureCrop component 2018-07-05 13:06:28 +01:00
Richard Davey
43fc988034 Moved crop UV handler to the Frame method. Cleaner and easier. 2018-07-04 15:18:08 +01:00
Richard Davey
ee8c1b403a Fixed cropping with flipped images 2018-07-04 14:50:26 +01:00
Richard Davey
4b0ed8a0da Merge branch 'master' of https://github.com/photonstorm/phaser 2018-07-03 00:14:28 +01:00
Richard Davey
c82c09914e Updated UV values 2018-07-02 23:51:42 +01:00
Chris Andrew
3360825ec3 Fixed minor change log typos. 2018-07-02 23:10:16 +01:00
Richard Davey
a02d5ffdc8 Updated change log 2018-07-02 16:44:32 +01:00
Richard Davey
cf008e612c Added e and f properties and multiplyWithOffset and copyFrom 2018-07-02 15:33:54 +01:00
Richard Davey
8a7ead03a8 Frame.glTexture is a new property that maps to the WebGL Texture for the Frames Texture Source image. It's used internally by the renderer to avoid expensive object look-ups and is set automatically in the Frame constructor. 2018-07-02 13:43:35 +01:00
Richard Davey
390ae5f683 Update 2018-07-02 13:32:20 +01:00
Richard Davey
fe61cfe2d1 You can now set the WebGL batch size in the Game Config via the property batchSize. The default is 2000 before the batch will flush, which is a happy average between desktop and mobile. If targeting desktop specifically, you may wish to increase this value to reduce draw calls. 2018-07-02 12:33:46 +01:00
Richard Davey
b57d94ae33 Typo fixes 2018-06-29 01:07:14 +01:00
Richard Davey
f97ce72e16 Added the Mask compontent to Container. It worked without it, but this brings it in-line with the documentation and other Game Objects. Fix #3797 2018-06-28 14:17:04 +01:00
Richard Davey
217779604c Added tileScaleX and tileScaleY support for Tile Sprites 2018-06-28 12:59:27 +01:00
Richard Davey
7a23378015 Unified use of roundPixels, antialias and pixelArt modes 2018-06-27 15:15:00 +01:00
Richard Davey
1bfe58ab55 remove can take an array of cameras and also no longer needs total to be > 0 2018-06-27 13:03:40 +01:00
Richard Davey
183f5c4260 CameraManager.getTotal is a new method that will return the total number of Cameras being managed, with an optional isVisible argument, that only counts visible cameras if set. 2018-06-27 12:45:54 +01:00
Richard Davey
f2b7fd0a32 Removed the cameraX properties because they fall out of sync on camera remove 2018-06-27 12:13:37 +01:00
Richard Davey
da2b91b460 ArrayUtils.AddAt didn't calculate the array offset correctly if you passed an array in to be merged with an existing array. This also caused Container.addAt to fail if an array was passed to it. Fix #3788 2018-06-27 11:31:51 +01:00
Richard Davey
d02d6532fd TileSprite was using the Size compontent instead of ComputedSize, meaning its getBounds and displayWidth and displayHeight results were incorrect. Fix #3789 2018-06-27 11:20:21 +01:00
Richard Davey
0fdeec2e26 Updated docs 2018-06-26 17:43:05 +01:00
Richard Davey
c2fbad8356 Added jsdocs. Now 100% complete! 2018-06-26 17:24:51 +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
bb7b99a4db Updated log and formatting 2018-06-25 22:53:42 +01:00
Richard Davey
c6c9b25fdc Camera.alpha (and its related method Camera.setAlpha) allows you to get an alpha level for the entire camera. This impacts everything it is rendering, even if those objects also have their own alpha values too. You can tween the property to make the camera contents fade in / out, or you can set it as needed in your game. 2018-06-25 17:35:36 +01:00
Richard Davey
51468fdefc Merge branch 'master' of https://github.com/photonstorm/phaser 2018-06-25 16:25:42 +01:00
Richard Davey
d20188b75d Removed camera pool, renamed current ID and added accessor properties 2018-06-25 16:10:50 +01:00
Richard Davey
0c55745206 Updated log 2018-06-25 16:06:31 +01:00
Chris Andrew
3b3005926a Updated change log. 2018-06-24 00:55:57 +01:00
Richard Davey
6df877cfa3 Docs update 2018-06-23 12:33:20 +01:00
Richard Davey
472df6a7be Camera.centerOn is a new method that will move the camera so its viewport is centered on the given coordinates. A handy way of jumping to different points around a map without needing to calculate the scroll offsets. 2018-06-21 15:54:54 +01:00
Richard Davey
2ff6845360 Camera.centerToBounds didn't take the bounds offset into account, so bounds at non-zero positions wouldn't center properly. All bounds now center correctly. Fix #3706 2018-06-21 14:03:31 +01:00
Richard Davey
3e3b0d6397 Fixed issue where negative camera bounds wouldn't clamp properly 2018-06-21 12:33:20 +01:00
Richard Davey
2c8c4c7a16 Bob.setFrame didn't actually set the frame on the Bob, now it does. Fix #3774 2018-06-20 19:33:59 +01:00
Richard Davey
8fadf99c85 Updated change log 2018-06-20 17:52:23 +01:00
Richard Davey
7d573a35eb Added Camera.setDeadzone method, updated startFollow and added jsdocs. 2018-06-20 14:26:36 +01:00
Richard Davey
d15ac52f02 Updated log 2018-06-19 23:37:08 +01:00
Richard Davey
f1fe131e56 Tidying up Render Texture to make it more useful 2018-06-19 14:14:37 +01:00
Richard Davey
62661b46fb Updated rounded rect functions 2018-06-19 13:17:38 +01:00
Richard Davey
56df2ea829 Updated change log 2018-06-19 12:40:29 +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
Richard Davey
28851ff69b Use hyphens instead of underscores. Fix #3751 2018-06-14 13:30:33 +01:00
Richard Davey
52d04ee5f9 The LoaderPlugin didn't emit the filecomplete event if any of files failed to load, causing it to fail to run the Scene create function as well. Fix #3750 2018-06-14 13:23:15 +01:00
Richard Davey
62deef81d8 Preparing for 3.11.0 development 2018-06-13 15:51:07 +01:00
Richard Davey
6456ef10a6 Touch pointer total fix
The InputManager would only create 1 Pointer, even if Touch input was enabled in the config, which meant you couldn't use touch events unless you first called `addPointer` or specified one in the config. Now, it Touch is enabled in the config, it'll always create 2 pointers by default.
2018-06-13 13:51:04 +01:00
Richard Davey
16f61b402b 3.10 Release 2018-06-13 09:00:40 +01:00
Richard Davey
641abd300b Updated the change log 2018-06-12 16:21:44 +01:00
Richard Davey
6dba00a9a7 Updated change log 2018-06-12 13:15:07 +01:00
Richard Davey
5313343730 Pointers capped at 10 max. 2018-06-11 13:39:28 +01:00
Richard Davey
e6e33f5e21 Added Game.isOver and mouseover and mouseout events. 2018-06-11 12:32:25 +01:00
Richard Davey
c24f3b8fdb Updated change log 2018-06-11 11:54:09 +01:00
Richard Davey
0b8915520b Added eslint rules. Fixed incorrect ES6 use. 2018-06-11 09:05:52 +01:00
Richard Davey
4304811dde Added new Pixel Perfect input handler and makePixelPerfect method. 2018-06-08 17:50:47 +01:00
Richard Davey
680d34b3c4 Convert Gamepad Manager to an Input Plugin 2018-06-08 16:17:58 +01:00
Richard Davey
02554984fe Removed KeyboardManager and replaced with KeyboardPlugin
The `KeyboardManager` class has been removed. It has been replaced with `KeyboardPlugin` which is now an Input level plugin, that registers itself with the new `InputPluginCache`. The Input Plugin class (which belongs to a Scene) will now automatically inject registered plugins into itself on boot. Every Scene has its own instance of the Input Plugin (if enabled in the scene plugins), which in turn has its own instance of the KeyboardPlugin. The `InputManager` no longer has any reference to the Keyboard class at all. The benefits of this are two-fold: First, it allows you to now entirely exclude all of the keyboard classes from a custom build, saving a lot of space if not required. Secondly, it means that the Scenes themselves are now responsible for keyboard events, where-as before they were entirely global. This means a Scene can be paused and stop processing keyboard events, and stop having its Key objects updated, while another Scene can still carry on doing this. It also prevents key related callbacks in sleeping Scenes from being fired (which resolves issue #3733, thanks @JoeMoov2)
2018-06-08 15:16:35 +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
Richard Davey
a2c20a9aa7 lint fixes 2018-06-05 01:08:32 +01:00
Richard Davey
c0ac1259ea Significant Data Manager overhaul.
Adds in values property, removes redundant functions, streamlines the event flow, adds features to the get and set handlers.
2018-06-05 01:01:13 +01:00
Richard Davey
a0e4a07920 In TimeStep.step the rawDelta and delta values are checked to make sure they are non-negative, which can happen in Chrome when the delta is reset and out of sync with the value passed to Request Animation Frame. Fix #3088 2018-06-04 22:29:58 +01:00
Richard Davey
dced3a2090 Updated log. 2018-06-04 22:15:05 +01:00
Richard Davey
719a2eedca Interactive Objects inside of Containers would still fire their input events even if the Container (or any ancestor) was set to be invisible. Objects now check their ancestor tree during the input cull and now properly skip input events if not visible. Fix #3620 2018-06-04 21:04:27 +01:00
Richard Davey
a804d7fc75 Formatting fixes. 2018-06-04 17:26:47 +01:00
Richard Davey
8aacb7fe77 Typo 2018-06-04 17:13:38 +01:00
Richard Davey
6092088afc Updated change log. 2018-06-04 17:03:38 +01:00
Richard Davey
699951bc40 Updated change log 2018-06-04 16:49:17 +01:00
Richard Davey
ecfbea8bd4 Updated change log. 2018-06-04 15:19:32 +01:00
Richard Davey
130ab75c74 Updated change log 2018-06-04 13:24:55 +01:00
Richard Davey
e7fec396e1 If a Body collides with a Static Body it will now set the blocked properties accordingly 2018-06-03 21:17:33 +01:00
Richard Davey
e3e4130a15 Updated log 2018-06-03 17:08:16 +01:00
Richard Davey
fb817833a5 Updated change log 2018-06-02 12:45:34 +01:00
Richard Davey
95826aa95f Merge branch 'master' of https://github.com/photonstorm/phaser 2018-06-01 19:19:21 +01:00
Richard Davey
2a4e6ae56e Updated log with Arcade Physics changes 2018-06-01 19:19:18 +01:00
Chris Andrew
4750e92be4 Fixed a method signature issue with the Animation component's 'remove' event handler.
This prevented removed animations from stopping correctly, when they were removed from the AnimationManager.
2018-06-01 14:37:15 +01:00
Richard Davey
2dc7f1dc4e Updated change log 2018-06-01 00:06:05 +01:00
Chris Andrew
b2ef86534e Updated change log. 2018-05-31 18:05:54 +01:00
Chris Andrew
ee6f48b10c Fixed an incorrect usage of Math.abs() in Quaternion.calculateW() (thanks @qxzkjp). 2018-05-31 18:05:31 +01:00
Chris Andrew
fb55b9bb44 Updated change log. 2018-05-31 17:44:22 +01:00
Richard Davey
f45ab89f8d The ForwardDiffuseLightPipeline, used by the Lights system, now sets a flag if the Scene doesn't contain any lights. All of the Game Objects now check this flag and don't even bother adding themselves to the batch if there are no lights in the Scene, as they'd never render anyway. This also avoids the ghost-image problem if you swap Scenes to a new Scene with the Light Manager enabled, but no actual lights defined. Fix #3707 2018-05-31 16:57:30 +01:00
Richard Davey
20e21ff5ac Rectangle.RandomOutside is a new function that takes two Rectangles, outer and inner, and returns a random point that falls within the outer rectangle but is always outside of the inner rectangle. 2018-05-31 14:07:39 +01:00
Richard Davey
a739be27a1 RenderTexture.resize will allow you to resize the underlying Render Texture to the new dimensions given. Doing this also clears the Render Texture at the same time 2018-05-29 12:07:40 +01:00
Richard Davey
a7da8dc28f The Canvas RenderTexture drawImage method incorrectly set the values of the frame, causing them to appear wrongly scaled in the canvas renderer. Fix #3710 2018-05-29 11:50:23 +01:00
Richard Davey
d2981a8576 Preparing for 3.10 dev work 2018-05-25 00:21:01 +01:00
Richard Davey
23d3fe3774 3.9.0 Release 2018-05-24 23:42:40 +01:00
Richard Davey
6cfc5d49e7 The AudioContextMonkeyPatch has been updated to use an iife. Fix #3437 2018-05-24 23:17:33 +01:00
Richard Davey
3d9da060c5 Camera.shake would not effect dynamic tilemap layers. Fix #3669 2018-05-24 23:02:59 +01:00
Richard Davey
7d692bc7dc Added Camera.followOffset property and helper methods setLerp and setFollowOffset. 2018-05-24 17:30:28 +01:00
Richard Davey
f8cda698e4 Added Camera.lerp and implemented linear interpolation when following targets 2018-05-24 15:29:38 +01:00
Richard Davey
57c2ccbf5e Formatting fix and doc update 2018-05-24 14:03:29 +01:00
Richard Davey
35a5a6d2da updated change log 2018-05-24 13:49:51 +01:00
Richard Davey
68303622f2 Setting an existing Game Object as a static Arcade Physics body would sometimes incorrectly pick-up the dimensions of the object, such as with TileSprites. Fix #3690 2018-05-23 15:17:26 +01:00
Richard Davey
6eea9db9b2 jsdoc fixes. FIx #3694 2018-05-23 15:04:54 +01:00
Richard Davey
63bb14c37c Log update 2018-05-23 14:58:44 +01:00
Richard Davey
b6768f8a0f Added contributor 2018-05-22 23:23:01 +01:00
Richard Davey
8aa116ca4b The dragend event would be broadcast even if the drag distance or drag time thresholds were not met. Fix #3686 2018-05-22 21:24:50 +01:00
Richard Davey
de8462efed Added default values and tidied up docs a little 2018-05-22 16:19:18 +01:00
Richard Davey
a9cbf23b4e Log update 2018-05-22 16:13:05 +01:00
Richard Davey
457ab68ef4 Container updated to use preDestroy and remove event hooks 2018-05-22 16:02:28 +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
56888fd5db Game will now auto-focus and prevent focus loss for the keyboard when clicking away and back again
* Game has a new property `hasFocus` which is a read-only boolean that lets you know if the window the game is embedded in (including in an iframe) currently has focus or not.
* Game.Config has a new property `autoFocus`, which is `true` by default, and will automatically call `window.focus()` when the game starts.
* Clicking on the canvas will automatically call `window.focus`. This means in games that use keyboard controls if you tab or click away from the game, then click back on it again, the keys will carry on working (where-as before they would remain unfocused)
2018-05-18 17:37:45 +01:00
Richard Davey
7c28a7bd08 Bob.reset will now reset the position, frame, flip, visible and alpha values of the Bob, plus JSDocs completed. 2018-05-18 14:44:25 +01:00
Richard Davey
9429a28574 The Particle tint value was incorrectly calculated, causing the color channels to be inversed. Fix #3643 2018-05-18 13:16:17 +01:00
Richard Davey
ef2b8d68b6 setInteractive now works on non-zero sized Containers. Sorting fixed. 2018-05-18 12:48:12 +01:00
Richard Davey
919676ae10 PluginManager.destroy didn't reference the plugin correctly, throwing an Uncaught TypeError if you tried to destroy a game instance. Fix #3668 2018-05-17 12:16:14 +01:00
Richard Davey
b4f371edc5 Preparing for 3.9 dev 2018-05-16 22:05:25 +01:00
Richard Davey
0d0846a415 Calling a creator, such as GraphicsCreator, without passing in a config object, would cause an error to be thrown. All Game Object creators now catch against this. 2018-05-16 15:17:08 +01:00
Richard Davey
dfc3cb92c0 3.8.0 Release 2018-05-16 15:08:01 +01:00
Richard Davey
26faa58ad7 Corrected an error in Container.getBoundsTransformMatrix that called a missing method, causing a getBounds on a nested container to fail. Fix #3624 2018-05-15 16:23:33 +01:00
Richard Davey
5b0cb0faf3 All Game Objects have a new method setRandomPosition which will randomly position them anywhere within the defined area, or if no area is given, anywhere within the game size. 2018-05-15 15:58:53 +01:00
Richard Davey
2f4358fed4 The keycodes for 0 to 9 on the numeric keypad have been added. You can now use them in events 2018-05-15 15:57:26 +01:00
Richard Davey
9500a6ee32 When calling generateFrameNames to define an animation from a texture atlas you can now leave out all of the config properties and it will create an animation using every frame found in the atlas. Please understand you've no control over the sequence of these frames if you do this and it's entirely dictated by the json data 2018-05-15 15:34:57 +01:00
Richard Davey
6ef465a734 Animation.yoyo was ignored when calculating the next frame to advance to, breaking the yoyo effect. It now yoyos properly 2018-05-15 09:40:22 +01:00
Richard Davey
f410dc3d88 The Headless renderer was broken due to an invalid access during TextureSource.init. 2018-05-15 08:51:54 +01:00
Richard Davey
bdf9f5ce60 Utils.Array.BringToTop failed to move the penultimate item in an array due to an index error. Fix #3658 2018-05-15 08:45:39 +01:00
Richard Davey
4741ee02b1 Updated docs and lint fixes 2018-05-11 18:55:44 +01:00
Richard Davey
2f4c52b7e4 Remapped EventEmitter correctly to Phaser.Events.EventEmitter 2018-05-11 14:05:34 +01:00
Richard Davey
0a46c13f4c Working through new plugin structure 2018-05-11 01:50:37 +01:00
Richard Davey
11cbf0cf8d Marked the children parameter as optional. Fix #3657 2018-05-10 23:32:46 +01:00
Richard Davey
cc9d3160b1 Update type 2018-05-10 13:07:49 +01:00
Richard Davey
7a4b29872e Allow for custom canvas and context game config options. Game.context now set in WebGL mode. Allows WebGL2 contexts to be passed in. Fix #3653 2018-05-10 12:25:33 +01:00
Richard Davey
835bc37e32 Optimized TextureTintPipeline.drawBlitter so it skips bobs that have alpha of zero and only calls setTexture2D if the bob sourceIndex has changed, previously it called it for every single bob. 2018-05-09 15:13:06 +01:00
Richard Davey
056e74d6dc Added compression object for future texture compression support. 2018-05-09 13:46:19 +01:00
Richard Davey
6350976329 Updated change log 2018-05-09 13:02:31 +01:00
Richard Davey
89329a2315 Added getMaxTextures and getMaxTextureSize methods 2018-05-09 12:12:16 +01:00
Richard Davey
d90e012898 Preparing for 3.8.0 2018-05-09 11:23:41 +01:00
Richard Davey
7788602518 3.7.1 Release 2018-05-08 23:47:33 +01:00
Richard Davey
57918bb50f Removed the need for raw-loader in webpack. Shaders now build to standard JS files. Removed fs requirement. 2018-05-08 23:04:57 +01:00
Richard Davey
ec3bd4c729 The WebAudioSoundManager will now listen for 'click' events on the document body, as well as touch events, before resuming the AudioContext. 2018-05-08 16:51:43 +01:00
Richard Davey
672a535d88 Added disableInteractive and removeInteractive methods. #3621 2018-05-08 16:15:50 +01:00
Richard Davey
cfef9c97aa Updated change log 2018-05-08 13:16:59 +01:00
Richard Davey
560b0ca84b Binary files have a new optional dataType property to cast the data to upon load. 2018-05-08 01:12:41 +01:00
Richard Davey
ad6c08a4d0 Preparing for 3.7 release next week 2018-05-04 18:57:34 +01:00
Richard Davey
7c53e13e81 Finished jsdocs 2018-05-04 18:50:10 +01:00
Richard Davey
8e7df2a234 You can now set the X-Requested-With header in the XHR requests by specifying it in your XHRSettings config, either in the game, scene or file configs. 2018-05-04 17:33:48 +01:00
Richard Davey
8b574f271f Loader.enableParallel has been removed. If you don't want parallel file loads then set the maximum parallel limit to 1. Related to this, the Game Config loaderEnableParallel property has been removed. 2018-05-04 17:13:27 +01:00
Richard Davey
faef3449f5 Added jsdocs 2018-05-04 16:00:02 +01:00
Richard Davey
6d83cae2dc The Texture class has a new method getDataSourceImage which will return the raw image data of the data source. 2018-05-04 14:33:02 +01:00
Richard Davey
97dd683ea1 The Forward Diffuse Light Pipeline was hard coded to assume the normal map would be stored in the source index zero. It now correctly obtains the normal map from the frame source index, which means all Game Objects that used frames from multi-atlas textures will now work with lights properly. 2018-05-04 14:31:19 +01:00
Richard Davey
82591113bd Updated change log 2018-05-04 02:36:53 +01:00
Richard Davey
107ca71d6b BitmapText, both static and dynamic, can now take any data-type, including numbers, for the text argument in the constructor. Before they only worked via setText 2018-05-03 15:52:12 +01:00
Richard Davey
ab303f0f1f Updated change log 2018-05-03 00:36:37 +01:00
Richard Davey
28251fd0f5 addToScene added to all Game Object Creators 2018-05-02 10:57:26 +01:00
Richard Davey
a14ce15685 Fixed setActive and setVisible 2018-05-01 12:35:56 +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
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
63dbd9fd12 The Animation Component setProgress method was setting the frame on the wrong object. Fix #3633 2018-04-30 12:37:50 +01:00
Richard Davey
fbb6143f81 Updated change log 2018-04-30 12:28:33 +01:00
Richard Davey
9a974514ff Added new LinkFile class and updated other file types to use it. 2018-04-27 18:44:12 +01:00
Richard Davey
ef136f684d Polygon.setTo would fail if given an array of arrays as a list of points. Fix #3619 2018-04-26 15:55:27 +01:00
Richard Davey
65c54f4b8d Array.AddAt would fail if it branched to the fast-path within a Container due to an invalid property. Fix #3617 2018-04-26 15:44:56 +01:00
Richard Davey
b421499b89 Updated log 2018-04-26 13:05:57 +01:00
Richard Davey
b4ddfe3181 Updated log 2018-04-26 13:05:00 +01:00
Richard Davey
103e0c8727 Updated RandomDataGenerator.shuffle to remove several internal calls as min is always zero 2018-04-26 13:02:13 +01:00
Richard Davey
038bbcc7bc Fixed the remaining file types. 2018-04-25 23:16:17 +01:00
Richard Davey
d258fc30e9 Change log udpated 2018-04-25 17:16:46 +01:00
Richard Davey
8bdeb69716 Updated change log 2018-04-23 23:53:04 +01:00