Richard Davey
9cabcd5d73
Tidying up
2019-03-21 17:24:34 +00:00
Richard Davey
212e8caba2
Now using CollisionInfo
2019-03-21 17:24:26 +00:00
Richard Davey
977e3b0ac3
Exposed IntersectsRects
2019-03-21 17:24:14 +00:00
Richard Davey
eae681bda2
Added new CollisionInfo handler
2019-03-21 17:24:03 +00:00
Richard Davey
0005cf590e
Resolved bounds sleep issue
...
Now to create collision info objects for sleep settling.
2019-03-21 11:31:05 +00:00
Richard Davey
6a145049b1
Testing issue with sticky bodies
2019-03-21 01:02:38 +00:00
Richard Davey
1518f49c23
Finally traced down the culprit. Now to resolve.
2019-03-20 17:14:44 +00:00
Richard Davey
1383aba08e
Hide some logs
2019-03-20 17:14:31 +00:00
Richard Davey
a0fc1ca3cc
Tidying up
2019-03-20 17:14:21 +00:00
Richard Davey
792f458e32
Better "is moving" handling
2019-03-20 15:00:17 +00:00
Richard Davey
93f012d3e3
Frame counter. Handy for debuggin.
2019-03-20 15:00:05 +00:00
Richard Davey
0f59b326f6
Sleeping can now force a position
2019-03-20 14:59:53 +00:00
Richard Davey
ec1b765833
Logging to figure out sleeping in the air
2019-03-20 10:41:06 +00:00
Richard Davey
1c81425771
Add forceY arguments
2019-03-20 10:40:32 +00:00
Richard Davey
bfdd039bf4
Don't force body position at this point
2019-03-20 10:40:19 +00:00
Richard Davey
290ef210f4
Doh, sqrt returns positive. Math.abs our velocities
2019-03-20 10:20:02 +00:00
Richard Davey
022ce80333
Fixed 'moves' assignment and added min velocity support
2019-03-20 04:07:58 +00:00
Richard Davey
bf25e424f0
Added support for minVelocity and fixed zero gravity rebound issue
2019-03-20 04:06:53 +00:00
Richard Davey
81e2851b37
Moved sleeping to new function and made stronger
2019-03-20 01:28:00 +00:00
Richard Davey
5dcd844701
Added world blocked debug color
2019-03-20 00:08:23 +00:00
Richard Davey
87e9f8e62d
Don't reforce a forced position
2019-03-20 00:02:16 +00:00
Richard Davey
1e5c2ea0fc
Reworked blocker handling
2019-03-20 00:02:04 +00:00
Richard Davey
fcd7f25091
Preparing to swap for isBlocked checks
2019-03-19 23:21:59 +00:00
Richard Davey
68c8bd3af2
Removed logs array and tidying up the flow
2019-03-19 23:21:48 +00:00
Richard Davey
7a602ab105
Removed logs and added blockers
2019-03-19 23:21:35 +00:00
Richard Davey
0cef93134f
Set blocker, not world blocker
2019-03-19 23:21:23 +00:00
Richard Davey
6462e18527
Gravity vars
2019-03-19 23:21:06 +00:00
Richard Davey
8373936896
Removing need for sqrts when mass is the same
2019-03-19 00:27:26 +00:00
Richard Davey
d59617a627
Never ending debugging ahoy.
2019-03-18 17:17:59 +00:00
Richard Davey
5485c07b32
Fixed world gravity rebound
2019-03-18 14:55:54 +00:00
Richard Davey
df0c76569f
Added world rebounds handler
2019-03-18 14:12:52 +00:00
Richard Davey
4e993ce296
Much better seperation code and testing block exchange
2019-03-18 14:12:40 +00:00
Richard Davey
728a6da8e6
Gravity stored in properties. Intersects padding removed.
2019-03-18 14:12:12 +00:00
Richard Davey
1306ad2f4a
Splitting up the process of checking and separating, merging results back into Body
...
Body now tracks previously blocked so it can test block status before update happens.
2019-03-18 08:08:46 +00:00
Richard Davey
01ddf26662
Optimizing code out
2019-03-15 19:22:51 +00:00
Richard Davey
f555757032
Refined soft blocks vs. hard blocks
2019-03-15 19:22:42 +00:00
Richard Davey
2e63be9dd8
Added setWorldBlocked methods
2019-03-15 19:22:32 +00:00
Richard Davey
7e6efb342e
Only apply gravity if not blocked and use new intersects method
2019-03-15 19:22:13 +00:00
Richard Davey
edf1b57c17
New Intersects method as it's used in multiple places
2019-03-15 19:21:54 +00:00
Richard Davey
3e967ab300
Move sleep iterations to property and add wake method
2019-03-15 13:31:57 +00:00
Richard Davey
1fc476d738
Wake-up sleeping bodies on impact
2019-03-15 13:31:40 +00:00
Richard Davey
9500fbc97c
No gravity for sleeping bodies
2019-03-15 13:31:26 +00:00
Richard Davey
e93c40ddb1
Set forcePosition flag
2019-03-15 12:54:25 +00:00
Richard Davey
bdde075643
Implemented sleeping and much better debug drawing
2019-03-15 12:53:59 +00:00
Richard Davey
ae93accf2e
Added the new debug colors to the World defaults
2019-03-15 12:52:55 +00:00
Richard Davey
b635458ebb
More resting tests
2019-03-14 17:20:47 +00:00
Richard Davey
a74feee87d
Use local var
2019-03-14 17:20:31 +00:00
Richard Davey
54612b55fb
Adding flip flop test
2019-03-14 14:52:07 +00:00
Richard Davey
07eea60143
Removed wasBlocked and tidied up
2019-03-14 14:16:25 +00:00
Richard Davey
a605ad8d0c
Handle nonn intersects aborts
2019-03-14 14:16:15 +00:00
Richard Davey
343964dd3a
Removed debug stuff and fixed array vs. array iteration
2019-03-14 14:15:58 +00:00
Richard Davey
3b53057257
Fixed prev distance calculation + added intersects check
2019-03-14 14:15:43 +00:00
Richard Davey
dc31e39e01
Pushing to carry on debugging at home
2019-03-13 17:27:11 +00:00
Richard Davey
9ad4ed6d8f
Overlap sharing implemented, allowing bounce to work again
2019-03-13 02:27:51 +00:00
Richard Davey
e42936314c
Test previous difference too, to mitigate tunneling
2019-03-13 02:27:11 +00:00
Richard Davey
395e4d0554
Cache vars
2019-03-13 02:26:52 +00:00
Richard Davey
5b4b2d2fa9
Fixed issue re: would bounce
2019-03-11 22:47:59 +00:00
Richard Davey
24921d653b
Added body filtering back
2019-03-11 22:47:48 +00:00
Richard Davey
b228e23dfd
Added blocked debug
2019-03-11 17:28:43 +00:00
Richard Davey
afd1dac03c
Move flag responsibility back in
2019-03-11 17:28:23 +00:00
Richard Davey
3ab9da8f04
Test just Y for now
2019-03-11 17:27:55 +00:00
Richard Davey
dea9a06dd2
Reworked the logic to reduce quantity of flags
2019-03-11 17:27:29 +00:00
Richard Davey
59859e93a7
Reset velocity on world bounds and blocked by setting
2019-03-11 12:26:58 +00:00
Richard Davey
f8b59e3e14
Added embedded check
2019-03-11 12:26:23 +00:00
Richard Davey
1d5dbb960a
A Body can only be blocked by 1 object per frame
2019-03-11 12:26:11 +00:00
Richard Davey
09cb8db2d8
Removed logging
2019-03-11 11:05:58 +00:00
Richard Davey
70f6484716
Flag swizzles ahoy
2019-03-11 11:05:51 +00:00
Richard Davey
932f70cea2
Removed logging and handled bounds collision
2019-03-11 11:05:42 +00:00
Richard Davey
89e33ae53e
Testing. Please do not use this build, it will break AP.
2019-03-11 09:19:41 +00:00
Richard Davey
9db9511bf1
Working on new blocked flag setting
2019-03-08 20:12:49 +00:00
Richard Davey
e27196ce52
Removed responsibility for flag setting from overlay, also return a value all the time, not just in motion
2019-03-08 20:11:27 +00:00
Richard Davey
e1f9e31e9f
Added setTouching and setBlocked methods + refactored the way world bounds collision is done
2019-03-08 20:10:49 +00:00
Richard Davey
08d4961aab
Allow to pass in a single array to check against itself
2019-03-08 20:09:18 +00:00
Richard Davey
e5fbe13649
Updated docs
2019-03-08 19:54:46 +00:00
Richard Davey
8839ab1c0e
Added the new overlapRect
method.
2019-03-07 15:16:31 +00:00
Richard Davey
8e872fcb51
Fixed closest and furthest when the RTree is disabled
2019-03-07 14:13:45 +00:00
Richard Davey
d36ada0386
Added collideTiles
and overlapTiles
to AP.
2019-03-07 13:36:15 +00:00
Richard Davey
0ee2442597
Bumping to 3.17.0
2019-03-07 12:31:06 +00:00
Richard Davey
95d47a429d
Tidying up
2019-03-05 14:46:41 +00:00
Richard Davey
8167d6d305
New isLayer handling
2019-03-05 14:43:20 +00:00
Richard Davey
d160df3194
Removed late
Set, optimized step process and added overlapTiles
and collideTile
methods.
2019-03-05 14:42:15 +00:00
Richard Davey
6095ab0ef6
Split the Body step up into preUpdate, update and postUpdate. Also tidied up the postUpdate method.
2019-03-05 14:17:57 +00:00
sky-coding
bab6a0bd69
remove erroneous doc comment parameter
2019-02-20 20:48:09 -08:00
Richard Davey
0479badd6e
Properties are optional
2019-02-13 17:20:10 +00:00
Richard Davey
3bb73c5664
Fixed Group defs and completed Arcade Physics defs
2019-02-13 14:45:36 +00:00
Richard Davey
e7b1d086e7
Moving all of the typedefs to properly namespaced scopes, rather than globals
...
\o/ ~ "Someone, save me!"
2019-02-13 12:35:12 +00:00
Richard Davey
b50e1c78b5
Lots more jsdoc tweaks and improvements
2019-02-12 15:01:54 +00:00
Richard Davey
dc73993fe2
Added jsdoc version numbers
2019-02-12 12:22:25 +00:00
Richard Davey
ccaae460a4
Added jsdoc version numbers to each event
2019-02-12 11:37:58 +00:00
Richard Davey
0b4dc5f037
Should be a config setter.
2019-02-04 21:50:55 +00:00
Richard Davey
60542a25cc
Numerous jsdoc and TS related fixes
2019-02-04 17:16:08 +00:00
Richard Davey
4f6f6ee72f
Lots of jsdoc and type fixes
2019-01-31 12:19:01 +00:00
Richard Davey
ebe4af217c
lint fix
2019-01-24 00:30:44 +00:00
Richard Davey
cf2095f0c8
The Arcade Physics Body has a new property maxSpeed
which limits the vector length of the Body velocity. You can set it via the method setMaxSpeed
and it is applied in the World.computeVelocity
method
2019-01-24 00:26:29 +00:00
Richard Davey
4c24799eac
Arcade Physics could trigger a collide
event on a Body even if it performing an overlap check, if the onCollide
property was true
2019-01-18 16:16:14 +00:00
Richard Davey
7237277abe
Merge pull request #4287 from samme/fix/arcade-body-deltas
...
Queue 'late' colliding bodies for a second update
2019-01-18 16:03:36 +00:00
Richard Davey
1eccff1e3b
Fixed jsdoc links and markdown bullet lists
2019-01-18 15:20:56 +00:00
Richard Davey
bc962c25dc
All listeners use the new Events
2019-01-18 13:41:43 +00:00
Richard Davey
5494f6ac79
Arcade Physics Events
2019-01-17 14:04:36 +00:00
Richard Davey
aa341854c7
Happy New Year
2019-01-15 16:20:22 +00:00
Richard Davey
49c2868746
All default width/height values are now taken from the Scale Manager, not the Game Config
2019-01-11 15:57:57 +00:00
samme
87bd2e68d3
Queue 'late' colliding bodies for a second update
...
- Fixes #4154
- Fixes #4284
2019-01-09 12:56:32 -08:00
Artem Kuskis
24d3406b7d
Fix circles collision
2019-01-05 11:26:03 +03:00
Francois
03aa16531d
Make customBoundsRectangle available in the physics group
2018-12-15 22:52:12 +01:00
Francois
7033297aa3
Use a custom bounds rectangle for the Arcade Body to overwrite the world bounds
2018-12-15 22:08:09 +01:00
Richard Davey
af5b1f2427
StaticBody.reset
in Arcade Physics would ignore the x
and y
values given to it. If given, they're now used to reset the parent Game Object before the body is updated. Fix #4224
2018-12-12 12:39:47 +00:00
Richard Davey
1a407bc4f5
ArcadePhysics.Body.destroy
will now only add itself to the World pendingDestroy
list if the world property exists. This prevents Cannot read property 'pendingDestroy' of undefined
errors if you try to delete a physics body in a callback and then immediately change Scene (which tells the physics work to also delete all bodies)
2018-12-06 14:47:06 +00:00
Richard Davey
c1771ecdac
Merge branch 'master' of https://github.com/photonstorm/phaser
2018-11-20 11:02:31 +00:00
Richard Davey
8cd45a72b2
ESLint fixes
2018-11-20 11:02:19 +00:00
Richard Davey
96b9db5cb7
Merge pull request #4150 from samme/docs/misc
...
Docs updates
2018-11-20 10:45:54 +00:00
Richard Davey
f06bb3d420
Formatting fix
2018-11-20 10:21:02 +00:00
Mike Thomas
a3965cb609
issue/4168 draw circular StaticBody as circle in drawDebug
2018-11-16 17:43:53 +01:00
samme
b5a2d9d0cf
Docs for Arcade Physics
...
Minor additions/corrections
2018-11-07 09:43:43 -08:00
samme
7ff8d51f98
Docs for input and physics events
2018-10-24 12:14:44 -07:00
Richard Davey
0b3d54a198
Added jsdocs
2018-10-19 18:29:36 +01:00
Richard Davey
a083318e02
Added lots of missing jsdocs
2018-10-19 17:45:05 +01:00
Richard Davey
772159d8f0
Merge pull request #4118 from pierpo/patch-1
...
Fix issue with null config in Arcade PhysicsGroup constructor
2018-10-19 13:43:18 +01:00
Richard Davey
f26c869c61
Merge pull request #4069 from samme/feature/drawDebug
...
Use defaultStrokeWidth in Arcade.Body#drawDebug()
2018-10-19 13:27:45 +01:00
Richard Davey
16d297746d
Merge pull request #4122 from samvieten/patch-2
...
JSDocs wrong Boolean on checkCollision description
2018-10-19 13:16:18 +01:00
Richard Davey
4c4421c47f
Docjam merge
2018-10-19 12:32:43 +01:00
sam
467f165bf4
JSDocs wrong Boolean on checkCollision description
...
L647 "checkCollision.none = false to disable collision checks" this is false way description, changed to "= true"
As of pull request: photonstorm/phaser3-docs#75
2018-10-19 06:42:25 +08:00
Pierre Poupin
63458ab336
Fix issue with null config in PhysicsGroup constructor
2018-10-17 01:13:18 +02:00
Richard Davey
a043cc88ea
Changed version number
2018-10-12 18:32:52 +01:00
Richard Davey
a9938baec6
Merge pull request #4070 from samme/feature/arcade-group-config-enable
...
Add PhysicsGroupConfig.enable, Arcade.Body#setEnable()
2018-10-12 18:29:58 +01:00
Richard Davey
4b1c762296
Updated @memberOf to @memberof
2018-10-10 10:49:13 +01:00
Richard Davey
a9063604dc
Replace @readOnly with @readonly
2018-10-09 13:40:00 +01:00
Richard Davey
e297b3272e
Added hundreds of new jsdoc descriptions
2018-10-01 11:35:01 +01:00
samme
69ff71e0bd
Add description for PhysicsGroupDefaults.setEnable
2018-09-29 14:09:05 -07:00
samme
5f4f5e6cfc
Merge branch 'master' into feature/arcade-group-config-enable
2018-09-29 14:07:09 -07:00
Richard Davey
3c4e6cda80
Arcade Physics shutdown
will check to see if the world instance still exists and only try removing it if so. This prevents errors when stopping a world and then destroying it at a later date.
2018-09-29 11:21:41 +01:00
Richard Davey
c237209bb8
Added new jsdocs
2018-09-28 12:19:21 +01:00
Richard Davey
37076516e2
Merge branch 'master' into docs/arcade-physics-2
2018-09-28 11:07:44 +01:00
Richard Davey
818a28073f
Added jsdocs
2018-09-28 11:04:19 +01:00
samme
adb2181a8a
Add docs for groups and Arcade.Factory
2018-09-26 12:25:09 -07:00
samme
536555236f
Add PhysicsGroupConfig.enable, Arcade.Body#setEnable()
2018-09-26 10:25:45 -07:00
samme
5d38357533
Use defaultStrokeWidth in Arcade.Body#drawDebug()
2018-09-26 09:50:48 -07:00
Richard Davey
8cc7650f8c
Arcade Physics Bodies will now sync the display origin of the parent Game Object to the body properties as part of the updateBounds
call.
2018-09-26 17:15:22 +01:00
samme
6a8e5d2082
Correct descriptions for customSeparateX, customSeparateY
2018-09-25 13:25:47 -07:00
samme
817720b42c
Correct description for Arcade.Body#maxVelocity
2018-09-24 16:58:00 -07:00
samme
31175ae61f
Correct overlapCallback
argument name
2018-09-24 16:52:15 -07:00
Richard Davey
89b9f42f3e
Adding jsdocs
2018-09-24 23:20:43 +01:00
samme
2a51d6b70f
Arcade Physics docs revisions
2018-09-24 12:12:56 -07:00
Richard Davey
a6e650f26f
Merge pull request #4006 from samme/docs/arcade-image-body
...
Correct types for ArcadeImage#body, ArcadeSprite#body
2018-09-04 12:23:26 +01:00
Richard Davey
7c55e65543
Arcade Physics Body deltaX
and deltaY
methods will now return the previous steps delta values, rather than zero. Fix #3987
2018-09-04 12:16:24 +01:00
Richard Davey
3d989e136f
Arcade Physics World collideSpriteVsTilemapLayer
now syncs the collision results back to the body, allowing you to call collide
from within an update loop once again. Fix #3999
2018-09-04 12:12:51 +01:00
samme
c0e141513c
Correct types for ArcadeImage#body, ArcadeSprite#body
2018-09-02 14:45:39 -07:00
Richard Davey
00a31d2d88
Updated docs. Close #3997
2018-09-01 10:14:22 +01:00
Richard Davey
14d3f6b35c
Calling Arcade Physics collide
during an update
method wouldn't inject the results back into the Body parent, causing the bodies to carry on moving. Using Colliders worked, but manually checking did not. Now, both methods work. Fix #3777
2018-08-29 16:35:13 +01:00
Richard Davey
3469ff2cfd
Arcade Physics World has gained two new private properties _tempMatrix
and _tempMatrix2
. These are used by all bodies in the simulation that need a temporal matrix for calculations, rather than having their own instances.
2018-08-29 16:07:07 +01:00
Richard Davey
2c525845be
The Arcade Physics Body _tempMatrix
property has been removed. It was only used if the Body's Game Object had a parent. The matrix has been moved to the World instance instead, shared by all bodies.
2018-08-29 16:06:13 +01:00
samme
fb23367c63
Fix Arcade.World#disable
...
It was passing the wrong argument to disableBody, so failing.
2018-08-22 13:23:58 -07:00
Aurélien DUSSAUGE
b14d920581
Replace DistanceBetween with DistanceSquared in closest() and furthest() functions (ArcadePhysics.js)
2018-08-13 21:59:58 +02:00
Richard Davey
4bdb0de312
The Arcade Physics Body.speed
property is now set whenever you set the velocity via setVelocity
or setVelocityX
or setVelocityY
which stops the body velocity being reset to zero if useDamping
is enabled. Fix #3888
2018-08-08 17:31:22 +01:00
Richard Davey
d50b72dd14
Fixed Group creation arguments
2018-08-01 18:01:36 +01:00
Richard Davey
3d23013b86
Body setSize changes to fix #3863 PR
2018-07-31 09:39:22 +01:00
Richard Davey
16234491f2
Merge pull request #3863 from tarsupin/patch-2
...
Empty params reset to current texture size
2018-07-31 09:31:05 +01:00
tarsupin
79d64abaa3
Add spaces after ifs
2018-07-24 20:06:18 -05:00
tarsupin
2e72c9966b
Reset body to match current frame
...
When using setSize, empty height and width will automatically assign to match the current frame of the game object.
2018-07-24 20:05:51 -05:00
tarsupin
7af6e5477f
Empty params reset to current texture size
...
If the width and height aren't provided, it resets the body's size to match the current frame of the game object's texture.
2018-07-24 19:53:41 -05:00
samme
7ebc7dd01f
Fix ArcadePhysics#closest, furthest
2018-07-18 16:23:38 -07:00
samme
b3ac91df5a
Fix blocked.none after separation
2018-06-19 14:48:07 -07:00
Richard Davey
1777c47a23
Added missing check
2018-06-08 00:22:58 +01:00
Richard Davey
15af7c6d0c
Added jsdocs
2018-06-04 01:38:45 +01:00
Richard Davey
e7fec396e1
If a Body collides with a Static Body it will now set the blocked
properties accordingly
2018-06-03 21:17:33 +01:00
Richard Davey
579c6ba607
Body.useDamping is a new boolean property that allows you to use a damping effect for drag, rather than the default linear deceleration.
2018-06-03 17:08:08 +01:00
Richard Davey
9aa80b2b49
World.computeVelocity now uses the Body.useDamping property to perform either linear deceleration or damping on the Body.
...
updateMotion has been stream lined.
computeVelocity has been rewritten, takes new arguments, performs better internally.
2018-06-03 17:07:41 +01:00
Richard Davey
bbf6211107
Refactored enable and disable flow and added lots of jsdocs.
2018-06-02 12:45:25 +01:00
Richard Davey
9875318f20
Added missing dx/dy properties
2018-06-01 19:52:52 +01:00
Richard Davey
40a3896962
Added more jsdocs, setFPS and optimized group vs. sprite and RTree use
2018-06-01 19:19:07 +01:00
Richard Davey
586d1827e0
Removed dirty property, optimized update loop, refactored postUpdate for fixed time step
2018-06-01 19:18:40 +01:00
Richard Davey
329c9266b4
GetOverlapX/Y now use the calculated delta values, not the deltaX/Y methods
2018-06-01 15:41:40 +01:00
Richard Davey
4ad7993b78
Added fixed timestep logic to Arcade Physics World
2018-06-01 03:25:33 +01:00
Richard Davey
652b7b04ba
Huge new ArcadeColliderType
def. Fix #3714 .
2018-05-31 15:52:45 +01:00
Richard Davey
6ab124c591
Merge pull request #3687 from thomastanck/thomastanck-typedefupdates
...
Update type definitions
2018-05-24 13:49:30 +01:00
Richard Davey
68303622f2
Setting an existing Game Object as a static Arcade Physics body would sometimes incorrectly pick-up the dimensions of the object, such as with TileSprites. Fix #3690
2018-05-23 15:17:26 +01:00
Richard Davey
de8462efed
Added default values and tidied up docs a little
2018-05-22 16:19:18 +01:00
Richard Davey
1485f34cbe
Merge pull request #3682 from samme/feature/arcade-body-setters
...
Add `allowDrag`, `allowGravity`, `allowRotation` to Arcade.PhysicsGroup config
2018-05-22 16:12:39 +01:00
Thomas Tan
0c61eb0062
Return type this for Arcade Physics components too
2018-05-22 16:09:28 +08:00
Thomas Tan
ff38588285
Specify type of ArcadeSprite.body
...
Do this by overwriting this.body in ArcadeSprite constructor.
2018-05-22 10:16:21 +08:00
Thomas Tan
8124ba9b86
Allow object param type for Arcade group Factory
2018-05-22 10:15:42 +08:00
Thomas Tan
806b5981b0
Add Group to param type in Arcade collide/overlap
2018-05-22 10:11:15 +08:00
Thomas Tan
3589b95bbd
Fix setCollideWorldBounds param type for Arcade
2018-05-22 10:05:37 +08:00
samme
24efda7aca
Add allowDrag
, allowGravity
, allowRotation
to PhysicsGroup config
2018-05-16 10:36:23 -07:00
samme
06677c2cdc
Allow empty object2 in collideObjects
2018-05-15 13:11:31 -07:00
Richard Davey
350cb037b7
All systems now register themselves with the new PluginCache
2018-05-15 12:51:50 +01:00
Richard Davey
be330e609e
Moved PluginManager to new location
2018-05-10 17:14:33 +01:00
samme
a70fb6aee9
Add docs for Arcade Physics
2018-05-09 21:28:52 -07:00
Bill Reed
a996bbf8df
update collider and overlap param types
2018-04-30 08:44:02 -04:00
Bill Reed
3fc0712451
update collider param types
2018-04-30 08:43:21 -04:00
Bill Reed
e3af569642
update overlap and collide params
2018-04-30 08:42:49 -04:00
Bill Reed
7251824b1d
arcade colliders take gameobjects, not arcade bodies
2018-04-30 07:46:46 -04:00
Bill Reed
a50b302216
same for overlap
2018-04-29 11:35:19 -04:00
Bill Reed
b483fc4e1a
update arcade collider factory method optional params to match arcade world collider optional params
2018-04-29 11:33:01 -04:00
Richard Davey
f57ab02fe6
Recoded how RTree generations its functions. Solves perf issue introduced in 3.4 Fix #3594
2018-04-18 22:32:52 +01:00
Richard Davey
b0544c73b8
jsdoc fixes
2018-04-18 13:29:22 +01:00
Richard Davey
1be486fab4
destroy
only called once, no matter how many times the Scene restarts. Fix #3581
2018-04-17 12:25:45 +01:00
Richard Davey
07a55e5d1f
Removed debug call and merged Scene Systems boot and start sequences. Fix #3579
2018-04-17 02:34:07 +01:00
Richard Davey
28e2764723
More jsdoc fixes
2018-04-16 16:02:27 +01:00
Richard Davey
b392dee5a9
More jsdoc fixes
2018-04-16 15:11:51 +01:00
Richard Davey
ce7d67297f
Moving from 3.4.1 to 3.5.0 so we can release new camera fx and scene transitions
2018-04-15 12:44:47 +01:00
Richard Davey
6b2307594a
Scene plugin flow overhaul
...
Every Plugin has been updated to correctly follow the same flow through the Scene lifecycle. Instead of listening for the Scene 'boot' event, which is only dispatched once (when the Scene is first created), they will now listen for the Scene 'start' event, which occurs every time the Scene is started. All plugins now consistently follow the same Shutdown and Destroy patterns too, meaning they tidy-up after themselves on a shutdown, not just a destroy. Overall, this change means that there should be less issues when returning to previously closed Scenes, as the plugins will restart themselves properly.
2018-04-13 17:12:17 +01:00
Richard Davey
30d73a0197
Container can now be assigned an arcade physics body
2018-04-11 13:37:38 +01:00
Richard Davey
f80db91429
Allowing to work with Containers
2018-04-11 13:17:53 +01:00
Joe Janiga
8ee9805596
work in progress on Static Body offset functionality... should Sprite.setPosition(x,y) effect Sprites static body?
2018-04-11 00:16:08 -04:00
Richard Davey
4466f28e44
Updated log
2018-04-05 08:48:35 +01:00
Richard Davey
89c963c19c
Ignore consts
2018-03-30 14:38:58 +01:00
Richard Davey
0868d69fb6
Added memberOf
2018-03-30 14:24:18 +01:00
Richard Davey
747f09af86
jsdoc fixes
2018-03-28 15:04:09 +01:00
Richard Davey
2096729095
Missing require
2018-03-28 14:15:32 +01:00
Richard Davey
15c4334dc7
jsdoc fixes
2018-03-28 14:11:46 +01:00
orblazer
f42f1bf132
Change structs for generic types
2018-03-23 16:54:12 +01:00
orblazer
ed1f2a7011
Fix wrong types
2018-03-22 13:51:30 +01:00
orblazer
11845f9d6d
Fix "object" types on Physics and Math
2018-03-21 14:15:25 +01:00
orblazer
7fba122321
Fix "any" types
2018-03-20 17:15:49 +01:00
orblazer
dca7996179
Fix multiple types on Physics, Texture and Input
2018-03-20 16:10:19 +01:00
orblazer
f30218d3d3
Add callbacks on Physics
2018-03-19 21:42:07 +01:00
Richard Davey
620bcc6ae5
jsdoc fixes and additions
2018-03-19 13:45:00 +00:00
orblazer
af3c03a3cb
Update JSDoc on "Arcade" physics
2018-03-19 00:29:46 +01:00
Richard Davey
a524dc44b0
Expose constants. Fix #3387
2018-03-16 13:29:30 +00:00
Richard Davey
7a8e4cf5e1
Merge pull request #3366 from samme/feature/world-wrap
...
Add Arcade.World wrap methods and Actions.WrapInRectangle
2018-03-16 12:58:16 +00:00
Sean Bohan
4cde28fecd
Forgot to devide width by 2
2018-03-16 14:02:41 +08:00
Sean Bohan
72e82ecf48
Fix debug draw of scaled arcade body
2018-03-16 14:02:41 +08:00
samme
4b25574d82
Expect v3.3.0
2018-03-12 07:29:49 -07:00
samme
66e5a72dae
Add Phaser.Physics.Arcade.World#wrap and friends
...
- Phaser.Physics.Arcade.World#wrap
- Phaser.Physics.Arcade.World#wrapArray
- Phaser.Physics.Arcade.World#wrapObject
2018-03-10 13:36:18 -08:00
Patrick Galbraith
8eb82e4fcb
Fix for collideGroupVsSelf is undefined
...
This happens when you call collide with a single group as the first param.
Seems like the `collideGroupVsSelf` function was not implemented. I've changed it to just call the `collideGroupVsGroup` with the first object twice which worked when I tested it on my project.
2018-03-05 21:15:38 +10:30
Sean Bohan
3f2e63fc17
Fix arcade body does not align with scaled parent object.
...
When a game object scaled, arcade body still calculate its position based on its original size instead of scaled one.
2018-03-01 09:02:04 +08:00
Richard Davey
1cae348300
Merge pull request #3278 from nkholski/arcadeGroups
...
Groups arcade collision
2018-02-28 20:56:11 +00:00
Richard Davey
218b4e4a52
Merge pull request #3285 from samme/docs/onWorldBounds
...
Describe Arcade.Body#onWorldBounds
2018-02-28 20:48:31 +00:00
Richard Davey
921d7e317a
Arcade Physics Bodies didn't apply the results of allowRotation
to the parent Game Object.
2018-02-27 01:08:55 +00:00
samme
36d91e9955
Describe Arcade.Body#onWorldBounds
2018-02-26 11:27:57 -08:00
Niklas Berg
b87d71ab73
single out groups without physics
2018-02-24 08:44:38 +01:00
Niklas Berg
b9e4d15efb
Groups arcade collisions
2018-02-23 23:49:12 +01:00
samme
64e5b4394a
Fix 'static is a reserved word in strict mode'
2018-02-18 10:38:08 -08:00
Richard Davey
d23688c3e4
Added eslint fixes and overrides
2018-02-16 18:44:07 +00:00
Richard Davey
3f155bf8f3
World didn't import GetOverlapX or GetOverlapY, causing separateCircle
to break.
2018-02-16 18:43:06 +00:00
Richard Davey
86f00eeb52
eslint fixes
2018-02-16 18:17:51 +00:00
Richard Davey
4e6df03512
Updated semver
2018-02-15 14:31:15 +00:00
Richard Davey
aa9cac4ba8
Added refreshBody method and jsdocs
2018-02-15 01:52:01 +00:00
Richard Davey
7df00ccb6f
Removed un-used properties from the Static Body
...
Set un-used Vectors to use the Vec2 ZERO constant to save object creation.
Added setGameObject and updateFromGameObject methods.
2018-02-15 01:51:36 +00:00
Richard Davey
4cc7fed1dd
Added World.pendingDestroy Set and process it during postUpdate.
2018-02-15 01:50:22 +00:00
Richard Davey
b36dd17430
Removed pendingDestroy and opted for easier Set iteration.
...
Updated Body.reset so it resets the Sprite as well, otherwise the Body remains stuck on the next update loop.
2018-02-15 01:49:55 +00:00
Richard Davey
e68329f763
Fixed version numbers
2018-02-14 19:55:00 +00:00
Richard Davey
24e8f7a119
Body.destroy is now flag based, cleared by the World.
...
Added pendingDestroy flag to handle body destruction within events or collider iterations.
2018-02-14 19:36:34 +00:00
Richard Davey
81d0a48c58
disableBody renamed disableGameObjectBody
...
disableBody now disables just a body object.
destroying a body sets its `pendingDestroy` flag, which is now cleared in the postUpdate method.
Group vs. Group collision has been implemented.
World.destroy properly clears down its Sets and RTrees.
2018-02-14 19:35:57 +00:00
Richard Davey
c6f4a6ed43
Arcade Physics Colliders have a name property and setName method.
2018-02-14 19:33:33 +00:00
Richard Davey
8f4a1012fd
Updated jsdocs.
2018-02-13 01:39:22 +00:00
Richard Davey
2813ac8162
Moved PluginManager and merged configs into single root file for easier changing.
2018-02-12 23:03:48 +00:00
Richard Davey
d1f5f8a82b
Added jsdocs
2018-02-12 16:01:21 +00:00
Richard Davey
c1b5ff885e
Added jsdocs
2018-02-09 04:08:01 +00:00
Richard Davey
e0899bfa00
Added jsdocs
2018-02-09 03:44:23 +00:00
Richard Davey
91887815f6
Merged Arcade Physics methods and added jsdocs
2018-02-09 01:40:41 +00:00
Michael Hadley
a6365c5339
Removing es6 'let' from AP vs tilemap
2018-01-19 06:56:52 -06:00
Richard Davey
d46662cd46
Swapped to using Number.MAX_VALUE
so repeat -1 now works properly in IE11 and below.
2018-01-18 14:59:32 +00:00
Richard Davey
2deb9edc9e
Plugins now check to see if the Scene is already booted and adapt accordingly.
2018-01-18 14:00:31 +00:00
Richard Davey
5a333bc2fd
Updated to new Plugin format, removed injection and mapping
2018-01-18 05:18:09 +00:00
Michael Hadley
5bc09a2c5c
Update AP physics to handle tiles where tileSize !== baseTileSize
2018-01-17 11:27:29 -06:00
Richard Davey
108b6bd2a3
Events call the world directly, avoids an unnecessary function jump.
2018-01-17 15:28:53 +00:00
Richard Davey
b17744df61
Merge branch 'master' of https://github.com/photonstorm/phaser
2018-01-17 03:42:03 +00:00
Richard Davey
ddba95873d
Moved Arcade and Impact Physics over to the new plugin system
2018-01-17 03:41:58 +00:00
Michael Hadley
814e5af815
Remove recalculation of tile bounds from arcade physics
2018-01-16 19:03:13 -06:00
Michael Hadley
bf413ea604
Implemented tile & layer callbacks in arcade physics
2018-01-12 15:00:37 -06:00
Michael Hadley
ef58640026
Arcade: tilemap collisions/overlaps now emit appropriate events
2018-01-12 14:23:36 -06:00
Michael Hadley
8f0b428209
Bug fix in events: overlap
used where collide
should be
2018-01-12 14:20:48 -06:00
Richard Davey
f9a1e27334
Removed un-used event files and references.
2018-01-12 17:20:16 +00:00
Richard Davey
c625b8735b
Updated to using Event Emitter for all key managers and game objects. Events are now dispatched directly using arguments instead of Event objects, all managers updated to emit directly.
2018-01-12 17:09:21 +00:00
Michael Hadley
15825eacb3
Add note about circle bodies not currently being supported in Arcade tile intersection
2018-01-12 10:53:36 -06:00
Michael Hadley
bab399a02e
Made CollideHandler consistent by returning value from logic branches
...
Each branch should return true/false based on whether a collision happened
2018-01-11 14:13:42 -06:00
Michael Hadley
00cebf8eae
CollideGroupVsTilemapLayer implementation
2018-01-11 14:03:34 -06:00
Michael Hadley
5241798ab3
Pass TILE_BIAS from arcade world into tile colliding functions
2018-01-11 08:32:07 -06:00
Michael Hadley
98ae8009e0
Arcade rect vs tilemap layer collision handling
2018-01-10 20:47:25 -06:00
Michael Hadley
32788d6eb6
Stub arcade collide vs tilemap methods
2018-01-10 20:43:11 -06:00
Michael Hadley
e3699aaea0
Remove unnecessary Arcade Body#tilePadding
2018-01-10 19:34:22 -06:00
Richard Davey
d8f1ba03e9
Moved repository location
2018-01-09 21:43:56 +00:00
Richard Davey
0d90f75b5f
Splitting the dev branch up into versions.
2016-11-22 01:36:56 +00:00
Richard Davey
4d4344bf03
Arcade Physics updated to use new Transform system.
2016-11-11 02:20:31 +00:00
photonstorm
26711241ac
Disabled access to World and Camera for now.
2016-10-14 02:20:35 +01:00
Richard Davey
8a78029e2b
Merge pull request #2728 from samme/issue-2720
...
Add a hint for resizing Body of scaled Sprites
2016-09-07 23:27:34 +01:00
James
42ca43d98c
updated docs on Arcade body's setSize
2016-08-30 17:08:25 -05:00
samme
792ae127bf
Add a hint for resizing Body of scaled Sprites
2016-08-29 12:50:05 -07:00
samme
b05becf962
Correct docs:
...
* `angularAcceleration`, `angularDrag`, and `angularVelocity` are measured in degrees.
* `angle` describes `velocity` and is unrelated to angular motion
2016-08-22 12:05:12 -07:00
photonstorm
11b0436a26
Fixed Arcade Physics Circle body collision, after the #2654 change broke it unintentionally.
2016-08-22 16:23:22 +01:00
photonstorm
7b9c4114b2
Preparing for 2.6.2 release.
2016-08-22 12:31:02 +01:00
Richard Davey
19342fa3af
ArcadePhysics Body.rotation now reads its initial value from sprite.angle instead of sprite.rotation. The property was immediately replaced with the correct value in Body.preUpdate regardless, but it keeps it consistent (thanks @samme #2708 )
2016-08-21 10:27:58 +01:00
Richard Davey
9654a4b3c5
Consolidating Layers into View class.
2016-07-25 01:39:46 +01:00
Richard Davey
6947057427
The property checkCollision.none
in the ArcadePhysics.Body class was available, but never used internally. It is now used and checked by the separate
method. By setting checkCollision.none = true
you can disable all collision and overlap checks on a Body, but still retain its motion updates (thanks @samme #2661 )
2016-07-23 10:01:38 +01:00
Richard Davey
46c20ab00a
The property checkCollision.none
has been removed from the ArcadePhysics.Body class. It was never used internally, so lead to confusion about its use. To disable a body, use body.enable = false
(thanks @samme #2661 )
2016-07-23 09:43:01 +01:00
photonstorm
3ba00bbf2d
Loads of work on tilemap collision, and offset support. You can now collide with a tilemap no matter where it is on the screen, or which layer it's from.
2016-07-22 17:02:10 +01:00
photonstorm
0e25c5acac
Revert getTiles call.
2016-07-22 14:08:54 +01:00
Richard Davey
d8560eb3bc
Fixed Tilemap collision.
2016-07-22 04:32:56 +01:00
Leopoldo Brines
18472f5998
Fix 'TypeError: target.center is undefined'
2016-07-20 18:34:02 -04:00
Boniatillo.com
3d1b10c310
jsdoc fix: replace #onTop for #onCeiling
...
Modified the jsdoc of Phaser.Arcade.Body.onCeiling, by replacing the #onTop reference for #onCeiling.
2016-07-19 08:32:34 -04:00
photonstorm
ac2516f5aa
2.6.1 Release.
2016-07-11 10:07:56 +01:00
Richard Davey
cfb2b813ef
Fixed Uncaught TypeError: Cannot set property 'x' of undefined
in Body.js (thanks @ErwanErwan #2607 )
2016-07-08 18:54:00 +01:00
photonstorm
dfd9203e0a
onWorldBounds now sends the bounds it collided with.
2016-07-08 11:28:45 +01:00
Richard Davey
c0ba439e82
ArcadePhysics.Body.onCollide is a new Signal that is dispatched whenever the Body collides with another Body. Due to the potentially high volume of signals this could create it is disabled by default. To use this feature set this property to a Phaser.Signal: sprite.body.onCollide = new Phaser.Signal()
and it will be called when a collision happens, passing two arguments: the sprites which collided.
...
ArcadePhysics.Body.onOverlap is a new Signal that is dispatched whenever the Body overlaps with another Body. Due to the potentially high volume of signals this could create it is disabled by default. To use this feature set this property to a Phaser.Signal: `sprite.body.onOverlap = new Phaser.Signal()` and it will be called when an overlap happens, passing two arguments: the sprites which collided.
2016-07-07 23:16:18 +01:00
Richard Davey
6ba3c9401f
ArcadePhysics.Body.setCircle is a new method that allows you to define an Arcade Physics Body as being a circle instead of a rectangle. You can control the radius of the body and the offset from the parent sprite.
...
ArcadePhysics.World.separateCircle is a new method that handles all circular body collisions internally within Arcade Physics (thanks @VitaZheltyakov)
All of the Arcade Physics internal methods, such as `collideGroupVsSelf`, `collideSpriteVsSprite` and so on, have been updated to work with circular body shapes (thanks @VitaZheltyakov)
ArcadePhysics.Body.onWorldBounds is a new Signal that is dispatched whenever the Body collides with the world bounds, something that was previously difficult to detect. Due to the potentially high volume of signals this could create it is disabled by default. To use this feature set this property to a Phaser.Signal: `sprite.body.onWorldBounds = new Phaser.Signal()` and it will be called when a collision happens, passing one argument: the sprite on which it occurred.
2016-07-07 21:58:39 +01:00
photonstorm
261155a683
Merged the arcade-circles branch back into 2.6 and tidied up lots of the source code. Needs checking as not working properly with rect vs. circle, but fine with circle vs. circle.
2016-07-07 16:45:10 +01:00
photonstorm
4da3b15ae2
Renamed alignTo to alignIn, and added the new method alignTo, to allow for Sprite to Sprite alignment. Updated all of the Bounds and TS defs.
2016-06-16 17:01:51 +01:00
Richard Davey
70be74cb36
Lots of work on Body.moveTo and Body.moveFrom. Now working nicely.
2016-06-15 04:12:47 +01:00
Richard Davey
b5cc01132c
Body.move tests.
2016-06-14 23:45:00 +01:00
Richard Davey
1daf897b23
Small styling fixes.
2016-06-09 23:27:19 +01:00
Upperfoot
bab2fac729
Resolved issue with tilemapLayer collision.
2016-06-08 23:52:56 +01:00
Craig Whiteside
212a07b9ac
Fixed problem with missing parameter in tileCheckX and tileCheckY.
2016-06-07 14:00:34 +01:00
Craig Whiteside
7a1667fa7e
Fixed typo on collision for TileMapLayers (lesson to triple check your code...)
2016-06-06 15:43:51 +01:00
Richard Davey
05ca827c2b
Merge pull request #2522 from Upperfoot/master
...
Fixing tileMap collision when tileMapLayer is set to a position other than 0,0
2016-06-03 12:45:37 +01:00
photonstorm
a81fe3cf02
jshint fixes.
2016-06-02 15:38:05 +01:00
Vitaliy
cd3742f9f2
Corrected intersects fuction
...
Added protection against incorrect handling collisions. Clashes with the body itself will not be processed.
2016-05-31 01:18:17 +03:00
photonstorm
c1c2e6bc9d
Removed left-over Body.isCircle checks.
2016-05-23 23:02:04 +01:00
photonstorm
e974ff4ee9
Removed Circle functions and updated setSize docs.
2016-05-23 13:16:21 +01:00
photonstorm
16e9acac84
Updated Body.reset call.
2016-05-23 12:54:41 +01:00
photonstorm
09dd84565e
Arcade Physics Body incorrectly positioned if the Sprite had a negative scale (see http://www.html5gamedevs.com/topic/22695-247-248-body-anchoring-any-migration-tips/ ) (thanks @SBCGames @icameron @Nuuf @EvolViper #2488 #2490 )
2016-05-23 12:46:01 +01:00
Upperfoot
4a3e8f2b4a
Take into consideration Tilemap position into collision
2016-05-19 11:06:49 +01:00
photonstorm
7018ca2132
Position in Body.reset #2470
2016-05-16 15:20:44 +01:00
photonstorm
ac89d1aec7
Arcade Physics Body has a new property worldBounce
. This controls the elasticity of the Body specifically when colliding with the World bounds. By default this property is null
, in which case Body.bounce is used instead. Set this property to a Phaser.Point object in order to enable a World bounds specific bounce value (thanks @VitaZheltyakov #2465 )
2016-05-16 13:53:12 +01:00
photonstorm
f9994fac75
Fixed a bug in Arcade Physics Body.preUpdate which would incorrectly apply the position of an offset Body (one which has had Body.setSize used on it) when combined with a Sprite with a non-zero anchor (thanks @SBCGames #2470 )
2016-05-16 13:39:46 +01:00
photonstorm
19dce62734
Arcade Physics has had a new world
argument added to the following functions: distanceBetween
, distanceToXY
, distanceToPointer
, angleBetween
, angleToXY
and angleToPointer
. The argument (which is false by default), when enabled will calculate the angles or distances based on the Game Objects world
property, instead of its x
and y
properties. This allows it to work for objects that are placed in offset Groups, or are children of other display objects (thanks @Skeptron for the thread #2463 )
2016-05-16 13:31:57 +01:00
photonstorm
f494c867c7
Fixed an issue in the Arcade Physics overlap method where it would only detect overlaps up to the max bias threshold and no further (thanks @rgk #2441 )
...
The Arcade Physics overlap method would return false if two bodies were overlapping but neither had any velocity (i.e. they were embedded into each other)
2016-04-25 11:38:51 +01:00
photonstorm
41f81d39b7
jsdocs update (and removed isCircle switch)
2016-04-18 16:17:47 +01:00
photonstorm
ac4acfb912
Removed Arcade Physics Circle support (now in its own branch) ready for 2.4.7 release.
2016-04-14 13:23:28 +01:00
photonstorm
4d8753e9ce
Tidying up for 2.4.7.
2016-04-14 12:57:05 +01:00
photonstorm
aad499b025
Tidying up the code base for 2.4.7.
2016-04-14 12:43:10 +01:00
photonstorm
f4277efc20
Alternative snooker-ball like collision test.
2016-04-11 16:43:17 +01:00
photonstorm
3c4e63fda5
World.separateCircle is working with circle vs. circle bodies.
2016-04-08 03:37:49 +01:00
photonstorm
d009b8d769
Circle vs. Circle rebound code started.
2016-04-07 19:32:27 +01:00
photonstorm
cc5361dd6d
World.separate has been optimized to cut down on the number of calls to intersect
from 3 calls per Game Object collision check, to 2. So if you were colliding 50 sprites it will reduce the call count from 150 to 100 per frame. It also reduces the calls made to seperateX
and seperateY
by the same factor.
...
Two immovable bodies would never set their overlap data, even if an overlap only check was being made. As this is useful data to have this has been changed. Two immovable bodies will still never separate from each other, but they _will_ have their `overlapX` and `overlapY` properties calculated now.
2016-04-07 18:04:45 +01:00
photonstorm
50e126f59e
* Body has two new properties: left
and top
. These are the same as Body.x
and Body.y
but allow you to pass the Body to geometry level functions such as Circle.contains.
...
* Body.setCircle allows you to define a Body as using a circle to collide with instead of a rectangle. You can set the radius of the collision circle and an offset.
* Body.render now renders both circle and rectangle body shapes to the Debug canvas.
* World.intersects has been updated to support both circle and rectangle body shapes, and supports quick-paths for circle vs. circle and rect vs. rect checks.
* World.circleBodyIntersects is a new method that checks for intersection between a Body that has been defined as a circle, and a normal rectangle based Body. This is used internally by World.intersects, but exposed for direct calls as well.
2016-04-07 17:01:16 +01:00
photonstorm
952b5c04ea
The start of Arcade Physics circle bodies.
2016-04-07 14:32:53 +01:00
photonstorm
6933b41e6f
Arcade.Body's speed property was only set when the body moved, it now updates regardless (thanks @mark-henry #2417 )
2016-04-05 23:06:57 +01:00
photonstorm
f40cfbe2ae
2015 - 2016.
2016-04-04 22:16:16 +01:00
Richard Davey
5801f1aa15
jshint fixes.
2016-02-04 23:39:58 +00:00
photonstorm
a7c360425f
Tidying up code and docs.
2016-02-04 16:23:40 +00:00
Richard Davey
a8b04c4bf1
Merge pull request #2171 from mattrick16/dev
...
Add method to angle Display Objects relative to world
2016-02-04 18:21:14 +02:00
Richard Davey
8e6b88cda8
Merge pull request #2172 from jonjanisch/dev
...
Inconsistency in arcade.collide processCallback param order #667
2016-02-02 17:39:46 +02:00
Richard Davey
6a50e18bf0
Merge pull request #1610 from yigitozdemir/dev
...
On Ceiling Method Addition
2016-02-01 21:14:12 +02:00
Jonathan Janisch
24c85dbb35
Inconsistency in arcade.collide processCallback param order #667
2015-10-27 23:48:14 -04:00
mattrick
8843a4ad09
Add worldAngleToPointer
2015-10-27 16:55:23 -07:00
photonstorm
486c15f16f
New docs.
2015-08-24 15:43:45 +01:00
Richard Davey
a56cd31638
jsdoc updates.
2015-07-31 18:39:37 +01:00
photonstorm
858ad51610
Phaser 2.4 release.
2015-07-22 15:31:30 +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
Casey Clyde
e935df328d
Sprite vs Tilemap can now check for overlap, without trying to separate
2015-05-23 22:39:12 -07:00
photonstorm
19f8a7316e
ArcadePhysics.Body.syncBounds is a new property that if true forces the Body to check itself against the Sprite.getBounds() dimensions and adjust its width and height accordingly. If false it will compare its dimensions against the Sprite scale instead, and adjust its width height if the scale has changed. Typically you would need to enable syncBounds
if your sprite is the child of a responsive display object such as a FlexLayer, or in any situation where the sprite scale doesn't change, but its parents scale is effecting the dimensions regardless.
2015-04-29 13:13:26 +01:00
photonstorm
432516fa0f
Physics.Arcade.sort has a new property 'sortDirection'. If not specified it will use World.sortDirection. If the Group given as the first parameter has its physicsSortDirection
property set that will override any other setting.
...
Physics.Arcade.sort now calls one of four functions: sortLeftRight, sortRightLeft, sortTopBottom and sortBottomTop. Each of which takes 2 Sprites as arguments.
Physics.Arcade.sort now doesn't bail out if the Group contains a mixture of physics and non-physics enabled objects, as the Group hash is now only ever populated with physics enabled objects. Also the sort comparison functions no longer return -1 if the bodies are invalid, but zero instead (#1721 )
2015-04-13 16:29:34 +01:00
photonstorm
35bfe5fb2a
Body.destroy now automatically calls Group.removeFromHash
.
2015-04-13 16:27:43 +01:00
photonstorm
77eaa7e707
Optimised World.collideHandler and added SORT_NONE option.
2015-03-23 15:05:57 +00:00
photonstorm
b07ce89236
sourceWidth / Height now only set from the texture if the object has a texture.
2015-03-23 15:05:39 +00:00
photonstorm
3f30a3d0d2
jsdocs updates.
2015-03-23 10:11:39 +00:00
breakosaur
bb600b4319
Fixed a few documentation typos.
2015-03-18 21:07:36 +00:00
photonstorm
2483cd5df4
Various readonly Body properties flagged as 'readonly' in the jsdocs ( #1643 )
2015-02-26 23:32:14 +00:00