diff --git a/Car.py b/Car.py index 0399e26..e894047 100644 --- a/Car.py +++ b/Car.py @@ -30,7 +30,12 @@ class Car: conn=r.getConnections(rn)[0] # Si il trouve pas de connection c'est la merde edge=self.map.getLane(conn.getViaLaneID()).getEdge() self.route.append(edge) - + + secEdge=edge.getConnections(rn)[0].getViaLaneID() # Parfois je sais pas pourquoi il coupe les edges internes, mais il marque quand même la connection, ducoup pour contourner + while secEdge!="": + edge=self.map.getLane(secEdge).getEdge() + self.route.append(edge) + secEdge=edge.getConnections(rn)[0].getViaLaneID() self.initPath() @@ -45,7 +50,7 @@ class Car: pg.draw.circle(self.surf,col,self.map.convertPos(self.pos),5) def conduite(self): - vmax=50 # vitesse max sur la route actuelle + vmax=100 # vitesse max sur la route actuelle vleader=vmax # vitesse de la voiture leader bleader=15 vbar=(self.v+vleader)/2 @@ -62,7 +67,7 @@ class Car: while(lgt>0): endPos=self.laneShape[self.laneInd+1] - l=math.dist(self.pos,self.laneShape[self.laneInd+1]) + l=math.dist(self.pos,endPos) if lgt>=l: lgt-=l pos=list(self.laneShape[-1])