Use do-undo in botMove method