Drive Cars Down A Hill Script -

# Main loop running = True while running: for event in pygame.event.get(): if event.type == pygame.QUIT: running = False if event.type == pygame.KEYDOWN: if event.key == pygame.K_SPACE: cars.append(Car(80, 480))

# Ground at bottom ground = pymunk.Segment(space.static_body, (0, HEIGHT-50), (WIDTH, HEIGHT-50), 5) ground.friction = 0.9 space.add(ground)

for i in range(len(hill_points)-1): segment = pymunk.Segment(space.static_body, hill_points[i], hill_points[i+1], 2) segment.friction = 0.8 segment.elasticity = 0.5 space.add(segment) drive cars down a hill script

def brake(self): # Simple damping self.body.velocity = self.body.velocity * 0.98

# Create cars cars = [Car(80, 480), Car(120, 460), Car(160, 435)] # Main loop running = True while running:

def drive_force(self): # Apply force along car's forward direction angle = self.body.angle force_magnitude = 20000 force = (force_magnitude * pygame.math.Vector2(1, 0).rotate_rad(angle).x, force_magnitude * pygame.math.Vector2(1, 0).rotate_rad(angle).y) self.body.apply_force_at_local_point(force, (0, 0))

# Step physics space.step(1/60.0)

pygame.display.flip() clock.tick(60)