class BobClient(LiacBot): def __init__(self, my_team, addr_server, port_server): self.name= 'Bob' if my_team == 'white': self.my_team = 1 else : self.my_team = -1 self.ip = addr_server self.port = int(port_server) self.move_tree = None super(BobClient, self).__init__() def on_move(self, state): t_zero = time.time() print 'Generating a move...', board = BitBoard(state=state, my_team=self.my_team) if self.move_tree != None: self.move_tree = self.move_tree.get_right_child(bitboard=board) if self.move_tree == None: ''' Construct the first instance ''' self.move_tree = MoveTree(bitboard=board) self.move_tree.root_build_children(t_zero) self.move_tree = self.move_tree.get_best_move() self.send_move(self.move_tree.move.pos_init, self.move_tree.move.pos_final) ''' Temporarly ''' print str(self.move_tree.move.pos_init) + ", " + str(self.move_tree.move.pos_final) # self.move_tree = None def on_game_over(self, state): print "Game Over" sys.exit() def start(self): print "Bob is connecting to " + self.ip + ":" + str(self.port) super(BobClient, self).start()
def moveTreeTest(): print 'Creating Move Tree' mt = MoveTree.Tree('Variations.sgf') # mt.head.acceptVisitor(MoveTree.nodeVisitor()) current = mt.head.getChild(0) current = current.getChild(0) current = current.getChild(0) current.nodePrint() mt.acceptVisitor(stateVisitor()) mt.acceptVisitor(MoveTree.nodeVisitor())
def on_move(self, state): t_zero = time.time() print 'Generating a move...', board = BitBoard(state=state, my_team=self.my_team) if self.move_tree != None: self.move_tree = self.move_tree.get_right_child(bitboard=board) if self.move_tree == None: ''' Construct the first instance ''' self.move_tree = MoveTree(bitboard=board) self.move_tree.root_build_children(t_zero) self.move_tree = self.move_tree.get_best_move() self.send_move(self.move_tree.move.pos_init, self.move_tree.move.pos_final) ''' Temporarly ''' print str(self.move_tree.move.pos_init) + ", " + str(self.move_tree.move.pos_final)
def findnodeFrom(self,start,string): ts = MoveTree.textSearchVisitor(string) start.acceptVisitor(ts) return ts.getResult()