Beispiel #1
0
 def Update(self):
     source = self.vObjects[self.sourceIndex]
     
     self.targetIndex = random.choice(self.targets)
     self.targets.Remove(self.targetIndex)
     
     searchNetwork = geo.AStarMesh(self.mesh, self.sourceIndex, self.targetIndex)
     result, path = searchNetwork.AStarPathFinder() 
     
     if result:
         self.vObjects[self.targetIndex].d = len(path)
Beispiel #2
0
    def Update(self):
        source = self.vObjects[self.sourceIndex]
        while True:
            self.targetIndex = random.randint(0, len(self.mesh.Vertices))
            if self.targetIndex != self.sourceIndex: break

        searchNetwork = geo.AStarMesh(self.mesh, self.sourceIndex,
                                      self.targetIndex)
        result, path = searchNetwork.AStarPathFinder()
        listPts = []
        if result:
            for node in path:
                listPts.append(node.pos)
        self.path = listPts