Hi there,
As my apprenticeship slowly winds down and comes to an end, I have found the time again to work on “Pituicat”. This time I tackled the problem of interacting with movable objects. This was all possible due to the friendly Haskell GameDev community on Discord, which gave me valuable hints here and there, when I needed them.
This meant another rework on the collision handling side of the code, so I had to break the collectible powerups, but I hope to get them back shortly.
Also I changed the way player movement is handled. I used to apply the move velocity as a physical velocity before doing collision checks, which tended to backfire and cause random breakage and unforeseen behaviour, especially when applying velocity updates after collision. Then just shortly I got the valuable hint, that player movement should not be really applied as a physical force but rather “hacked in”. This I managed to do, which now saves me a lot of headache when updating the player’s velocity.
I rendered a short Video of some interaction between the player and placed objects on the map. Vertical interactions work well, as you can see, but horizontal still need work, which is why I chose to ommit them here.
I am quite happy to make progress on this project, no matter how small that progress seems to be.
As always, you can look into the code and game design documents in the project’s gitea repository.
I wish you all a pleasant sommer. Don’t melt.
Keep calm and wash hands.