photonstorm
ecbff44354
Group.getByName searches the Group for the first instance of a child with the name
property matching the given argument. Should more than one child have the same name only the first instance is returned.
2016-04-05 23:59:05 +01:00
photonstorm
65f8f111c8
Game.forceSingleUpdate is now true
by default.
2016-04-05 23:40:15 +01:00
photonstorm
b762e1dc55
Added jsdocs warning re: #2045
2016-04-05 23:28:02 +01:00
photonstorm
4c3a30a6f6
PluginManager.destroy is now called by Game.destroy.
2016-04-05 23:16:52 +01:00
photonstorm
aee0212e11
Camera.follow now uses the Targets world
property to seed the camera coordinates from, rather than its local position. This means Sprites that are members of offset Groups, or transformed display lists, should now be followed more accurately (thanks @rbozan #2106 )
2016-04-05 23:04:31 +01:00
photonstorm
f40cfbe2ae
2015 - 2016.
2016-04-04 22:16:16 +01:00
Rafael Barbosa Lopes
dd51a1724e
Ensure a parent container is a Group before removing from its hash.
2016-03-24 13:44:49 -03:00
photonstorm
ede6806e41
The default state of the internal property _boundDispatch
in Phaser.Signal is now false
, which allows for use of boundDispatches (thanks @alvinlao #2346 )
2016-02-26 13:40:35 +00:00
fillmoreb
b1c74e694e
Update World.js
...
Phaser.World.centerX and Phaser.World.centerY only worked if the bounds had an origin of 0,0. This change takes into account the actual origin.
2016-02-25 11:58:22 -07:00
photonstorm
0b5a4391f1
StateManager.destroy now sets clearCache
and clearWorld
internally before clearing the current state, as otherwise they would have been left untouched, such as from Game.destroy (thanks @i-dimitrov #2138 )
2016-02-18 13:10:54 +00:00
photonstorm
46cc05a377
Groups now check for child.parent
before calling removeFromHash
(thanks @spayton #2323 #2338 )
2016-02-18 12:29:01 +00:00
Richard Davey
989d53ecba
Undo #1993
2016-02-09 14:01:04 +00:00
Richard Davey
30b563085b
The z
property assigned to children of a Group now starts from zero instead of 1, this is an internal change mostly but if you relied on the z
property for some reason then please be aware of this (thanks pantoninho)
2016-02-09 11:31:46 +00:00
Richard Davey
eff10cec71
Moved the width / height floor into the ScaleManager ( #2329 )
2016-02-08 23:09:16 +00:00
Richard Davey
1ac287f9d3
Merge pull request #1993 from nickryall/retina-fullscreen
...
Fix for fullscreen retina ( Desktop )
2016-02-04 18:31:50 +02:00
photonstorm
9787474c6e
Camera.checkBounds now takes the scale of the Camera into account (thanks @ForGorNorPor #2263 )
2016-02-04 16:26:18 +00:00
Richard Davey
2cd76b7617
Docs update ( #2166 )
2016-02-04 00:13:32 +00:00
Richard Davey
ecb68c2fca
JSDocs update.
2016-02-03 23:53:09 +00:00
Richard Davey
a0eb44ec09
Group.add and Group.addAt would forget to remove the child from the hash of its previous Group if it had a physics body enabled, causing unbounded hash increase (thanks @strawlion @McIntozh #2232 )
2016-02-03 21:51:01 +00:00
Richard Davey
3bc8dcd154
The width and height values passed to the Game constructor are now passed through Math.floor first. This ensures you can never create a game width non-integer dimensions, which has all kinds of implications - from browser performance to breaking things like TileSprite rendering ( #2262 )
2016-02-03 19:11:26 +00:00
Richard Davey
2d2101adcb
Both transparent
and antialias
were ignored if set to false
in a Game configuration object, as the parseConfig
method didn't check for falsey values (thanks @amadeus #2302 )
2016-02-03 12:28:12 +00:00
Richard Davey
4e3c764207
Merge pull request #2248 from 06wj/dev
...
Fixed ScaleManager EXACT_FIT not working
2016-02-02 17:42:54 +02:00
Richard Davey
b3da35163a
Merge pull request #2151 from jaminscript/logic-fix
...
Remove unnecessary variable
2016-02-01 19:16:02 +02:00
Richard Davey
1d2d707b32
Merge pull request #2168 from nlotz/dev
...
fix typos in API docs
2016-02-01 19:01:58 +02:00
Richard Davey
13cf12d08a
Merge pull request #2297 from nexiuhm/master
...
loadUpdate() now gets a last update when loading is complete.
2016-02-01 18:20:19 +02:00
Richard Davey
8795792047
Merge pull request #2289 from staff0rd/grammar_fix
...
fixed grammar on update() comment
2016-02-01 18:18:05 +02:00
nexiuhm
bc00f924a7
Added a check to avoid calling the function when doing dynamic loading after state is created.
2016-01-14 17:23:52 +01:00
nexiuhm
1c65c48341
onLoadUpdate now recives the last ( 100 ) update.
2016-01-14 17:09:41 +01:00
zeterain
9edec8da57
Update documentation in ScaleManager.js
...
Documentation for ScaleManager.compatibility mis-spelled the supportsFullScreen property.
2016-01-11 09:02:07 -07:00
Stafford Williams
16517cc773
fixed grammar on update() comment
2016-01-08 20:29:58 +11:00
墨水
ba0683b4d0
Fixed ScaleManager EXACT_FIT not working
2015-12-09 09:55:40 +08:00
photonstorm
83948f5882
Updated Filter docs ( #2223 )
2015-11-20 17:01:05 +00:00
nlotz
da45d04a70
fix typos in API docs
2015-10-27 09:10:14 +01:00
Ben Abbott
1dadaf5590
Remove unnecessary variable
...
This commit removes an unnecessary variable which was defined, populated but never used.
2015-10-22 13:47:06 +13:00
Richard Davey
e6aa9f83c9
Typo fix.
2015-10-19 23:18:23 +01:00
photonstorm
8e4dc1f078
ScaleManager.getParentBounds now checks if parentNode
has an offsetParent
before calling getBoundingClientRect
on it (thanks @McFarts #2134 )
2015-10-13 12:04:57 +01:00
photonstorm
c79a341c58
Fixed jshint errors.
2015-10-12 12:23:48 +01:00
photonstorm
e01a754732
Removed the FrameDebugger and moved to its own branch.
2015-10-12 11:10:37 +01:00
Richard Davey
3d5fac1817
Merge pull request #2111 from jdnichollsc/master
...
Takes any transforms into account to get the correct parent bounds
2015-10-06 19:08:02 +03:00
photonstorm
9013107fd1
The ScaleManager no longer creates a Phaser.FlexGrid if the class isn't available (i.e. excluded via a custom build)
2015-09-30 11:20:00 +01:00
photonstorm
6fd2b6a7ec
Phaser.Create no longer automatically creates a BitmapData object when it starts. It now only does it when you first make a texture or grid.
2015-09-30 11:18:53 +01:00
Juan David Nicholls Cardona
8ce70cbeb4
Takes any transforms into account to get the correct parent bounds
2015-09-25 15:42:29 -05:00
Richard Davey
cffc90ebbc
Merge pull request #2107 from JackMorganNZ/master
...
Corrected spelling: 'mainted' to 'maintained'
2015-09-23 11:21:21 +03:00
Jack Morgan
589b9b8edd
Corrected spelling: 'mainted' to 'maintained'
2015-09-23 12:03:54 +12:00
Richard Davey
d86d01bd25
Camera.setBoundsToWorld only adjusts the bounds if it exists (thanks @prudolfs #2099 )
2015-09-20 21:07:28 +01:00
photonstorm
b011146a87
Fixed lint errors.
2015-09-16 13:55:33 +01:00
photonstorm
e64f9647db
Better output. Need to fix jshint errors next.
2015-09-16 13:36:53 +01:00
photonstorm
09e8d465e4
Lots more work on the FrameDebugger. Just need texture preview and then can test it properly.
2015-09-16 13:17:06 +01:00
Richard Davey
61edd1b458
FrameDebugger can now handle Text and BitmapText.
2015-09-16 03:18:15 +01:00
Richard Davey
b89f6dd3b4
Much improved final output and logging process.
2015-09-16 02:25:57 +01:00
Richard Davey
29b4bb3174
:)
2015-09-16 02:25:40 +01:00
photonstorm
3be0ed8849
FrameDebugger now hooked into Canvas Renderer. Better output coming.
2015-09-15 16:14:14 +01:00
photonstorm
4125e42a06
Sorted out setting the Stage backgroundColor. Much more concise now.
2015-09-15 13:34:07 +01:00
photonstorm
ff254ec33b
Added clearBeforeRender boolean.
2015-09-15 12:53:44 +01:00
photonstorm
0ee95b22d6
Fixed rogue comma.
2015-09-15 12:53:44 +01:00
photonstorm
b99c9e22ec
Removed PIXI.Stage. Phaser.Stage now handles everything it needs to do.
2015-09-15 12:53:44 +01:00
photonstorm
705cacf2ca
Sorting out the Stage background color assignment so we can drop a boolean check in the render method.
2015-09-15 12:53:43 +01:00
photonstorm
5a1a918a5d
Added FrameDebugger.
...
Tidying up the renderer constructors.
2015-09-15 12:53:43 +01:00
photonstorm
06ed961e81
Added FrameDebugger into the mix.
2015-09-15 12:53:43 +01:00
photonstorm
8db23545da
jsdoc updates.
2015-09-10 15:57:55 +01:00
photonstorm
90a500ec1e
Game.update could call updateLogic
multiple times in a single frame when catching up with slow device frame rates. This would cause Tweens to advance at twice the speed they should have done (thanks @mkristo)
...
Time.desiredFpsMult is a pre-calculated multiplier used in Game.update.
Time.refresh updates the `Time.time` and `Time.elapsedMS` values and is called automatically by Game.update.
2015-09-09 12:09:18 +01:00
photonstorm
2de83328d9
Testing Tween timer fix.
2015-09-08 17:44:28 +01:00
Richard Davey
38eca4d5b9
Filter.addToWorld allows you to quickly create a Phaser.Image object at the given position and size, with the Filter ready applied to it. This can eliminate lots of duplicate code.
2015-09-03 00:46:47 +01:00
photonstorm
8833a509eb
jsdoc fix.
2015-09-02 16:16:52 +01:00
photonstorm
32b0c98f7a
Group.resetChild is a new method that allows you to call both child.reset
and/or child.loadTexture
on the given child object. This is used internally by getFirstDead
and similar, but is made public so you can use it as a group iteration callback. Note that the child must have public reset
and loadTexture
methods to be valid for the call.
...
Group.getFirstDead, Group.getFirstAlive and Group.getFirstExists all have new optional arguments: `createIfNull`, `x`, `y`, `key` and `frame`. If the method you call cannot find a matching child (i.e. getFirstDead cannot find any dead children) then the optional `createIfNull` allows you to instantly create a new child in the group using the position and texture arguments to do so. This allows you to always get a child back from the Group and remove the need to do null checks and Group inserts from your game code. The same arguments can also be used in a different way: if `createIfNull` is false AND you provide the extra arguments AND a child is found then it will be passed to the new `Group.resetChild` method. This allows you to retrieve a child from the Group and have it reset and instantly ready for use in your game without any extra code.
2015-08-28 12:23:48 +01:00
Paul
26a6338072
Change splice.call(arguments, ..) to use slice
...
- Bypasses issue of usage incorrectly omitting 2nd argument to `splice`
- More clear of intent; `slice` does not modifify `arguments`
- `slice` is faster across all desktop browsers, by varying degrees
- Probably due to parameter-aliasing and de-opts when modified.
- Both `slice` and `splice` create a new Array object
2015-08-26 23:50:16 -07:00
nickryall
57aaf23238
Fix for fullscreen retina
2015-08-09 20:32:04 +12:00
Brice Thomas
ef536d276a
doc(Signal): fix typo
2015-08-06 13:34:14 +02:00
photonstorm
b365ebf570
jshint fix.
2015-08-03 16:45:03 +01:00
photonstorm
f4a1f11429
PIXI.CanvasPool is a new static global created to deal with the issue of resource leaks and continuous DOM node build-up when creating lots of Text or BitmapData objects, or when calling generateTexture
on any display object. The CanvasPool will do its best to re-use out dated canvas elements rather than filling up the DOM with new ones.
...
Sprite.setTexture has a new `destroyBase` parameter - set this to `true` if you know the base used a generated texture that isn't being used by any other sprites. This will free-up the canvas for further re-use by other calls to generateTexture or Text objects.
2015-08-03 16:09:16 +01:00
photonstorm
e901fb80f6
Merging in the CanvasPool changes to the core.
2015-08-03 14:46:55 +01:00
photonstorm
98ae410c34
Removed use of the deprecated enterFullScreen
and leaveFullScreen
signals from the Scale Manager (thanks @mmanlod #1972 )
2015-08-03 11:44:00 +01:00
photonstorm
858ad51610
Phaser 2.4 release.
2015-07-22 15:31:30 +01:00
photonstorm
ffaa7d711f
Removed BaseTextureCache requirement from BitmapData.
...
Fixed jshint.
Updated TS defs.
2015-07-22 13:23:40 +01:00
photonstorm
8eb34f96ce
WebGL context loss and restoration is now handled directly by Phaser.
...
Cache.clearGLTextures empties out all of the GL Textures from Images stored in the cache. This is called automatically when the WebGL context is lost and then restored.
2015-07-22 12:59:32 +01:00
photonstorm
f15fe6706c
All undefined argument checks were changed from if (typeof x === 'undefined')
to if (x === undefined)
removing the typeof check and saving some bytes across the codebase in the process.
2015-07-22 10:37:15 +01:00
Richard Davey
9e38bf974a
World.stateChange is a new method that is called whenever the state changes or restarts. It resets the world x/y coordinates back to zero and then resets the Camera.
...
Sprites with Arcade Physics bodies that had `collideWorldBounds` enabled would be moved to the wrong position if you restarted a State (or swapped to a new State) that reset the world bounds (thanks @vulvulune #1775 )
2015-07-22 01:24:26 +01:00
Richard Davey
5e33a2ea92
TS defs updates for the Cache changes.
2015-07-15 23:22:51 +01:00
Richard Davey
4dec046c40
Added pendingDestroy to Groups.
2015-07-12 11:33:30 +01:00
Richard Davey
1850e287bd
Merge pull request #1899 from spayton/updev
...
Removed use of deprecated signals (enterLandscape & enterPortrait)
2015-07-10 17:09:35 +01:00
photonstorm
d3525950a2
Group.addMultiple if given a Group.children array as the first parameter would fail as the original group length was decreased out of line with the children being added. Group.addMultiple now checks if the children argument is a Phaser.Group instance, and if so it uses Group.moveAll instead on it (thanks @AnderbergE #1898 )
...
Group.moveAll allows you to move all of the children of a Group into another Group.
2015-07-10 17:05:54 +01:00
spayton
37e0efefe3
Removed use of deprecated signals (enterLandscape & enterPortrait)
2015-07-10 14:42:17 +01:00
Richard Davey
8e92c13412
Canvas.setSmoothingEnabled only applies the value of the property exists, which avoids the Chrome webkit prefix deprecation warnings.
2015-07-10 04:02:21 +01:00
Richard Davey
f65bca1026
All Signals now have the ability to carry extra custom arguments with them, which are passed on to the callback you define after any internal arguments. For example a Phaser.Key has an onDown signal. When dispatched onDown sends a reference to the Key as the first and only argument. But you can now set the callback like this: fireKey.onDown.add(shoot, this, 0, 'lazer', 64)
. So when the onDown signal is dispatched internally the callback (shoot
in this case) will receive 3 arguments: the Key reference that is raised internally and the string 'lazer' and value 64, which were the custom arguments provided when setting-up the callback.
2015-07-09 21:15:00 +01:00
photonstorm
5f611f83cb
Fixed small texture bug.
2015-07-09 15:51:24 +01:00
photonstorm
8cf300fc11
Added Japanese Machine palette.
2015-07-09 14:29:18 +01:00
photonstorm
630886da28
Reverting Windows Phone WebGL - Canvas force #1706
2015-07-09 11:51:27 +01:00
Richard Davey
0dc8757781
Updates.
2015-07-09 01:30:03 +01:00
Richard Davey
6a8e6a7954
Adding in Phaser.Create.
2015-07-09 00:19:21 +01:00
photonstorm
b9dcf74726
If the device is detected as a Windows Phone the renderer is automatically set to use Canvas, even if WebGL or AUTO was requested (thanks @ramarro123 #1706 )
2015-07-08 15:25:52 +01:00
photonstorm
1281bc52d7
Setting the scaleMode property of a Game configuration object would cause a ScaleManager TypeError in the resize method. It now stores the scale mode locally and applies it after boot (thanks @Mickawesomesque #1534 )
2015-07-08 14:52:20 +01:00
Richard Davey
92f2742a26
When reusing a Tween created with an array of properties the values would get exponentially added to the TweenData internal array each time the tween was re-run (thanks @SBCGames #1747 )
2015-07-07 04:21:55 +01:00
Richard Davey
5f2b2df3d4
Yuma :)
2015-06-22 00:31:54 +01:00
photonstorm
102c74e121
Deprecated the following:
...
* Camera.screenView
* ScaleManager.maxIterations
* ScaleManager.enterPortrait (see onOrientationChange)
* ScaleManager.enterLandscape (see onOrientationChange)
* ScaleManager.enterFullScreen (see onFullScreenChange)
* ScaleManager.leaveFullScreen (see onFullScreenChange)
* ScaleManager.fullScreenFailed (see onFullScreenError)
* ScaleManager.checkResize
* ScaleManager.checkOrientation
* ScaleManager.setScreenSize (see updateLayout)
* ScaleManager.setSize (see reflowCanvas)
* ScaleManager.checkOrientationState (see reflowCanvas)
* ScaleManager.orientation (see screenOrientation)
* Gamepad.disabled (see enabled)
* Input.currentPointers (see totalActivePointers)
* Input.disabled (see enabled)
* Keyboard.disabled (see enabled)
* Mouse.disabled (see enabled)
* Mouse.mouseMoveCallback (see Input.addMoveCallback)
* MSPointer.disabled (see enabled)
* Touch.disabled (see enabled)
* Cache.getUrl (see getURL)
* Math.truncate (see Math.trunc)
* Math.snapToInArray (see Phaser.ArrayUtils.findClosest)
* Math.interpolateFloat (see Math.linear)
* Math.normalizeLatitude (use Phaser.Math.clamp(lat, -90, 90))
* Math.normalizeLongitude (use Phaser.Math.wrap(lng, -180, 180))
* Math.chanceRoll (use Phaser.Utils.chanceRoll)
* Math.numberArray (use Phaser.ArrayUtils.numberArray)
* Math.numberArrayStep (use Phaser.ArrayUtils.numberArrayStep)
* Math.limitValue (use Phaser.Math.clamp)
* Math.randomSign (use Phaser.Utils.randomChoice(-1, 1))
* Math.angleLimit (use Phaser.Math.clamp)
* Math.getRandom (use Phaser.ArrayUtils.getRandomItem)
* Math.removeRandom (use Phaser.ArrayUtils.removeRandomItem)
* Math.floor (use Math.trunc)
* Math.ceil (use Phaser.Math.roundAwayFromZero)
* Math.shift (use Phaser.ArrayUtils.rotate)
* Math.shuffleArray (use Phaser.ArrayUtils.shuffle)
* Math.distanceRounded (do the rounding locally)
* Canvas.getOffset (see Phaser.DOM.getOffset)
* Canvas.getAspectRatio (see Phaser.DOM.getAspectRatio)
* TilemapLayer.tileColor (use TilemapLayer.debugSettings.missingImageFill)
* Phaser.ArrayList alias removed, now use Phaser.ArraySet
* Utils.transposeArray (see Phaser.ArrayUtils.transposeMatrix)
* Utils.rotateArray (see Phaser.ArrayUtils.rotateMatrix)
* Utils.shuffle (see Phaser.ArrayUtils.shuffle)
2015-06-17 03:14:31 +01:00
photonstorm
00cf44eb22
If running under Cordova and iOS the Game.lockRender boolean will be set to true
when the game pauses and false
when it resumes. This avoids the gpus_ReturnNotPermittedKillClient
app crash on iOS (thanks @cncolder #1800 )
2015-06-16 14:54:42 +01:00
photonstorm
697a3f4f18
jsdoc tweak.
2015-06-16 11:57:28 +01:00
photonstorm
5c6eab86c0
Swapped to the shorter 'between' method.
2015-06-09 20:54:52 +01:00
photonstorm
1438248388
Group.add and Group.addAt will only create a Physics Body on the child if it doesn't already have one. This is a change from 2.3 where it would replace the physics body property with the new body, but this could lead to garbage build-up over time, so you should now properly destroy the body before changing it.
2015-05-29 00:59:23 +01:00
photonstorm
18ae9268aa
Scope fix.
2015-05-22 15:14:49 +01:00
photonstorm
c2f7520c7a
StateManager.onStateChange is a new signal which is dispatched whenever the State changes from one to another. The callback you specify is sent two parameters: the string based key of the new state, and the second parameter is the string based key of the old / previous state.
2015-05-22 15:10:20 +01:00
photonstorm
23f2a7ca66
Removed 'scale' from Group as it comes from PIXI anyway.
2015-05-12 13:03:27 +01:00
photonstorm
7c123b5203
Add guards around scaleSprite.
2015-05-12 13:03:26 +01:00
photonstorm
714580f9a9
Manual fix #1752
2015-04-17 17:35:52 +01:00
photonstorm
333663731d
Added the missing preRender
function to the Phaser.State class template.
2015-04-15 01:37:18 +01:00
photonstorm
f2f8dcd061
Phaser.StateManager no longer calls preRender
unless the State create
method has finished. If the State doesn't have a create
method then preRender
runs immediately.
...
Phaser.StateManager.created is a new read-only boolean that tells you if the State has finished running its `create` method. If it doesn't have one it's always true.
2015-04-15 01:36:50 +01:00
photonstorm
9f493044d4
The StateManager would incorrectly call loadUpdate
while the game was paused or if the State didn't have an update
method defined even after the loader was completed.
...
The StateManager would incorrectly call `loadRender` while the game was paused or if the State didn't have an `render` method defined even after the loader was completed.
2015-04-14 15:34:32 +01:00
photonstorm
a7db0e2c70
Group.hash is an array (previously available as Group._hash
, but protected) into which you can add any of its children via Group.addToHash
and Group.removeFromHash
. Only children of the Group can be added to and removed from the hash. The hash is used automatically by Arcade Physics in order to perform non z-index based destructive sorting. However if you don't use Arcade Physics, or it isn't a physics enabled Group, then you can use the hash to perform your own sorting and filtering of Group children without touching their z-index (and therefore display draw order).
...
Group.physicsSortDirection is a new property allowing you to set a custom sort direction for Arcade Physics Sprites within the Group hash. Previously Arcade Physics used one single sort direction (defined on `Phaser.Physics.Arcade.sortDirection`) but this change allows you to specifically control how each and every Group is sorted, so you can now combine tall and wide Groups with narrow and thin in a single system.
2015-04-13 16:30:02 +01:00
photonstorm
49be59b0c9
Added missing resumed
method to Phaser.State class template.
2015-03-26 10:54:32 +00:00
photonstorm
8233b0a079
Phaser 2.3.0.
2015-03-26 02:37:31 +00:00
photonstorm
7e19f45350
When the Game first boots it will now call window.focus()
. This allows keyboard events to work properly in IE when the game is running inside an iframe. You can stop this from happening by setting window.PhaserGlobal.stopFocus = true
(thanks @webholics #1681 )
2015-03-24 13:27:27 +00:00
photonstorm
7aa4d0ad0d
When a State is started and linked to Phaser it has a new property created on it: key
, which is the string identifier used by the State.
2015-03-24 10:21:03 +00:00
photonstorm
1486e166bd
Added physicsType property.
2015-03-23 15:04:27 +00:00
photonstorm
53b1562eb6
jshint fix
2015-02-26 23:12:26 +00:00
photonstorm
74eeddf956
You can now set a resolution
property in your Game Configuration object. This will be read when the Pixi renderer instance is created and used to set the resolution within that ( #1621 )
2015-02-26 10:52:30 +00:00
photonstorm
8aec760cd5
First pass at spacial sorting in World.collide.
2015-02-25 05:39:02 +00:00
photonstorm
321e11d0a5
A State swap now sets the Loader.reset hard
parameter to true
by default. This will null any Loader.preloadSprite that may have been set ( #1636 )
2015-02-25 05:18:49 +00:00
photonstorm
a69e53f901
Copyright date change.
2015-02-25 03:36:23 +00:00
photonstorm
ec19abb91c
Component preUpdate changes.
2015-02-25 00:59:27 +00:00
photonstorm
35b4926eb8
Undoing previous change - doesn't actually work at all! #1620
2015-02-18 23:32:12 +00:00
photonstorm
4699770520
Adjusted function order.
2015-02-18 23:15:54 +00:00
photonstorm
9effb4a946
Stage.visibilityChange now has a second parameter fromPhaser
. This is set to true
by the Stage._onChange
callback. This should mean that when Phaser is listening for window.onblur
and window.onfocus
events it will only trigger the visibilityChange if that event was generated by Phaser itself. If it was generated by something else on the page or iframe it should now be ignored (thanks @austinhallock #1620 )
2015-02-18 23:12:08 +00:00
photonstorm
88f10f7f89
Updated fixedToCamera docs to reflect non-nesting ( #1596 )
2015-02-18 22:58:48 +00:00
photonstorm
b0261e4a5f
Group.cursorIndex is the index of the item the Group cursor points to. This replaces Group._cache[8].
2015-02-18 22:54:19 +00:00
photonstorm
9fd5ae119b
jsdocs update.
2015-02-17 06:01:09 +00:00
photonstorm
8892f46a83
PIXI.WebGLRenderer.destroy has been fixed to decrement the glContextId
and remove it from the PIXI.instances global. Game.destroy
now hooks into this. This now means that you can now delete and create your Phaser game over and over without it crashing WebGL after the 4th attempt ( #1260 )
2015-02-11 21:02:15 +00:00
photonstorm
0e7820bde5
Group.forEach (and many other Group methods) now uses the children.length
value directly instead of caching it, which both helps performance and stops the loop from breaking should you remove a Group child in the invoked callback.
2015-02-11 17:19:56 +00:00
photonstorm
42c75c0ad2
Updated jsdocs to mention roundPixels ( #1377 )
2015-02-11 15:32:52 +00:00
photonstorm
6506e8d7e6
JSdocs update ( fix #1520 )
2015-02-11 13:47:58 +00:00
photonstorm
7a066a3a8c
World.setBounds will now adjust the World.x/y values to match those given ( #1555 )
2015-02-10 21:40:53 +00:00
photonstorm
0054dc996b
The Loader now directly calls StateManager.loadComplete rather than the StateManager listening for the loadComplete event, because Loader.reset unbinds this event (and it's easy to accidentally remove it too)
...
Loader.onLoadComplete is dispatched *before* the Loader is reset. If you have a `create` method in your State please note that the Loader will have been reset before this method is called. This allows you to immediately re-use the Loader without having to first reset it manually.
2015-02-10 17:04:04 +00:00
photonstorm
2b2ee27912
If for whatever reason you wish to hide the Phaser banner in the console.log you can set window.PhaserGlobal.hideBanner
to true
and it will skip the output. Honestly I'd rather if you didn't, but the option is now there.
2015-02-09 20:10:51 +00:00
photonstorm
5bd231d532
JSDoc fixes.
2015-02-05 05:13:22 +00:00
photonstorm
569483ab17
Game._kickstart forces Phaser to always call at least one logic update before being allowed to render.
2015-02-05 05:12:59 +00:00
Richard Davey
21823f65e3
Merge pull request #1576 from vulvulune/jsdoc
...
Correct comments
2015-02-03 20:47:32 +00:00
Richard Davey
ad9b8ae8e1
Merge pull request #1568 from Bilge/patch-1
...
Added missing plugins member in Phaser.Game class.
2015-02-03 20:31:26 +00:00
Bilge
92b89fb549
Added plugins property to Phaser.Game.
...
Property was previously being declared late without initialization at allocation time.
2015-01-29 22:51:38 +00:00
vulvulune
2e49f07b77
Correct comment Phaser.Stage
...
Replace @name => @method on some functions
2015-01-27 14:05:47 +01:00
vulvulune
8ef32f044c
Correct comments
...
Correct comments:
-Phaser.Camera: checkWorldBounds =>checkBounds
-Phaser.RetroFont: Set correct @name for name and smoothed
-Phaser.DOM: inViewport => inLayoutViewport
2015-01-27 13:46:18 +01:00
photonstorm
3c2725addc
Typo.
2015-01-18 12:24:00 +00:00
photonstorm
8973423e98
Sprite.frame and AnimationManager.frame wouldn't return the correct index if a sprite sheet was being used unless it had first been set via the setter.
2015-01-08 01:28:38 +00:00
photonstorm
30ef362e59
jsdoc fixes / typos.
2015-01-06 12:58:19 +00:00
photonstorm
4bc8fb3c8f
Docs update #1489
2015-01-05 11:57:46 +00:00
Paul
81c872adf1
Simplified call to updateTransform
...
This change implements the original suggestion of using `updateTransform`,
but applies so globally instead of within a particular postUpdate
function.
Now the game loop calls `updateTransform` after each `updateLogic` call
unconditionally; it is updates that change the world that are accounted
for, not the rendering. This removes some previous checks that were
preventing correct behavior with the previous patch.
This makes the assumption that game objects (eg. Sprites) are only
modified within callbacks triggered before the completion of the
`postUpdate` walking of the scene graph.
- User code that runs outside of the "game update", such as a `setTimeout`
timer, will need to explicitly update transformations so that the world
is synced by the next `preUpdate`: but this is not the expected case and
is already outside the Phaser update model.
- If this assumption does not hold or is too weak, the transformations
could also be applied once at the start of every game update loop
(before any render or update). This change would at most double the time
spent on apply the transformations.
The constant application of `updateTransform` passes all reported failing
cases and resolves #1424 just as the original proposal of having the
change performed in the Sprite postUpdate but will work more consistently
across all scene-bound game objects.
On a desktop Chrome browser the inclusion also has minimal relative impact
as shown by the summarized results. The percentages given are the summed
CPU time of relevant required operations along with that of the
updateTransform itself:
- 10,000 non-collision particles:
- 12% pre/post update, 2.4% updateTransform
- 100 colliding particles:
- 2% pre/post update & collision, 0.3% updateTransform
- 1000 colliding particles:
- 40% pre/post update & collision, 1% updateTransform
With this patch the updateTransform time does creep up _slightly_ (vs just
in `Sprite.postUpdate`) but it is still dominated by required game
updates, and more so, by any actual work like Physics.
2015-01-01 18:01:23 -08:00
photonstorm
ef610c7c10
Added init to State template class.
2014-12-17 13:07:19 +00:00
Richard Davey
091cb93ccd
Merge pull request #1417 from pnstickne/wip-1410
...
Fixes #1410 where newChild.parent could be set to undefined before use
2014-12-11 21:52:55 +00:00
Richard Davey
9ef87ad395
Merge pull request #1428 from pnstickne/wip-1422-vertical-align
...
ScaleManager documentation updates
2014-12-10 17:16:46 +00:00
photonstorm
028943baad
Moved the updateTransform to a Game level update on Stage and replaced the Pixi version.
...
Added a boolean check, so it can be either updated from updateLogic or render without duplicating the process.
#1424
2014-12-10 10:37:37 +00:00
Paul
6764517823
ScaleManager documentation updates
...
- Clarified proper usage of `pageAlignVertically` and add note about 2.2
change and how to obtain 2.1 behavior.
- Removed the `@readonly` status of the `parentIsWindow` and `parentNode`;
these can be updated in a controlled manner.
- Added intra-hyperlinks
- Updated some ancillary documentation
2014-12-08 18:06:26 -08:00
Paul
388ab1d98b
Fix Full Screen launching in Android Chrome
...
The click trampoline added for IE prevents Chrome for Android from being
able to launch Full Screen mode with the default parameters for
`ScaleManger#startFullScreen`. (The desktop version of Chrome is not
affected.)
This fix adds an additional compatibility settings (`clickTrampoline`)
that can be used to configure when such is used. By default the
'when-not-mouse' mode is only enabled for Desktop browsers, where the
primary input is ubquitously a mouse.
There are no known breaking compatibility changes - the Full Screen should
be initiatable in Chrome for Android as it was in 2.1.x. The default
Android browser does not support Full Screen.
2014-12-06 12:30:40 -08:00
Paul
fe8c5021fa
Fixes #1410
...
As pointed out, `newChild.parent` could be accessed after it was set to
undefined. This fix unifies the code from the various `destroy` methods so
the previou issue does not occur.
2014-12-05 19:34:17 -08:00