Still broken, implementing 2D collisions