Refactor to consistent end game