Commit graph

288 commits

Author SHA1 Message Date
photonstorm
e3d53ad6a3 Game no longer pauses if you've forced orientation and change it, also doesn't resize a NO_SCALE game.
If the game was set to NO_SCALE and you swapped orientation, it would pause and resize, then fail to resize when you swapped back (thanks starnut, fixes #258)
2014-02-28 04:15:28 +00:00
photonstorm
5c30fd019f Stage.smoothed was returning the opposite of its actual setting (#494) 2014-02-27 21:56:47 +00:00
photonstorm
7e12075be1 Buttons are now cleanly destroyed if part of a Group without leaving their InputHandler running.
You can now safely destroy a Group and the 'destroyChildren' boolean will propogate fully down the display list.
Calling destroy on an already destroyed object would throw a run-time error. Now checked for and aborted.
Calling destroy while in an Input Event callback now works for either the parent Group or the calling object itself.
In Group.destroy the default for 'destroyChildren' was false. It's now `true` as this is a far more likely requirement when destroying a Group.
All GameObjects now have a 'destroyChildren' boolean as a parameter to their destroy method. It's default is true and the value propogates down its children.
2014-02-27 20:05:16 +00:00
photonstorm
53c10ca31f The grunt task now creates an optional version of Phaser without any Physics support built in. Quite a bit smaller now.
The grunt task now has a new `noUmd` option which builds Phaser without the UMD wrapper.
2014-02-27 17:00:14 +00:00
photonstorm
5ab104ad4b Loader.script now has callback (and callbackContext) parameters, so you can specify a function to run once the JS has been injected into the body. 2014-02-26 02:45:06 +00:00
photonstorm
1aea08d0f7 AnimationParser.spriteSheet wasn't taking the margin or spacing into account when calculating the numbers of sprites per row/column, nor was it allowing for extra power-of-two padding at the end (fix #482, thanks yig)
AnimationManager.add documentation said that 'frames' could be null, but the code couldn't handle this so it defaults to an empty array if none given (thanks yig)
Also updated TypeScript definitions and StateManager.add docs.
2014-02-26 01:32:38 +00:00
photonstorm
994eaff92b StateManager fixes for when you change state in the create function.
TilemapLayer update for WebGL.
2014-02-26 00:58:19 +00:00
photonstorm
db2e3733c2 Fullscreen mode now uses window.outerWidth/Height when using EXACT_FIT as the scale mode, which fixes input coordinate errors (fixes #232)
Fullscreen mode now works in Internet Explorer and uses the new fullscreen non-prefix call.
2014-02-25 21:16:56 +00:00
photonstorm
741249043c ScaleManager has 2 new events: ScaleManager.enterFullScreen and ScaleManager.leaveFullScreen, so you can respond to fullscreen changes directly.
Fullscreen mode now uses window.outerWidth/Height when using EXACT_FIT as the scale mode, which fixes input coordinate errors (fixes #232)
2014-02-25 17:10:37 +00:00
photonstorm
be27442139 Fixed Fullscreen example and State preloading. 2014-02-25 16:26:11 +00:00
photonstorm
1646157c0c Fixed documentation error. 2014-02-25 14:54:56 +00:00
photonstorm
13c99f3491 Phaser.StageScaleMode has been renamed to ScaleManager and moved from the system folder to the core folder. It's still available under game.scale.
If your game references the old Phaser.StageScaleMode consts like SHOW_ALL you need to update them to Phaser.ScaleManager, i.e. Phaser.ScaleManager.SHOW_ALL.
All of the Project Templates have been updated to reflect the above change.
2014-02-25 14:46:48 +00:00
photonstorm
fdde4cb7e6 Sorry, removing console.logs :) 2014-02-25 11:58:17 +00:00
photonstorm
b4dbaf9950 StateManager.start can now have as many parameters as you like. The order is: start(key, clearWorld, clearCache, ...) - they are passed to State.init() (NOT create!) 2014-02-25 11:56:57 +00:00
photonstorm
c53a06849e Stop Group.callAll splitting empty strings. 2014-02-25 05:20:19 +00:00
photonstorm
a24d252430 Fixed issue where Stage.update wasn't called. 2014-02-25 04:58:09 +00:00
photonstorm
a1b502fc06 Stage.smoothed allows you to set if sprites will be smoothed when rendered. Set to false if you're using pixel art in your game. Default is true. Works in Canvas and WebGL. Setting the game anti-aliased parameter now works properly too.
Sprite.smoothed and Image.smoothed allows you to set per-Sprite smoothing, perfect if you just want to keep a few sprites smoothed (or not).
Fixes #381.
2014-02-25 04:41:57 +00:00
photonstorm
cc06a62b90 Pausing the game will now mute audio and resuming will un-mute, unless it was muted via the game (fixes #439) 2014-02-25 03:12:12 +00:00
photonstorm
415342d986 Vastly improved visibility API support + pageshow/pagehide + focus/blur. Working across Chrome, IE, Firefox, iOS, Android (also fixes #161) 2014-02-25 02:59:24 +00:00
photonstorm
d9cadc70ac The Keyboard class has had a complete overhaul. Phaser.Key objects are created automatically, there are fixes against duration and keys reset properly on visibility loss.
Keyboard.removeKey has been removed. The way the new keyboard manager works means it's no longer required.
Fixes issue #462
2014-02-24 15:58:02 +00:00
photonstorm
e088d5c67f Documentation fix. 2014-02-24 00:35:11 +00:00
Richard Davey
b2da49eefa Enhanced page visibility checks added 2014-02-22 02:36:02 +00:00
photonstorm
be4d42a1c2 The StateManager now looks for a function called 'resumed' which is called when a game un-pauses (fixes #358) 2014-02-22 00:01:19 +00:00
photonstorm
fb5920feec We now force IE11 into Canvas mode to avoid a Pixi bug with pre-multiplied alpha. Will remove once that is fixed, sorry, but it's better than no game at all, right? :(
Loader.setPreloadSprite() will now set sprite.visible = true once the crop has been applied. Should help avoid issues (#430) on super-slow connections.
2014-02-21 17:29:51 +00:00
photonstorm
07af06fc4e Fixing up documentation, missing functions, examples and alpha masks. 2014-02-21 14:50:18 +00:00
photonstorm
5f6fc9db05 When adding a Group if the parent value is null the Group won't be added to the World, so it's up to you to add it when ready. If parent is undefined it's added to World. 2014-02-21 12:33:15 +00:00
Georgios Kaleadis
b2303c64a3 endless loop when in Phaser.Group when destroy children fixed (use parent not group) 2014-02-20 13:26:10 +01:00
photonstorm
4ad7b304c6 Added Game configuration option: forceSetTimeOut 2014-02-20 01:31:13 +00:00
photonstorm
812de7d994 Fix typos in Phaser.Group#forEachExists for docs #447 2014-02-19 15:06:22 +00:00
photonstorm
08e5f18257 Fixed some doc typos.
You can now pass a physicsConfig object with the game constructor that is given to p2.World, allowing you to set the broadphase, etc.
2014-02-19 03:51:48 +00:00
photonstorm
5d5c64d22f Tilemap.createCollisionObjects will parse Tiled data for objectgroups and convert polyline instances into physics objects you can collide with in the world.
After defining tiles that collide on a Tilemap, you need to call Tilemap.generateCollisionData(layer) to populate the physics world with the data required.
Debug.renderPhysicsBody updated to take camera location and body rotation into account.
Body movement functions put back to velocity :)
Updated to latest dev version of pixi and latest p2.js
Updated docs
2014-02-18 03:01:51 +00:00
photonstorm
d026f968de You can now set the Stage.backgroundColor using either hex or numeric values. 2014-02-16 14:54:04 +00:00
photonstorm
85eaaef688 Filters fixed to work with Pixi 1.5. 2014-02-15 03:12:24 +00:00
photonstorm
e5812710cc Added Spring class. Fixed reason why World wasn't pre and post updating (Stage didn't have an exists property). 2014-02-15 02:19:37 +00:00
photonstorm
e5e643b103 fixedToCamera now works across all display objects. When enabled it will fix at its current x/y coordinate, but can be changed via cameraOffset.
fixedToCamrea now works for Groups as well :) You can fix a Group to the camera and it will influence its children.
Also fixed the issue with World.preUpdate/postUpdate not being called and various small documentation issues.
2014-02-15 01:27:42 +00:00
photonstorm
1097a699c3 Fixed anchor issue with Sprite.body. 2014-02-14 18:06:00 +00:00
photonstorm
1b5837d71d World preUpdate, update and postUpdate have all been moved to Stage. So all children are updated regardless where on the display list they live. Fixes #419 2014-02-14 17:29:31 +00:00
photonstorm
3e99391cbf Updated all Game Objects so they all have preUpdate, update and postUpdate functions (even if empty). Updated World so when it iterates through them all it no longer checks if those functions are present before calling them. Was wasting a lot of time doing that before. 2014-02-14 01:09:52 +00:00
photonstorm
90e9edbf05 Updated TileSprite so it just directly extends the Pixi original. This means no input events or body for a TileSprite.
Removed un-needed stuff from Graphics.
Removed un-used events.
Made docs in StateManager more clear re: shutdown (#410)
2014-02-13 15:03:46 +00:00
photonstorm
30fbbec675 BitmapData.addTo removed and enhanced BitmapData.add so it can accept either a single Sprite/Image or an Array of them.
BitmapData has had all of the EaselJS functions removed. It was just taking up space and you can do it all via BitmapData.context directly.
Camera following now working again.
2014-02-13 14:19:41 +00:00
photonstorm
9d6d3127ad Few more reference fixes. 2014-02-13 13:00:15 +00:00
photonstorm
e9fb8f6389 Updates across the board moving Stage.canvas to Game.canvas 2014-02-13 12:55:58 +00:00
photonstorm
0786e86ee5 Stage.scale has been moved to Game.scale. The same game scaling properties exist as before, but now accessed via Game.scale instead.
Stage.aspectRatio has been moved to StageScaleMode.sourceAspectRatio (so now game.scale.sourceAspectRatio)
Stage.scaleMode has been moved to StageScaleMode.scaleMode (so now game.scale.scaleMode)
Stage.fullScreenScaleMode has been moved to StageScaleMode.fullScreenScaleMode (so now game.scale.fullScreenScaleMode)
Stage.canvas has been removed. It was only ever an alias for Game.canvas anyway, so access it via that instead.
2014-02-13 12:50:10 +00:00
photonstorm
bdb8908fee Groups now update their children across preUpdate, update and postUpdate.
Sprite.exists = false removes Body from world.
2014-02-13 12:26:39 +00:00
photonstorm
b85f40df12 Phaser.Stage now extends PIXI.Stage, rather than containing a _stage object.
(Warning: currently breaks camera based code and pointers, as the scale property is removed).
2014-02-12 23:12:36 +00:00
photonstorm
f6113ac6c4 Physics World events added.
Group has new 'addToWorld' parameter, which fulfills the same function as the old useStage.
Stage now extends PIXI.Stage rather than owns one.
2014-02-12 19:45:09 +00:00
photonstorm
1184d8bd76 PointProxy added to allow for easy setting of force and velocity. More p2 tests done. World update done. 2014-02-10 22:54:56 +00:00
photonstorm
47e23096bd Integrating p2.js. 2014-02-10 16:01:30 +00:00
photonstorm
bca64c2adb Huge update to Phaser.Text. Much more lean, but loads of great new options added including drop shadows, gradient fills, fonts with spaces in the name, etc. 2014-02-09 13:36:02 +00:00
photonstorm
4aa945f991 Removed PixiPatch as it's no longer needed. Re-worked all of the Sprite autoCull and inWorld checks and cached the bounds. Fixed the Body calculations so physics is working again. 2014-02-09 03:48:31 +00:00
photonstorm
e8b432f518 Fixed bug where changing State would cause the camera to not reset if it was following an object.
World.reset now calls Camera.reset which sends the camera back to 0,0 and un-follows any object it may have been tracking.
2014-02-08 13:45:18 +00:00
photonstorm
bc3a3fd43d You can now use the hitArea property on Sprites and Image objects. hitArea can be a geometry object (Rectangle, Circle, Polygon, Ellipse) and is used in pointerOver checks. 2014-02-07 17:14:10 +00:00
photonstorm
3cae06d1ad Phaser.AnimationParser now sets the trimmed data directly for Pixi Texture frames. Tested across JSON Hash, JSON Data, Sprite Sheet and XML. 2014-02-07 00:57:41 +00:00
photonstorm
4b7fc8d506 Change to boot order to try and resolve short-TTL timers. 2014-02-06 22:42:35 +00:00
photonstorm
4ed20e0f77 Removed all intances of Sprite.group from Group and replaced with the already existing parent property. 2014-02-06 13:15:45 +00:00
photonstorm
8eae8feecc More Group fixes to the new format. Updated list of included Pixi files to remove un-needed ones. 2014-02-06 03:34:27 +00:00
photonstorm
4cfce8b4d2 Group now extends PIXI.DisplayObjectContainer, rather than owning a _container property, which makes life a whole lot easier re: nesting. 2014-02-06 02:31:36 +00:00
photonstorm
0896c2fac7 Updating copyright year and README. 2014-02-05 16:54:59 +00:00
photonstorm
84f0f00f49 n-way collision checks and onBeginContact and onEndContact done and working. Also fixed issue in TweenManager.removeAll. 2014-02-05 16:54:58 +00:00
photonstorm
8315973c5d Body/Group testing complete. Now focusing on n-way collision. 2014-02-03 04:09:45 +00:00
photonstorm
3488880956 Sprite vs. Sprite Group Body Tests. 2014-02-03 04:09:45 +00:00
photonstorm
45b6d5a741 Removed: Debug.renderSpriteTouching, Debug.renderLocalTransformInfo, Debug.renderWorldTransformInfo, Debug.renderSpriteCollision and Debug.dumpLinkedList.
Debug.renderPhysicsBody(body, color) is extremely useful for debugging the new physics bodies. Will draw the outline + points in the color given.
Debug.renderBodyInfo(sprite, x, y, color) will display lots of Sprite body data.
2014-01-31 05:42:20 +00:00
photonstorm
68b7d22e0d Fixed issue with the camera being slightly out of sync with 'fixedToCamera' sprites. Also fixed 'jitter' issue with camera targets. 2014-01-31 03:32:12 +00:00
photonstorm
6e4e99f436 Added Game Update loop step debugging - has proved utterly invaluable! Resolved camera jitter issues, gravity / downward force on tile/boundary issues and most tilemap collision issues. 2014-01-31 02:06:45 +00:00
photonstorm
651858372c Added Game core loop stepping support. Super-useful for debugging, and helped me track down the issue with jittery physics collision. Double-win! 2014-01-29 17:10:13 +00:00
photonstorm
90c09374af Velocity integration tidied up. Now moving to sync Body with Sprite center point. 2014-01-28 01:29:35 +00:00
photonstorm
128c7143d5 Lots more physics tests and updates.
PLEASE DO NOT upgrade to this release if you need your game working and it uses any of the physics functions, as they're nearly all broken here.
Just pushing up so I can share it with someone.
2014-01-20 20:14:34 +00:00
photonstorm
32f5a2fa36 More examples updates. Fixed Starstruck tilemap code, removed un-needed ArcadePhysics methods and rebuilt the js files for testing. 2014-01-14 03:33:03 +00:00
photonstorm
011d2d8e05 The way the collision process callback works has changed significantly and now works as originally intended.
The World level quadtree is no longer created, they are now built and ripped down each time you collide a Group, this helps collision accuracy.
Bodies are no longer added to a world quadtree, so have had all of their quadtree properties removed such as skipQuadtree, quadTreeIndex, etc.
QuadTree.populate - you can pass it a Group and it'll automatically insert all of the children ready for inspection.
Removed ArcadePhysics binding to the QuadTree, so it can now be used independantly of the physics system.
2014-01-14 02:43:09 +00:00
Richard Davey
5f9acdca4b Merge pull request #299 from Niondir/dev
Phaser Definitions Update
2014-01-08 17:02:59 -08:00
Tarion
c21365703d Phaser Definitions Update
Added "GetCurrentState" to StateManager
2014-01-08 22:57:13 +01:00
photonstorm
35e61172e1 Device.quirksMode is a boolean that informs you if the page is in strict (false) or quirks (true) mode.
Canvas.getOffset now runs a strict/quirks check and uses document.documentElement when calculating scrollTop and scrollLeft to avoid Chrome console warnings.
The Time class now has three new methods: addEvent, repeatEvent and loopEvent. See the new Timer examples to show how to use them.
2014-01-08 11:21:48 +00:00
photonstorm
428e331a11 Groups can now be added to other Groups as children via group.add() and group.addAt().
Groups now have an 'alive' property, which can be useful when iterating through child groups with functions like forEachAlive.
2014-01-06 01:39:23 +00:00
photonstorm
86f6ddcbc8 Two new particle examples and a group animation example. Also fixed CocoonJS sound issue and Cache sound locked bug. 2013-12-31 03:37:11 +00:00
photonstorm
ba74bea4b4 New Group.destroy example and patched the desyrel font xml. 2013-12-30 21:36:50 +00:00
photonstorm
ce4cf531d4 Added class constructors, fixed Stripshader, added relative Tween example and updated Tween source. 2013-12-30 16:54:00 +00:00
photonstorm
167a498a5e Phaser.Game constructor can now be passed a single object containing game settings + Stage settings, useful for advanced configurations. 2013-12-24 03:18:55 +00:00
photonstorm
0acef49a7c RenderTexture now displays correctly in Canvas games.
Stage.display property added. A direct reference to the root Pixi Stage object (very useful for RenderTexture manipulation)
2013-12-23 04:20:09 +00:00
photonstorm
bf72b4d3b0 Tilemap.createFromObjects can now turn a bunch of Tiled objects into Sprites in one single call, and copies across all properties as well. 2013-12-22 04:27:12 +00:00
photonstorm
dd7ae12271 ArcadePhysics.overlap and collide now recognise TileSprites in the collision checks. 2013-12-17 16:48:03 +00:00
photonstorm
7917eac255 Added Matching Pairs game and updated fixed to camera example. 2013-12-16 15:16:44 +00:00
photonstorm
a361a18616 Updated IE11 check, forces IE11 to use Canvas renderer even in AUTO mode. 2013-12-13 14:04:14 +00:00
photonstorm
669570c701 Tidying up the examples and more Tilemap work. 2013-12-10 12:23:42 +00:00
Cameron Foale
3e1207e1a3 Split world update into preUpdate and update.
This allows moving the state.update() call to before world.update(),
meaning results of collisions checked in the state are available to
objects in their own update().
2013-12-09 15:46:02 +11:00
photonstorm
886618c056 Tilemap collision fixed, regardless of rotation, number of overlapping tiles and speed (to a point anyway). Maps also don't crash if they are smaller than the render area. Layers can be positioned successfully anywhere in camera but collision isn't yet offset for this. 2013-12-06 04:34:27 +00:00
photonstorm
1f513a333e Fixed an issue where passing null as the Group parent wouldn't set it to game.world as it should have (thanks tito100).
Continued work on the tilemap collision - again, please don't use this version if you need working tilemaps.
2013-12-06 01:07:25 +00:00
photonstorm
cd314cd03e Group.length now returns the number of children in the Group regardless of their exists/alive state, or 0 if the Group is has no children. 2013-12-05 09:14:49 +00:00
Richard Davey
eb3d8241ca Merge pull request #250 from cocoademon/camera_bounds_fix
Switch Camera.setBoundsToWorld to match world.bounds instead of world
2013-12-05 01:11:59 -08:00
Cameron Foale
f6712da774 Switch Camera.setBoundsToWorld to match world.bounds instead of world 2013-12-05 16:28:17 +11:00
John
b978a2b73b Introduced a separate stage.fullScreenScaleMode property that is used to decide scaling when fullscreen. 2013-12-05 01:00:36 +00:00
photonstorm
42c0bed502 Fixed World.scale and Group.scale. 2013-12-03 02:13:57 +00:00
Richard Davey
f9ee9bfc0e Merge pull request #239 from jcd-as/dev
move TilemapLayer positioning/rendering to postUpdate to be in line with...
2013-12-01 04:50:39 -08:00
Josh Shepard (jcs)
2b99cb4be4 move TilemapLayer positioning/rendering to postUpdate to be in line with ‘normal’ Sprites.
reverts e91d40b9fc - fix was incorrect & regressed fixedToCamera Sprites’ & TilemapLayer positioning.
Fixes #237
2013-11-30 17:40:24 -08:00
photonstorm
00a9897ae2 Updated Filter resolution to a 2f and added Blur and Marble filters. 2013-11-29 12:26:53 +00:00
Richard Davey
378ffc7ade Caustics filter 2013-11-29 10:39:52 +00:00
photonstorm
f22159e257 Updated documentation. 2013-11-28 15:57:09 +00:00
photonstorm
780b8a5d6d New filters and demos: LightBeams, Fire and Tunnel. Also Loader can now load script files. 2013-11-28 05:43:35 +00:00
Josh Shepard (jcs)
e91d40b9fc fix for ’jitter’ in scrolling where tilemaps & sprites are one frame off from each other
Fixes #214
2013-11-27 16:25:20 -08:00
photonstorm
a9a46bfbbf Lots of documentation updates and new Loader examples. 2013-11-27 16:33:49 +00:00
photonstorm
4926fac578 New non-conflicting Loading system in place. Creating tests. 2013-11-26 21:10:01 +00:00