class car: accelmult = 1 dirmult = 0.1 def __init__(self,codes): self.fitness = 0 self.active = True self.positionx = 20 self.positiony = 300 self.speed=0 self.direction=0 self.algo = Algorithm(codes) def draw(self): pass def update(self,obstacles): x = 0 y = 0 min = 2000 for z in obstacles: temp = z.distance() if temp<min: x = z.horizontal y = z.vertical min = temp inputs = [] inputs.append(self.positionx) inputs.append(self.positiony) inputs.append(self.direction) inputs.append(self.speed) inputs.append(x) inputs.append(y) self.algo.update(inputs) self.speed += accelmult * self.algo.getAccel() self.direction += dirmult * self.algo.getDir() self.positionx += self.speed * math.sin(self.direction) self.positiony += self.speed * math.cos(self.direction) def checkcollision(self,obs): return obs.distance(self.positionx,self.positiony) < obs.radius def getCodes(self): return self.algo.getCodes()