import pygame def alusta(): """ Alustaa pygame ikkunan ja palauttaa näyttöolion """ pygame.init() naytto = pygame.display.set_mode((640, 480)) return naytto naytto = alusta() # Ufon aloituskoordinaatit ufo_x = 0 ufo_y = 0 # Reunojen koordinaatit YLAREUNA = 0 VASEN_REUNA = 0 OIKEA_REUNA = 490 ALAREUNA = 400 # Liikkeen nopeus NOPEUS = 2 # ufo ufo = pygame.image.load("ufo.png") # alustetaan ajastin ajastin = pygame.time.Clock() # Pygamen pääsilmukka, jossa odotetaan ikkunan sulkeutumista while True: for tapahtuma in pygame.event.get(): if tapahtuma.type == pygame.QUIT: exit() # mitä nappuloita on nyt pohjassa? painetut_nappulat = pygame.key.get_pressed() if painetut_nappulat[pygame.K_LEFT]: ufo_x -= NOPEUS if painetut_nappulat[pygame.K_RIGHT]: ufo_x += NOPEUS if painetut_nappulat[pygame.K_DOWN]: ufo_y += NOPEUS if painetut_nappulat[pygame.K_UP]: ufo_y -= NOPEUS # Tarkistetaan, ettei mennyt reunasta yli if ufo_x < VASEN_REUNA: ufo_x = VASEN_REUNA if ufo_x > OIKEA_REUNA: ufo_x = OIKEA_REUNA if ufo_y < YLAREUNA: ufo_y = YLAREUNA if ufo_y > ALAREUNA: ufo_y = ALAREUNA # Piirretään ufo nykyiseen paikkaan naytto.fill((0,0,0)) naytto.blit(ufo, (ufo_x, ufo_y)) pygame.display.flip() # Odotetaan hetki ajastin.tick(500)