Commit graph

632 commits

Author SHA1 Message Date
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
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