I spent weeks making a collision/physics system (though it's mostly collision)
if player is moving right
- check if player's destination collides with anything
-- if true, snap player just short of the collision
- if false
-- just move the player
etc
This method won't work if you move faster than the width of the collidable object (that's a whole other problem...)


