Making of LLemMings

Collision fuzziness

ChatGPT: Prompt tweak. And I spot undocumented human cheats!

>>> Prompt:
...
so there should be some fuzziness in the collision, it only stops when it runs into a tall obstacle.
If it falls into something on the y axis it should stop failling and start walking on the x axis.
If it falls into the water or went outside of canvas, the lemming is dead. Remember to check against
canvas bounds so that we don't try to get pixel data that does not exist.

Updates should be done every frame. There will eventually be many lemmings, so do note that they are
not controlled by keys, they move by themselves and is constrained by the collision rules outlined above.

It is important that you use the declared things I mentioned above. Just give me the code with
minor comments and be brief, don't explain anything with plain text.
...