class Go(object): def main(self, selection, args=None): self.graphics = Graphics() try: self.graphics.start() while True: if selection == 'quit': break if selection == 'play': selection, args = self.playGame(args) if selection == 'game over': selection, args = self.gameOver(args) if selection == 'menu': selection, args = self.menu() finally: self.graphics.cleanUp() def playGame(self, args): board = Board(args) blackTurn = True message = '' passed = False while True: move = self.graphics.getTurn(board, blackTurn, message) if move == 'pass': if passed: return 'game over', board blackTurn = not blackTurn message = '' passed = True else: result = board.makeMove(move, blackTurn) if result == 'success': blackTurn = not blackTurn message = '' passed = False else: message = result def gameOver(self, args): return self.graphics.gameOver(args) def menu(self): return self.graphics.renderMenu()