Very buggy collision detection and handling