Commit graph

521 commits

Author SHA1 Message Date
Georgios Kaleadis
c686ea0eb5 fixed naming for rotation lock in prismatic joint 2014-03-21 14:13:06 +01:00
Richard Davey
f0034008f5 Merge pull request #614 from georgiee/physics-phaser-exporter
Custom PhysicsEditor export & new p2 polygon parsing
2014-03-21 11:27:13 +00:00
photonstorm
b9fcda73ca ArcadePhysics.World.seperate will now check gravity totals to determine separation order. You can set World.forceX to true to always separate on X first and skip this check. 2014-03-21 11:22:56 +00:00
Georgios Kaleadis
f56f1674f7 pivots were wrong signed, everything was upside down 2014-03-21 09:49:51 +01:00
Georgios Kaleadis
a4982fa6e2 better fixture handling 2014-03-20 19:38:47 +01:00
Georgios Kaleadis
277afa1415 method docs 2014-03-20 15:46:54 +01:00
Georgios Kaleadis
af847de963 reverted p2 body debug 2014-03-20 15:44:41 +01:00
Georgios Kaleadis
45a41af766 exporter update 2014-03-20 15:27:50 +01:00
Georgios Kaleadis
66fa003901 custom export from physics editor 2014-03-20 13:38:25 +01:00
photonstorm
634b1d1093 Emitter.friction property removed and replaced with Emitter.particleDrag, which is now correctly applied.
ArcadePhysics.Body.reset incorrectly set the Body.rotation to Sprite.rotation instead of angle.
Emitter.emitParticle resets the rotation on the particle to zero before emitting it.
Lots of fixes to the TypeScript definitions file (thanks as always to clark-stevenson for his tireless work on these)
Emitters now bring the particle they are about to emit to the top of the Group before doing so. Avoids particles hidden behind others.
ArcadePhysics.Body.setSize corrected to take the parameters as positive, not negative values.
ArcadePhysics.Body now checks the Sprite scale automatically and adjusts the body size accordingly (fix #608)
Emitter.particleClass can now be set to any object that extends Phaser.Sprite, which will be emitted instead of a regular Sprite.
2014-03-20 03:48:54 +00:00
photonstorm
684ee9c064 ArcadePhysics.Body has a deltaMax object, which allows you to cap the delta applied to the position to +- this value.
ArcadePhysics.Body now checks the Sprite scale automatically and adjusts the body size accordingly (fix #608)
2014-03-20 00:20:02 +00:00
Georgios Kaleadis
5b78c5c46e fixed wrong motion state constants in phaser p2 body 2014-03-19 22:56:26 +01:00
photonstorm
164f3cbe83 When creating a Sprite (via Group.create or directly) with exists = false and a P2 body, the body is not added to the world. 2014-03-19 13:09:29 +00:00
photonstorm
0a42ac39b9 ArcadePhysics.World now has a checkCollision object which can be used to toggle collision against the 4 walls of its bounds. 2014-03-19 04:03:21 +00:00
photonstorm
2cc1a45f9a Fixed SpriteBounds camera placement in Debug (again).
Removed un-needed cache vars from ArcadePhysics.World.
Tidied up ArcadePhysics.Body and fixed rotation parameters.
Every single Arcade Physics Example now runs perfectly under this release.
2014-03-19 03:55:44 +00:00
photonstorm
79ffda3f18 ArcadePhysics.separate doesn't pass over to seperateX/Y if overlapOnly is true (fix #604)
ArcadePhysics.collideSpriteVsSprite checks if both objects have bodies before processing.
ArcadePhysics.Body now checks the ArcadePhysics.World bounds, not the game bounds.
ArcadePhysics.Body has reverted to the 1.1.3 method of preUpdate, so you can now position sprites with x/y, drag them, etc, regardless of the Body.moves flag (issue #606)
ArcadePhysics.World now has setBounds and setBoundsToWorld methods, which are called automatically on world resizing.
ArcadePhysics.Body no longer sets the offset to match the anchor.
2014-03-19 02:28:20 +00:00
photonstorm
9490041c79 ArcadePhysics.separate doesn't pass over to seperateX/Y if overlapOnly is true (fix #604)
ArcadePhysics.collideSpriteVsSprite checks if both objects have bodies before processing.
2014-03-19 02:05:29 +00:00
photonstorm
2ecb0c7c76 P2.removeBody will check if the body is part of the world before removing, this avoids a TypeError from the p2 layer. 2014-03-17 22:34:19 +00:00
photonstorm
08aa381238 p2 object re-created on system start. 2014-03-17 21:16:59 +00:00
photonstorm
3ebd0d9303 Updated Device.isConsoleOpen as it no longer works in Chrome. Revised code and documentation accordingly (fix #593)
Revised p2 clear process.
2014-03-17 19:39:56 +00:00
photonstorm
96296c6582 The P2 World wouldn't clear down fully on a State change, now properly clears out contacts, resets the bitmask, etc. 2014-03-17 18:57:46 +00:00
Stefan Holmgren
e3480ffd3c Add destroy methods to Ninja Body, AABB and Circle
The Sprite.destroy() method calls the Body’s destroy() method if a body
exists. If using Ninja physics, destroying a Sprite will not work,
since the destroy method wasn’t implemented in Ninja’s Body.

Also added destroy() methods to Ninja’s AABB and Circle. Tile already
have a destroy() method.
2014-03-16 12:14:46 +01:00
photonstorm
b9ac0d565e Fixed Tile callback check in Arcade Physics (fix #562) 2014-03-16 00:53:50 +00:00
Richard Davey
227810ee01 Merge pull request #571 from dreadhorse/dev
Ninja world collision to check right and bottom bounds
2014-03-16 00:41:51 +00:00
Stefan Holmgren
51102797ed Ninja world collision to check right and bottom bounds
The world collision algorithm need to check the right and bottom of the
bounds in case the bound’s x or y are not equal to 0
2014-03-15 06:19:26 +01:00
Richard Davey
fc5504f8d8 Fixed Sprite.destroy with an arcade body 2014-03-15 01:06:01 +00:00
photonstorm
5e11b1ad87 The Static, Kinematic and Dynamic consts that P2.Body uses were incorrect (fixes #563) 2014-03-14 19:20:35 +00:00
photonstorm
901a7f13d1 Updated docs for 2.0 release and updated README. 2014-03-14 06:36:05 +00:00
photonstorm
44a5741148 Fixed games. Updated Body.moves handling. 2014-03-14 04:49:55 +00:00
photonstorm
0e29bd4300 Tile Collision Callbacks working properly. CSV / Blank map examples added. Multiple tilesets per map working again. That's it folks! 2014-03-14 04:21:56 +00:00
photonstorm
f3ff9c197f Fixed all the tilemap examples. 2014-03-14 03:26:06 +00:00
photonstorm
017a017b96 TilemapLayer.getRayCastTiles will let you get all tiles that hit the given line for further processing.
Fixed Tilemap collision. Added new TILE_BIAS const to aid with fast/small sprites.
2014-03-14 02:33:58 +00:00
photonstorm
a83a76bc5d Line.coordinatesOnLine will return all coordinates on the line using Bresenhams line algorithm. 2014-03-14 00:05:03 +00:00
photonstorm
ec0b22268d Added Body.tilePadding to help with small/fast moving bodies vs. tile collision. 2014-03-13 23:15:32 +00:00
photonstorm
5297497632 Tilemap collision finally getting closer. 2014-03-13 22:49:08 +00:00
photonstorm
e955145707 Added p2 kill and reset test + nearing completion on tilemap collision. 2014-03-13 21:14:18 +00:00
photonstorm
c8e63582a4 Lots of small tweaks to pass jshint. 2014-03-13 16:49:52 +00:00
photonstorm
c2d38fe16b jshint passed all the p2 physics and fixed Debug.spriteBounds. 2014-03-13 16:16:14 +00:00
photonstorm
b666874592 Fixed Body.reset and Tanks game. 2014-03-13 15:57:49 +00:00
photonstorm
dc434dd1ff Render Debug moved into Arcade class. 2014-03-13 15:41:56 +00:00
photonstorm
41bc616a3b preUpdate rotation fix. 2014-03-13 13:29:54 +00:00
photonstorm
181ef7ce53 Added World.frameRate - The frame rate the world will be stepped at. Defaults to 1 / 60, but you can change here. Also see useElapsedTime property.
Added World.useElapsedTime - If true the frameRate value will be ignored and instead p2 will step with the value of Game.Time.physicsElapsed, which is a delta time value. #554
2014-03-13 13:19:02 +00:00
photonstorm
c3f687eda9 Prismatic Constraint done. That's all of them! jshint time. 2014-03-13 13:09:33 +00:00
photonstorm
87684bb15f Revolute Constraint done. 2014-03-13 12:14:14 +00:00
photonstorm
6b55fea953 Distance and Gear constraints done. 2014-03-13 11:13:22 +00:00
photonstorm
ef359e8992 P2 Springs example done and working nicely. 2014-03-13 10:32:34 +00:00
photonstorm
aa6b1821bd Get First Dead example. 2014-03-13 10:14:06 +00:00
photonstorm
8318a58f69 Fixed bug causing Text with empty or no given text to break. Added World.createSpring. 2014-03-13 09:43:00 +00:00
photonstorm
0584d3eadf P2 collision groups and callbacks working as expected, new example done. 2014-03-13 09:14:12 +00:00
photonstorm
94448d2497 P2 postBroadphase example and handler done. Group.enableBodyDebug added. Sprites no longer remove bodies from the world if exists = false, instead they set safeDestroy to true, which removes the body on the next preUpdate, to avoid mid-step destruction issues. 2014-03-13 07:29:23 +00:00
photonstorm
84741f065f New P2 examples. And fixed Camera.atLimit value. 2014-03-12 16:33:53 +00:00
photonstorm
fc788f909c P2 Body Begin and End Contact events done and working nicely. 2014-03-12 15:26:20 +00:00
photonstorm
274fd4a7e9 You can now hitTest against P2 bodies + example created. 2014-03-12 13:26:27 +00:00
photonstorm
abf26df741 New P2 examples and fixed Body debug assignment parameter. 2014-03-12 06:25:29 +00:00
photonstorm
a07cf894a0 Fixed Kenny tiles. Fixed Ninja Circle vs. World bounds. Added Ninja tilemap to Tiles conversion. Created test. 2014-03-12 02:44:34 +00:00
photonstorm
4910f27a88 You can now over-ride the pxm and mpx functions with your own via the physics config object. 2014-03-12 00:12:26 +00:00
photonstorm
cb5a8c7515 Renamed px2p and p2px to: pxm and mpx (px to meters and meters to px). Also removed from Math. 2014-03-12 00:07:27 +00:00
photonstorm
e9ae465272 Sorted out Body gravity settings and updated the example. 2014-03-11 16:26:03 +00:00
photonstorm
58887d9bc6 Moved all of the Tilemap to P2 body methods into P2 itself (makes more sense this way) and tidied them up. 2014-03-11 15:02:59 +00:00
photonstorm
d2d77f37dd Finished Ninja Physics updates. 2014-03-11 14:21:20 +00:00
photonstorm
170776ada1 rnd updated so the array picks use length -1 (fixes #541) 2014-03-11 10:56:54 +00:00
photonstorm
384451bef7 Particles back in and working again. Also updated most of the examples and put Body.gravity back in as well. 2014-03-11 02:49:55 +00:00
photonstorm
f321cab77e The physics configuration object can now be used to start physics systems specifically. 2014-03-11 01:23:41 +00:00
photonstorm
a6467f9b60 Fixed Arcade, Ninja and P2 enable methods. Modified core Physics enable. Added world enable test. 2014-03-11 01:11:08 +00:00
photonstorm
53797171a3 Fixed Group.sort. Added z-depth property to all core game objects. Fixed P2 const overwrite. 2014-03-10 23:01:10 +00:00
photonstorm
b4cb281f1c Renamed Phaser.Physics.P2 const to Phaser.Physics.P2JS to avoid issue #540 2014-03-10 22:15:03 +00:00
photonstorm
13ff8985e1 Merged @georgiee p2 BodyDebug and reformatted for jshint pass. Looks awesome :) #536 2014-03-10 15:25:43 +00:00
Richard Davey
751af10c52 Merge pull request #536 from georgiee/debug-draw-p2
Debug draw p2
2014-03-10 14:50:01 +00:00
photonstorm
1fe331956a Added in p2.total 2014-03-10 14:47:29 +00:00
photonstorm
9f997daa46 Lots of examples fixes and put Group.sort back in. 2014-03-10 14:33:18 +00:00
Georgios Kaleadis
569770ed21 update 2014-03-10 14:28:44 +01:00
Georgios Kaleadis
95e2081f3a more p2 fixes 2014-03-10 13:17:37 +01:00
Georgios Kaleadis
c611d51751 minimal runable new p2 integration 2014-03-10 13:15:05 +01:00
photonstorm
8fff38618d Tidied up the Examples, fixed Arcade Physics Body, added Body enable support to Group and fixed QuadTree. 2014-03-10 03:06:28 +00:00
photonstorm
c4183d200f Changed the define function calls to use named modules, allows pixi, phaser and p2 to reside in 1 file and still be located by requirejs (thanks brejep, #531) 2014-03-10 01:39:36 +00:00
photonstorm
45ab4673cc ScaleManager.fullScreenTarget allows you to change the DOM element that the fullscreen API is called on (feature request #526) 2014-03-10 01:13:01 +00:00
photonstorm
4db1fc0079 Restored Phaser.QuadTree - should get all remaining Arcade Physics examples working again. 2014-03-07 15:14:53 +00:00
photonstorm
480c1819d6 Working through AABB vs. AABB tests. 2014-03-07 05:30:56 +00:00
photonstorm
4cac6408d8 Ninja.AABB updated with all the correct properties, now works fully as with Circle. Created new tests, all Ninja shapes now set Body.touching values correctly. TileSprites work as bodies. Trying out AABB vs. AABB collision now. 2014-03-07 04:43:55 +00:00
photonstorm
6815c5909a New tiles and new map test. 2014-03-06 09:48:42 +00:00
photonstorm
e97a207816 Added in Circle to the Ninja physics system. 2014-03-06 07:18:59 +00:00
photonstorm
3e93f24583 New split physics system is implemented. Still tidying-up, but ArcadePhysics, P2 and Ninja Physics are in and configured. Lots more examples required, and tilemap collision mostly broken in Arcade at the moment. Time to implement in Ninja. 2014-03-06 06:29:19 +00:00
photonstorm
2bab4fd2fb Testing lines. 2014-03-05 04:40:37 +00:00
photonstorm
12a2a2ec16 Testing map collision 2014-03-05 03:18:24 +00:00
photonstorm
22b1ce9b9d Added Phasers new Physics Manager and restored the pre-1.1.4 ArcadePhysics system. The new manager can handle multiple physics systems running in parallel, which could be extremely useful for lots of games. 2014-03-05 02:36:08 +00:00
photonstorm
d8f5832fa2 Completely empty Tilemaps can now be created. This allows for dynamic map generation at runtime.
Loads of updates across most the Tilemap files. Not finished yet, still CSV loading to do and a multi-tileset issue to resolve, but it's a lot more flexible now.
2014-03-03 05:19:46 +00:00
Richard Davey
3794a846d4 Merge pull request #504 from georgiee/fix-single-polygon
Phaser.Physics.Body#loadPolygon
2014-03-02 11:26:31 +00:00
photonstorm
66bdf56349 The physics world is now cleared on state swap (fixes #505) 2014-03-02 11:04:04 +00:00
Georgios Kaleadis
a1bb3ea23b pop first element if there is only one shape 2014-03-01 12:04:30 +01:00
photonstorm
4562939e4e Fixed stupid error in destroy(). 2014-02-28 06:17:18 +00:00
photonstorm
e45a929b00 Body.loadPolygon now parses all shapes that may exist in a JSON data file, and re-creates them all on the Body. Assumes shapes are CCW + Convex (tested working with Lime Exportor). Almost fixes #449 but Body rotation seems to screw orientation of shapes. 2014-02-28 05:46:02 +00:00
photonstorm
a6d77d00a0 World gravity restored. 2014-02-23 11:42:24 +00:00
photonstorm
3ac8fba9e8 Body.x/y didn't use pxpi. Also fixed out of bounds example. 2014-02-21 16:35:37 +00:00
photonstorm
7ee0c20bb3 Added Debug.renderSpriteBounds() back and wrapped Body.velocity and force in px2p calls. 2014-02-21 15:34:15 +00:00
photonstorm
91c0299d4c Fixed issues with the contacts and world bounds. New labs demo created. 2014-02-20 04:21:14 +00:00
photonstorm
1762983bc0 Fixed loadPolygon reference. Need to test decomp data next. 2014-02-19 17:09:01 +00:00
photonstorm
aac31bdaa4 debug#renderShapeConvex fixed, fix in p2 physics body creation #446 2014-02-19 15:43:05 +00:00
photonstorm
1d3616f52c Do not invert (physics) shape size data for circle, rectangle, capsuel & line #445 2014-02-19 15:21:03 +00:00
photonstorm
5f79bb4330 Fix typos of method names in Button.js for doc #444 2014-02-19 15:01:59 +00:00
photonstorm
7394403bb6 Fresh build. Updated docs and re-built phaser.js. 2014-02-19 05:28:19 +00:00
photonstorm
d9080052c3 Disabled World bounds by default.
Body.collides now takes a group level callback.
Added Body.createBodyCallback and Body.createGroupCallback.
2014-02-19 05:22:37 +00:00
photonstorm
f6807e23c6 Fixed Body.removeFromWorld 2014-02-19 04:05:12 +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
14646e811c QuadTree deprecated and moved to plugins. Body.collideWorldBounds added back and working. CollisionGroups pretty much finished. 2014-02-19 02:12:27 +00:00
photonstorm
5968dd053b CollisionGroup and collision masks working. Need to refine a little, but all the essentials are there. 2014-02-19 01:51:14 +00:00
photonstorm
7a8c96db37 Working gravity + contacts + platformer demo :) 2014-02-18 17:25:54 +00:00
photonstorm
1e29e28333 Added ContactMaterials and lots of new World help functions for assigning and creating them. 2014-02-18 16:37:53 +00:00
photonstorm
15be3f86f3 Added ContactMaterial support. 2014-02-18 15:28:42 +00:00
photonstorm
3d0b5bde75 Updated World vastly. No longer extends p2.World due to a few vars we can't alias cleanly, adds in lots of new helper methods.
Ready for Materials and Constraints.
InversePointProxy is for aliasing a p2 typed array when the values need reversing before applying (gravity for example).
2014-02-18 15:16:26 +00:00
photonstorm
335684ac57 Removed width/height parameters from addParticle, not needed. 2014-02-18 12:32:26 +00:00
photonstorm
63145d7735 New labs demo. Added moveForward and moveBackward to Body. 2014-02-18 04:49:03 +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
cad14848e8 Removed input handler from Graphics as it's just meant to be used as a texture really, if you need input events you can apply Graphics to a Sprite.
You can now create a Physics Body directly via game.physics.createBody(), and Body has been updated so it's no longer always bound to a Sprite.
Debug.renderPhysicsBody now works with Rectangles, Lines and multiple Convex shapes.
Starting to get the Tiled polyline parsing working nicely. Not too far off a complete tilemap collision.
2014-02-17 17:54:10 +00:00
photonstorm
78bf874888 Fresh build. Added pre/post update hooks to Graphics. 2014-02-17 11:27:31 +00:00
photonstorm
9837984a4d Working Springs demo. 2014-02-15 02:56: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
e5a4620b87 Loader.physics now lets you load Lime + Corona JSON Physics data, which can be used with Body.loadPolygon and Body.loadData.
Cache.addPhysicsData and Cache.getPhysicsData allow you to store parsed JSON physics data in the cache, for sharing between Bodies.
2014-02-14 23:51:49 +00:00
photonstorm
1097a699c3 Fixed anchor issue with Sprite.body. 2014-02-14 18:06:00 +00:00
photonstorm
291f8ef14c Fixed issue with physics world not being centered if you resized it. 2014-02-14 17:52:59 +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
312ec462bc Sprite.exists now toggles the Body as well. Sprite.exists = false will remove an active Body from the World. 2014-02-13 09:55:46 +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
424d1126bc Fixed updateTransform and added Body shape methods. 2014-02-12 14:50:32 +00:00
photonstorm
c6cc2c9d71 Updated p2.js to latest build. Checked tests. Added Debug draw (needs rotation support). 2014-02-12 05:34:31 +00:00
photonstorm
2c100754bb Body.setPolygon converted and working, along with some other p2 Body methods hoisted up. 2014-02-12 03:22:49 +00:00
photonstorm
5b64b01068 New 'thrust' demo. Added Body.moveLeft, moveRight, moveUp, moveDown, rotateLeft, rotateRight and thrust methods. Also hooked up force and created an asteroids style example. 2014-02-11 01:52:10 +00:00
photonstorm
58102168aa Added setBoundsToWorld and got it building the bounds body + 4 (optional) Planes around the edges for collision. 2014-02-10 23:28:32 +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
2de934756c Body property updates. Still working out best way to handle velocity assignment. 2014-02-10 19:33:27 +00:00
photonstorm
47e23096bd Integrating p2.js. 2014-02-10 16:01:30 +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
243820c973 Fixing up Pixis setBackgroundColor. 2014-02-08 09:14:44 +00:00
photonstorm
67bd653eb4 Graphics updated and restored. Working through fixing up Physics. 2014-02-07 19:44:14 +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
e7a9b96d27 Final release 1.1.4 examples finished. 2014-02-05 16:55:02 +00:00
photonstorm
02b75b9e23 Updated doc files. 2014-02-05 16:55:02 +00:00
photonstorm
0896c2fac7 Updating copyright year and README. 2014-02-05 16:54:59 +00:00
photonstorm
846e9c5061 Removed debug info and tidying up ready for release. 2014-02-05 16:54:58 +00:00
photonstorm
1af86771ba And we have level/ground jitter fixed :) Starstruck is running again properly now too. Time to commit and remove lots of debug data. 2014-02-05 16:54:58 +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
28f71ed86d Fixed the Sprite / World / Group body issue. So invaders now works again, as do the new examples. 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
5e182d317b Fixed lots of examples and added the missing Line.js. 2014-01-31 14:12:20 +00:00
photonstorm
27fc447928 New polygon collision object examples and Body scale fixes. 2014-01-31 10:34:18 +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
13a86765cb Phaser.CANVAS_PX_ROUND is a boolean. If 'true' the Canvas renderer will Math.floor() all coordinates before drawImage, stopping pixel interpolation. Defaults to false.
Phaser.CANVAS_CLEAR_RECT is a boolean. If 'true' (the default) it will context.clearRect() every frame. If false this is skipped (useful if you know you don't need it)
Collision now works between Sprites positioned via sprite.x/y, sprite.body.x/y or sprite.body.velocity.
If you are tweening a sprite and still want physics collision, set `sprite.body.moves = false` otherwise it will fight against the tween motion.
2014-01-31 04:14:02 +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
d51a37211c Phaser.Line added to the group of geometry classes, with full point on line/segment and intersection tests (see new examples) 2014-01-29 00:21:28 +00:00
photonstorm
5b85c910cb New lineIntersectLine() function working nicely. 2014-01-28 17:13:07 +00:00
photonstorm
82cb66f47b Updated intersects code, tilemap collision is running again. Still finding gravity pushing sprites through tiles. 2014-01-28 06:52:56 +00:00
photonstorm
9deb5514a2 ArcadePhysics.setBoundsToWorld implemented. Body.setCircle, setRectangle and setPolygon all working. Tidying up Body class. Need to add tile collision special case handler next. 2014-01-28 05:01:17 +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
fbe508ab1b Direct assignment of Body values, allows for sloped ground walking. 2014-01-27 17:08:20 +00:00
photonstorm
dbdb2a2026 Adjusted delta timer cap and fixed some typos and more examples. 2014-01-27 17:08:20 +00:00
photonstorm
4505aa50f6 Integrated SAT. Fixed lots of examples. Fixed documentation. Added new examples and built new phaser.js file for testing. 2014-01-27 06:29:26 +00:00
photonstorm
45518b3ecd Adding checkCollision tests. 2014-01-24 17:30:37 +00:00
photonstorm
e3aaec8ac0 Removed Time delta cap, removed drag references from Emitter and tested doing a custom polygon collision. 2014-01-24 03:53:11 +00:00
photonstorm
ea9e22f472 SAT implemented and working nicely at long last :) 2014-01-23 21:45:35 +00:00
photonstorm
110ab4e253 More robust gravity handling avoiding 'sticky walls'. Added new platform test with mixture of mass tile collision and physics. 2014-01-23 01:50:43 +00:00
photonstorm
20108e47f3 Working through re-integrating tilemap collision. So far, so good. 2014-01-22 16:16:53 +00:00
photonstorm
1370ba52b5 Fixed Sci-Fly and restored tile collision handling. 2014-01-22 14:49:06 +00:00
photonstorm
b2c49ef853 Merging previous changes back in again. 2014-01-22 14:31:18 +00:00
photonstorm
f6af6fe0a3 Not fully working, but commit for posterity. Time to rollback if we're ever going to get this released. 2014-01-22 12:31:35 +00:00
photonstorm
7a0e9a478c New Math functions added. 2014-01-22 10:54:49 +00:00
photonstorm
15a002e720 Finally getting there! Body collision almost as good as it can be (without a full-on physics system). Just a few last tweaks to do. 2014-01-21 16:12:50 +00:00
Richard Davey
c9d07c7346 Testing out new Body structure 2014-01-20 23:07:56 +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
abdaaa0010 Tidied up the docs and removed some Body vars no longer needed. Now to attempt stacking. 2014-01-15 14:40:25 +00:00
photonstorm
58fb248575 Optimised Body loop, removed sleep properties, implemented minBounceVelocity. Working as expected at last :) 2014-01-15 14:40:25 +00:00
photonstorm
283e38aaae Time to optimise the rebound a little. 2014-01-15 14:40:25 +00:00
photonstorm
be6489fbc9 Body bounce + blocking values nearly sorted. 2014-01-15 14:40:24 +00:00
photonstorm
651737fdd0 More physics tweaks. 2014-01-15 14:40:24 +00:00
Richard Davey
d8bf13eaaa Merge pull request #309 from jcd-as/dev1
fix sprite vs sprite overlap check
2014-01-14 14:35:06 -08:00
photonstorm
bd66be1804 Updated Tilemap classes and further tests. 2014-01-14 22:34:41 +00:00
jcs
01a314018d fix sprite vs sprite overlap check 2014-01-14 13:51:55 -08: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
photonstorm
bd9898db7e New merged separate function that now uses processCallback the way it was always meant to be used. 2014-01-14 01:18:46 +00:00
photonstorm
e7c2b6ae9c Fixed nearly all of the tilemap examples to use the new tilemap system. 2014-01-14 00:31:58 +00:00
photonstorm
c6fa2cb7b6 Added the new Timer, TimerEvent and Time methods to the TypeScript definitions files. 2014-01-13 14:18:15 +00:00
photonstorm
0a0e775ea5 Removed temp. debug vars. 2014-01-09 17:12:24 +00:00
photonstorm
10d105d5ce Acceleration tested and working fine. Proper accurate friction added and working really nicely, so much better than 'drag' used to. Considering removing drag, although will break the API history. 2014-01-09 03:42:58 +00:00
photonstorm
67e2caafbc Added new Contributors guide. 2014-01-08 11:21:48 +00:00
photonstorm
c3183dcea9 Angular Physics re-implemented, most tests now working as expected. 2014-01-03 04:50:31 +00:00
Richard Davey
f7329e0661 Further physics modifications 2014-01-03 02:24:06 +00:00
photonstorm
5526a7322b Warning: This version has a new ArcadePhysics handler in it. Don't upgrade if you need this for live game code, wait until we go to master. Otherwise, this commit contains lots of new physics demos and a new updateMotion and Body class to try and fix, once and for all, the physics issues with applied forces. 2014-01-02 23:28:22 +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
Richard Davey
2c8077835c Merge pull request #251 from cocoademon/physics_self_collide_fix
Don’t test self-collisions
2013-12-26 15:10:28 -08:00
photonstorm
dd7ae12271 ArcadePhysics.overlap and collide now recognise TileSprites in the collision checks. 2013-12-17 16:48:03 +00:00
Richard Davey
a0961f27df Merge pull request #266 from cocoademon/physics_instability_fix
Physics instability fix. I'm merging this in so I can test it against the updates here.
2013-12-17 04:36:38 -08:00
photonstorm
896e9af9f5 TilemapLayers now render tiles correctly, with our without debugging overlay. Collision working well across single and index ranges. 2013-12-17 05:07:00 +00:00
Cameron Foale
b8dbb5d125 Take dt into account for gravity calculations 2013-12-17 14:38:44 +11:00
Cameron Foale
388e42c80a Remove invalid multiply by 60 in Phaser.ArcadePhysics.updateMotion 2013-12-17 13:45:15 +11:00
photonstorm
da5d8c9272 Updated p2.js to latest build. 2013-12-11 03:20:33 +00:00
Cameron Foale
56389fcaf4 Fix riding on platforms 2013-12-11 10:25:57 +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
ca3c71e8f5 Added max overlap clamp. 2013-12-06 02:44:06 +00:00
photonstorm
8e289e6b7c Mostly working, just need to apply a max overlap to avoid tunneling, although a ray would be better. 2013-12-06 02:34:28 +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
ea3802a556 Lots of new tilemap code in here. If your game relies on tilemaps then please don't update to this commit unless you want to help debugging! 2013-12-05 18:12:16 +00:00
Cameron Foale
b48669dded Don’t test self-collisions 2013-12-05 16:26:03 +11:00
photonstorm
a9a46bfbbf Lots of documentation updates and new Loader examples. 2013-11-27 16:33:49 +00:00
Josh Shepard (jcs)
f4688241d2 update the collision hulls in sprite->sprite separations (in addition to sprite->tile separations) 2013-11-25 20:58:39 -08:00
photonstorm
299115ca5d The entire Phaser library has been updated to match the new JSHint configuration. 2013-11-25 04:40:04 +00:00
photonstorm
13a2cc2feb Updating all files to adhere to the JSHint settings and fixing lots of documentation errors on the way. 2013-11-25 03:13:04 +00:00
photonstorm
38bd00b4ed ArcadePhysics.separateTile wasn't returning the value, so the custom process callback wasn't getting called (thanks flameiguana) 2013-11-16 13:47:12 +00:00
photonstorm
1eca16a948 ArcadePhysics.updateMotion applies the dt to the velocity calculations as well as position now (thanks jcs) 2013-11-05 16:14:24 +00:00
photonstorm
3c164b466c * Updated: event.preventDefault() has been added to all Mouse event handlers.
* Updated: Sprite.deltaX/Y removed due to non-use. prevX/Y values moved to Sprite._cache.prevX/Y.
* Updated: Due to missing extends parameter the Sprite prototype was picking up functions from classes it never meant to (Button, TilemapLayer), now fully isolated.
2013-11-01 02:07:21 +00:00
photonstorm
6f93a2ec94 Multiple Anims update, Tilemap fixes and some new examples. 2013-10-31 15:45:19 +00:00
photonstorm
24c809dd5f Final body / physics / bounds fixes. Also updated various examples, optimised Sprite core loop and enhanced the Invaders example. 2013-10-30 03:46:52 +00:00
photonstorm
3de62907a0 Nearly fixed the tilemap / body issue. More tests needed but then can push to master. 2013-10-29 04:07:26 +00:00
photonstorm
a814cc26cc * Fixed issue 135 - Added typeof checks into most ArcadePhysics functions to avoid errors with zero values.
* Fixed issue 136 - distanceTo using worldX/Y instead of x/y.
2013-10-28 10:17:36 +00:00
photonstorm
6994e4be5e Merge branch 'dev' 2013-10-25 18:50:14 +01:00
photonstorm
65d2bf557b Updated docs and more tidying up. 2013-10-25 17:30:37 +01:00
photonstorm
9f9e6a2a57 Lots of doc updates! 2013-10-25 16:54:40 +01:00
photonstorm
7e5f38d022 Phaser.Time physicsElapsed delta timer clamp added. Stops rogue iOS / slow mobile timer errors causing crazy high deltas. 2013-10-23 17:11:06 +01:00
photonstorm
4a51ac4671 Updated README and sorting out folder case issue. 2013-10-23 13:30:23 +01:00
photonstorm
8ed783802e New examples page 2013-10-18 15:12:32 +01:00
photonstorm
9c1fdb371c Nearly finished Tilemap integration into the core. 2013-10-16 06:33:39 +01:00
photonstorm
31018b9295 Star Struck game back and working again, plus finished the level design. 2013-10-16 03:37:15 +01:00
photonstorm
a97f271de7 Fixed Animation index 0 issue and hooked TilemapLayer to camera. 2013-10-16 02:09:12 +01:00
photonstorm
fd5eeb9088 Fixed Rectangle intersection issue and tilemap collision is working again. Win! 2013-10-15 15:24:07 +01:00
photonstorm
f3ea68aad3 Extracting the correct area from a layer, debug displaying it and preparing for collision. 2013-10-15 05:41:42 +01:00
photonstorm
dd695e066f More tilemap tweaks. 2013-10-14 19:37:52 +01:00
photonstorm
b868c2cb1b Started revamp of the Tilemap system. Also removed old 'Advanced Physics' and dropped in p2.js which is what I hope we'll eventually use. 2013-10-11 04:42:11 +01:00
photonstorm
a7230aa769 Sprite.loadTexture added. 2013-10-10 09:03:38 +01:00
photonstorm
29acf7fb4b Enemy tanks, now firing. 2013-10-09 07:11:36 +01:00
photonstorm
ca9321ef42 Updated physics body to use localTransform. Updated tanks demo. 2013-10-09 05:13:38 +01:00
photonstorm
83a00862be Lots of new examples and updates. 2013-10-09 04:31:08 +01:00
photonstorm
f5584bdfe5 Lots of fixes and updates to ArcadePhysics and Group, plus more examples. 2013-10-08 21:09:46 +01:00
photonstorm
c307f79102 Added Sprite.fixedToCamera, fixed Angular Velocity and Acceleration, fixed jittery Camera, added skipQuadTree flag and created lots more examples. 2013-10-08 00:58:20 +01:00
Richard Davey
e8bed83ac3 Making some major changes to Camera and World. 2013-10-04 14:41:15 +01:00
Richard Davey
7c7cd8b01d More docs and quick patch to stop the body.allowRotation messing things up. 2013-10-01 16:56:47 +01:00
Richard Davey
ca113b85aa More docs coming on. 2013-10-01 16:39:39 +01:00
Richard Davey
8d17e1f963 Sound duration fixes. 2013-09-30 12:17:21 +01:00
Richard Davey
9d84429960 Group length checks 2013-09-24 15:49:21 +01:00
Richard Davey
891369b197 Preparing for 1.0.6 release, but moving physics changes to dev. 2013-09-24 15:28:29 +01:00
Richard Davey
51049128f5 Collision fixes for testing 2013-09-23 22:23:17 +01:00
Richard Davey
257cbe3be8 Much more stable collision, just need to refactor the Tilemap handling - see if I can optimise it a bit too. 2013-09-23 03:26:08 +01:00
Richard Davey
bc02a1a05e Fixing collision issues 2013-09-23 01:06:09 +01:00
Richard Davey
a415e779d1 Final 1.0.5 release. 2013-09-20 13:55:33 +01:00
Richard Davey
f069107e55 1.0.1 release - fixes issues in tile map collision, additional Animation stop checks and updated package license. 2013-09-15 03:58:38 +01:00
Richard Davey
62d77e7038 Small new demo and refactored collision list - now far less comparisons to perform! 2013-09-13 04:22:12 +01:00
Richard Davey
0a42269479 Group vs. Group collision working - also fixed a bug in the Body.reset function that was causing some lovely physics errors :) 2013-09-13 03:52:05 +01:00
Richard Davey
ecc91fb4e0 More collision test cases and fixing a few issues as I go :) 2013-09-13 03:07:39 +01:00
Richard Davey
f812b92b8a Creating test cases. 2013-09-13 02:07:58 +01:00
Richard Davey
a1450680a4 Part way through re-factoring the collision handler 2013-09-13 00:53:03 +01:00
Richard Davey
9f687b4f8a Adding Type support for collision checks. 2013-09-12 21:54:41 +01:00
Richard Davey
79dc3566f4 Fixed some issues in Tilemap collision, updated the Emitter so x/y controls the point of emission (to stop collision getting out of whack) and fixed the postUpdate in body. 2013-09-12 20:59:56 +01:00
Richard Davey
92e86494e3 Tilemap Collision in and working :) Needs testing against Groups now. 2013-09-12 15:39:52 +01:00
Richard Davey
fba731e740 Added optional "pixel perfect" input checks and tested against static sprites, animated sprites, physics sprites and sprites positioned outside the screen (needing camera shift to appear). 2013-09-11 16:25:46 +01:00
Richard Davey
f260108433 Tidying up source code for release. Also refactored World to use a Group instance, rather tha duplicate functions. 2013-09-11 13:21:07 +01:00
Richard Davey
5d3fe891cd Particle Emitter in and working. Nice and fast, and a lot more flexible than before. 2013-09-10 01:26:50 +01:00
Richard Davey
78598ae54a Implemented my own LinkedList class to make the new Input Handler easier to work with. And also just generally useful to have too. 2013-09-08 11:24:41 +01:00
Richard Davey
fe6664eac7 Fixed the Body collide issues and optimised the process at the same time. Now the QuadTree appears to work perfectly as a result. Bonus! 2013-09-08 01:24:59 +01:00
Richard Davey
bb5d8ca170 a 2013-09-07 21:12:47 +01:00
Richard Davey
eb7af3d2a2 Group nearly done. Sprite.anchor appears to be broken though, must fix. 2013-09-06 20:20:58 +01:00
Richard Davey
822a2df289 Lots of work on Group and also resolved the issue of the core game loop structure not being quite right. 2013-09-06 15:00:05 +01:00
Richard Davey
0c97e8e151 Starting work on Group. 2013-09-05 21:07:44 +01:00
Richard Davey
10bc22b717 Motion helper functions added to the ArcadePhysics class. 2013-09-04 16:12:58 +01:00
Richard Davey
128bdccd79 Sorted out the QuadTree issues and resolved a small but vital bug in separateX, also re-organised the collision flags in Body. 2013-09-04 13:54:55 +01:00
Richard Davey
3f3b6bfd35 Brand new highly optimised QuadTree added, populated by the game loop and world ready to be queried as often as you want in your game loop, without creating hundreds of new QuadTrees each frame. 2013-09-04 03:48:15 +01:00
Richard Davey
2a353a0327 Flixel physics optimised about as much as it can be. Also added world and local gravity support and flag to toggle it on / off. 2013-09-04 01:10:01 +01:00
Richard Davey
0f438d5221 separateX up and working sweet with gc spike removal too 2013-09-03 19:34:38 +01:00
Richard Davey
a27f6d6562 Forces working, collision half way there. 2013-09-03 17:28:12 +01:00
Richard Davey
2fe8a3a0a7 Physics integration and a fix to Tween that stopped the repeat/yoyo from working. 2013-09-03 17:07:05 +01:00
Richard Davey
bdc1c2ceb9 Sorted out the bounds for when sprites are in trimmed texture atlases to stop the physics checks going insane. Also bundled in Advanced Physics lib, although not hooked up yet. 2013-09-03 15:35:40 +01:00