Richard Davey
df0c76569f
Added world rebounds handler
2019-03-18 14:12:52 +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
2e63be9dd8
Added setWorldBlocked methods
2019-03-15 19:22:32 +00:00
Richard Davey
3e967ab300
Move sleep iterations to property and add wake method
2019-03-15 13:31:57 +00:00
Richard Davey
bdde075643
Implemented sleeping and much better debug drawing
2019-03-15 12:53:59 +00:00
Richard Davey
b635458ebb
More resting tests
2019-03-14 17:20:47 +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
dc31e39e01
Pushing to carry on debugging at home
2019-03-13 17: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
b228e23dfd
Added blocked debug
2019-03-11 17:28:43 +00:00
Richard Davey
59859e93a7
Reset velocity on world bounds and blocked by setting
2019-03-11 12:26:58 +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
e1f9e31e9f
Added setTouching and setBlocked methods + refactored the way world bounds collision is done
2019-03-08 20:10:49 +00:00
Richard Davey
0ee2442597
Bumping to 3.17.0
2019-03-07 12:31:06 +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
3bb73c5664
Fixed Group defs and completed Arcade Physics defs
2019-02-13 14:45:36 +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
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
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
96b9db5cb7
Merge pull request #4150 from samme/docs/misc
...
Docs updates
2018-11-20 10:45:54 +00: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
f26c869c61
Merge pull request #4069 from samme/feature/drawDebug
...
Use defaultStrokeWidth in Arcade.Body#drawDebug()
2018-10-19 13:27:45 +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
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
samme
5f4f5e6cfc
Merge branch 'master' into feature/arcade-group-config-enable
2018-09-29 14:07:09 -07:00
Richard Davey
37076516e2
Merge branch 'master' into docs/arcade-physics-2
2018-09-28 11:07:44 +01: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
2a51d6b70f
Arcade Physics docs revisions
2018-09-24 12:12:56 -07: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
00a31d2d88
Updated docs. Close #3997
2018-09-01 10:14:22 +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
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
3d23013b86
Body setSize changes to fix #3863 PR
2018-07-31 09:39:22 +01:00
tarsupin
79d64abaa3
Add spaces after ifs
2018-07-24 20:06:18 -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
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
586d1827e0
Removed dirty property, optimized update loop, refactored postUpdate for fixed time step
2018-06-01 19:18:40 +01:00
Richard Davey
de8462efed
Added default values and tidied up docs a little
2018-05-22 16:19:18 +01:00
samme
24efda7aca
Add allowDrag
, allowGravity
, allowRotation
to PhysicsGroup config
2018-05-16 10:36:23 -07:00
samme
a70fb6aee9
Add docs for Arcade Physics
2018-05-09 21:28:52 -07: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
orblazer
11845f9d6d
Fix "object" types on Physics and Math
2018-03-21 14:15:25 +01:00
orblazer
af3c03a3cb
Update JSDoc on "Arcade" physics
2018-03-19 00:29:46 +01: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
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
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
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
d1f5f8a82b
Added jsdocs
2018-02-12 16:01:21 +00:00
Richard Davey
e0899bfa00
Added jsdocs
2018-02-09 03:44:23 +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
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
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
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
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
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
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
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
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
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
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