ich versuche seit ein paar Stunden Flappy Bird in Python, als erstes Spiele-Projekt umzusetzen.
Das ganze Funktioniert soweit sehr gut, leider habe ich jedoch das Problem, dass es beim erstellen der Röhren entweder nur gleiche Abstände gibt, oder durch die Nutzung von Randint ganz wirre Abstände erstellt werden, also so, dass sie sich dauerhaft verändern.
Meine Frage an der Stelle, hat jemand eine Idee wie man das so umsetzten kann das die Röhren unterschiedliche Abstände haben und sich nicht bewegen?
Hier ein bisschen vom Code:
Code: Alles auswählen
x = 250
y = 500
bx = int(x/2)
by = int(y/2)
brad = 5
swidth = 15
sx = 250
sy = 500
sy_oben = 0
sheight = -100
sdepht = 100
leben = 5
pygame.init()
screen = pygame.display.set_mode([x, y])
screen.fill((0,0,0))
pygame.draw.circle(screen, (255,255,0), (bx, by), brad, 0)
pygame.draw.rect(screen, (255,40,0), (sx,sy, swidth, sheight), 0)
pygame.draw.rect(screen, (255,40,0),(sx,sy_oben, swidth, sdepht), 0)
#Diverse Funktionen
pygame.display.flip()
while leben > 0:
for event in pygame.event.get():
if event.type == pygame.QUIT: sys.exit()
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_UP:
by -= 40
screen.fill((0,0,0))
move_bird()
move_tube()
check()
pygame.draw.circle(screen, (255,255,0), (bx, by), brad, 0)
pygame.draw.rect(screen, (255,40,0), (sx,sy, swidth, sheight), 0)
pygame.draw.rect(screen, (255,40,0),(sx,sy_oben, swidth, sdepht), 0)
for i in range(0, 100):
check()
pygame.draw.rect(screen, (255,40,0), (sx+i*100, sy, swidth, sheight), 0)
pygame.draw.rect(screen, (255,40,0),(sx+i*100,sy_oben, swidth, sdepht), 0)
pygame.display.flip()
Vielen Dank und noch einen schönen Abend
Tom
PS: Es geht um den y-Abstand (auf der y_Achse von pygame).