|
|
|
|
@ -9,20 +9,23 @@ class World:
|
|
|
|
|
def __init__(self, screen):
|
|
|
|
|
# Hindernisse
|
|
|
|
|
self.obstacles = []
|
|
|
|
|
obstacle_count = random.randint(4, 8)
|
|
|
|
|
min_distance = 800 # Mindestabstand zwischen Hindernissen
|
|
|
|
|
|
|
|
|
|
while len(self.obstacles) < obstacle_count:
|
|
|
|
|
while len(self.obstacles) < settings.world.obstacle.amount:
|
|
|
|
|
x = random.randint(500, 12500)
|
|
|
|
|
# Prüfen, ob der neue x weit genug entfernt ist von bestehenden Hindernissen
|
|
|
|
|
if all(abs(x - obs.rect.x) > min_distance for obs in self.obstacles):
|
|
|
|
|
if all(abs(x - obs.rect.x) > 800 for obs in self.obstacles):
|
|
|
|
|
self.obstacles.append(Obstacle(x, 500, settings.world.obstacle.box))
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# ITEMS
|
|
|
|
|
self.items = []
|
|
|
|
|
for _ in range(settings.world.items.amount): # Erzeuge 5 Items
|
|
|
|
|
item = Item()
|
|
|
|
|
self.items.append(item)
|
|
|
|
|
|
|
|
|
|
while len(self.items) < settings.world.items.amount:
|
|
|
|
|
x = random.randint(200, 12800)
|
|
|
|
|
y = random.randint(100, 500)
|
|
|
|
|
# Prüfen, ob der neue x weit genug entfernt ist von bestehenden Hindernissen
|
|
|
|
|
if all(abs(x - item.rect.x) > 200 for item in self.items):
|
|
|
|
|
self.items.append(Item(x, y))
|
|
|
|
|
|
|
|
|
|
# Welt Generierung
|
|
|
|
|
self.screen = screen
|
|
|
|
|
@ -54,7 +57,7 @@ class World:
|
|
|
|
|
# print(score)
|
|
|
|
|
if score != 0:
|
|
|
|
|
self.save_score += 10
|
|
|
|
|
print(self.save_score)
|
|
|
|
|
print(self.save_score) if settings.DEBUG else None
|
|
|
|
|
|
|
|
|
|
bg_offset = int(camera_offset * 0.3) # Parallax: langsamer bewegen
|
|
|
|
|
self.screen.blit(self.background, (-bg_offset, 0))
|
|
|
|
|
|