little tweaks, TBC
This commit is contained in:
14
main.py
14
main.py
@@ -31,7 +31,7 @@ class Car(pygame.sprite.Sprite):
|
||||
|
||||
self.rect = self.image.get_rect()
|
||||
self.rect.center = (75, GY -50)
|
||||
self.speed = 0.5
|
||||
self.speed = 1.5
|
||||
self.heading = 0
|
||||
self.heading_change = 0
|
||||
self.vision_length = VISION_LENGTH # line liength
|
||||
@@ -55,6 +55,7 @@ class Car(pygame.sprite.Sprite):
|
||||
|
||||
self.update_sensors()
|
||||
self.probe_brain()
|
||||
self.run = True
|
||||
|
||||
def update_sensors(self):
|
||||
center = self.rect.center
|
||||
@@ -87,6 +88,10 @@ class Car(pygame.sprite.Sprite):
|
||||
pygame.draw.circle(screen, (125,125,255), ip, 4, 2)
|
||||
dist = int(distance(ip,self.rect.center))
|
||||
self.probes[idx] = min(dist, self.probes[idx])
|
||||
if dist < 2 * self.speed or not self.speed :
|
||||
self.run = False
|
||||
print(f'Car {id(self)} crashed')
|
||||
|
||||
# else :
|
||||
# self.probes[idx] = self.vision_length * 2
|
||||
# print(self.probes)
|
||||
@@ -113,7 +118,7 @@ class Car(pygame.sprite.Sprite):
|
||||
)
|
||||
|
||||
if self.speed :
|
||||
self.heading += self.heading_change * 10 / self.speed
|
||||
self.heading += self.heading_change * 6 / self.speed
|
||||
self.heading = self.heading % 360
|
||||
|
||||
self.speed += self.throttle #THROTTLE_POWER
|
||||
@@ -150,7 +155,7 @@ map_lines = map1
|
||||
|
||||
all_cars = pygame.sprite.Group()
|
||||
|
||||
for x in range(1):
|
||||
for x in range(10):
|
||||
car = Car()
|
||||
car.heading = x * 30 + 35
|
||||
all_cars.add(car)
|
||||
@@ -158,12 +163,13 @@ for x in range(1):
|
||||
clock = pygame.time.Clock()
|
||||
while True :
|
||||
screen.fill(CELL_COLOR)
|
||||
all_cars.update()
|
||||
all_cars.draw(screen)
|
||||
for c in all_cars :
|
||||
c.show_features()
|
||||
if c.run :
|
||||
c.probe_lines_proximity(map_lines)
|
||||
c.probe_brain()
|
||||
c.update()
|
||||
|
||||
for line in map_lines :
|
||||
pygame.draw.line(screen, (255,255,255), line[0], line[1])
|
||||
|
||||
Reference in New Issue
Block a user