Seite 1 von 1

timer

Verfasst: Mittwoch 10. Februar 2021, 15:53
von Tim0123
Hey
kann man einen Timer machen der 2 Sekunden wartet und dann etwas macht ?

Re: timer

Verfasst: Mittwoch 10. Februar 2021, 16:08
von einfachTobi
Ja. Wenn es ungefähr 2 Sekunden sein dürfen, dann sogar sehr sehr simpel:

Code: Alles auswählen

import time

if __name__ == "__main__":
    print("start")
    time.sleep(2)
    print("etwas")

Re: timer

Verfasst: Mittwoch 10. Februar 2021, 16:16
von Tim0123
aber bei time.speep wird das ganze programm aufgehalten oder ? das heißt das der Hintergrund auch 2 Sekunden einfriert ich meine das das im Hintergrund laufen soll

Re: timer

Verfasst: Mittwoch 10. Februar 2021, 16:23
von Tim0123

Code: Alles auswählen

import pygame, sys

#bewegt den Hintergrund
def draw_bg():
    screen.blit(bg_surface, (bg_x_pos, 0))
    screen.blit(bg_surface, (bg_x_pos + 2000, 0))


pygame.init()

screen = pygame.display.set_mode((2000, 1300))
clock = pygame.time.Clock()
## TODO: Bild machen

#game variablen
bg_x_pos = 0
gravity = 0.25
zug_movement = 0
zug_kmh = 4

#Bilder initialisieren
bg_surface = pygame.image.load("assets/sprites/bg.png").convert_alpha()
zug_surface = pygame.image.load("assets/sprites/zug.png").convert_alpha()
zug_surface = pygame.transform.scale2x(zug_surface)
#rects
zug_rect = zug_surface.get_rect(center = (100, 950))



while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            pygame.quit()
            sys.exit()

        if event.type == pygame.KEYDOWN:
            #springen
            if event.key == pygame.K_SPACE:
                zug_movement = 0
                zug_movement -= 12

    if zug_rect.y < 950:
        gravity = 0
        d -= 1

    bg_x_pos -= 3
    #springen
    zug_rect.centery += zug_movement
    zug_movement += gravity
    draw_bg()
    if bg_x_pos <= -2000:
        bg_x_pos = 0

    #die Bilder auf den Bildschiem bringen

    screen.blit(zug_surface, zug_rect)

    pygame.display.update()
    #frames
    clock.tick(120)
das ist mein code und ich will einen Sprung machen können aber wenn ich ihn gerade mache dann fliegt er einfach nur hoch

Re: timer

Verfasst: Mittwoch 10. Februar 2021, 17:01
von Sirius3
Du mußt Dir einfach die Zeit merken und innerhalb der while-Schleife gegen die aktuelle Zeit prüfen und dann entsprechend reagieren.

Re: timer

Verfasst: Mittwoch 10. Februar 2021, 17:44
von Tim0123
versteh ich nich xDkönntest du mir ein code beispiel zeigen ? bin noch nicht so lange in python