Wow, that was quick. Thank you very much. I wouldn't come up with a solution in a week :)
Works great but, there is a small bug, if we clip the corner jump is one pixel higher then if we don't clip the corner.
Viewing post in Tile Based Moving Platform Engine for Gamemaker comments
I'm sorry, problem was with my modified collision code.
It works fine if I comment out this line:
if tilemap_get_at_pixel(global.map, bbox_left, bbox_top - 1) == VOID y -= 1;
Perhaps I had the problem because I don't use decimals.
I modified the collision code so it works nice without decimals so I get smooth movement.