|  |  |  | @ -22,6 +22,7 @@ class Maneuver: | 
			
		
	
		
			
				
					|  |  |  |  |   initial_speed: float = 0.  # m/s | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |   _active: bool = False | 
			
		
	
		
			
				
					|  |  |  |  |   _prev_cruise_standstill: bool = False | 
			
		
	
		
			
				
					|  |  |  |  |   _finished: bool = False | 
			
		
	
		
			
				
					|  |  |  |  |   _action_index: int = 0 | 
			
		
	
		
			
				
					|  |  |  |  |   _action_frames: int = 0 | 
			
		
	
	
		
			
				
					|  |  |  | @ -32,11 +33,15 @@ class Maneuver: | 
			
		
	
		
			
				
					|  |  |  |  |     ready = abs(v_ego - self.initial_speed) < 0.3 and long_active and not cruise_standstill | 
			
		
	
		
			
				
					|  |  |  |  |     if self.initial_speed < 0.01: | 
			
		
	
		
			
				
					|  |  |  |  |       ready = ready and standstill | 
			
		
	
		
			
				
					|  |  |  |  |       if ready and self._prev_cruise_standstill: | 
			
		
	
		
			
				
					|  |  |  |  |         self._active = True | 
			
		
	
		
			
				
					|  |  |  |  |     self._ready_cnt = (self._ready_cnt + 1) if ready else 0 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     if self._ready_cnt > (3. / DT_MDL): | 
			
		
	
		
			
				
					|  |  |  |  |       self._active = True | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     self._prev_cruise_standstill = cruise_standstill | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     if not self._active: | 
			
		
	
		
			
				
					|  |  |  |  |       return min(max(self.initial_speed - v_ego, -2.), 2.) | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
	
		
			
				
					|  |  |  | 
 |