added collision, not perfect but pretty neat