-
-
Notifications
You must be signed in to change notification settings - Fork 516
Fixed issues with moving platforms #1514
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Wasn't "slightly above ground" there for jump buffering?? Jump buffering is a really great feature and the game would play much much worse without it. |
Does jump buffering have to do with being able to press "jump" while still in the air, and jump when on the ground ? If so, I just tested it, and it still works. |
I tested it as well, and it works properly still. Thank you, just making sure :-) |
77aff8c
to
0be76d4
Compare
The slightly_above_ground method actually never returned true, even when tested for the issue it was initially supposed to fix (and made no difference). It was probably fixed elsewhere.
* Always detect a collision with unisolid when a object is exactly next to it (e.g. standing on top of it) * Recursively apply movement to objects stacked on top of each other
0be76d4
to
586af56
Compare
Yay, finally! :D |
Don't merge yet, I found a bug that only occurs on this branch (which means it's a regression). The bug : objects stacked on top of each other slowly move into the ground and eventually fall off the screen. |
@@ -45,6 +47,11 @@ class CollisionSystem final | |||
case (or not). */ | |||
void update(); | |||
|
|||
const std::shared_ptr<CollisionGroundMovementManager>& get_ground_movement_manager() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this method can be marked const
Any intention to still work on this? It would be nice if it was implemented, once the bug(s) were resolved at least. |
Yes. |
Almost done! |
…acked over one another)
FINALLY! |
Thank you very much for this. This issue has bugged us for such a long time. I will review your code this evening and then merge it once all is good. :) |
Hurray! Thanks so much for your contribution! |
There seems to be a bug where Tux can no longer ride on sideways-facing ice crushers anymore, as he just slips off of them weirdly. |
As of f67974b, he can ride on "recovering" crushers but not on "crushing" crushers (i.e. in "crushing" mode). I'll fix this. BTW can someone help me diagnose why the "bsd-solaris" check failed ? |
Seems to be an intermittent failure. I've re-triggered the builds. |
Thank you very much for this 🎉 I'm merging it. 🥳 |
Addresses #401 and #1389.
When an object is on top of a moving static object (e.g. platform) or a tilemap, every movement made by the static object (or tilemap) is also applied to all objects standing on top of it.
Also, easing works much better.
Here are a few examples: