From 6f0a7458deb6bf3266b0b848432345ad200cb626 Mon Sep 17 00:00:00 2001 From: Megamichi Date: Mon, 22 Jan 2024 16:47:39 +0100 Subject: [PATCH] kopaktibel --- README.md | 17 -------- first.py | 114 ------------------------------------------------------ 2 files changed, 131 deletions(-) delete mode 100644 README.md delete mode 100755 first.py diff --git a/README.md b/README.md deleted file mode 100644 index 043e7a3..0000000 --- a/README.md +++ /dev/null @@ -1,17 +0,0 @@ -# DVD Screensaver ---- -Ne kleine Nachprogrammierung des bekannten Bildschirmschoners - -## Module: -- Pygame - -## Tasten - -- [PLUS] Neue DVD -- [MINUS] Lösche DVD -- [UP] Schneller -- [DOWN] Langsammer -- [LEFT] DVDs Kleiner -- [RIGHT] DVDs Größer -- [F] Vollbild -- [D] Debug Infos \ No newline at end of file diff --git a/first.py b/first.py deleted file mode 100755 index ab13a39..0000000 --- a/first.py +++ /dev/null @@ -1,114 +0,0 @@ -#usr//bin/python3 -import pygame -from random import randint as ri -def scale(vaktor): - scaledx = dvdsize[0]*vaktor - scaledy = dvdsize[1]*vaktor - return (scaledx,scaledy) -pygame.init() -default_font = pygame.font.SysFont("sans", 14) - -is_fullscreen = False -fill_screen = True -show_debug = False -screen = pygame.display.set_mode((0,0),pygame.FULLSCREEN) -pygame.display.set_caption("Screensaver") -screensize = pygame.display.get_window_size() - -clock = pygame.time.Clock() - -dvd = pygame.image.load("dvd-logo.png") -dvdsize = dvd.get_size() - -dvdscale = 1 -dvdscalesize = scale(dvdscale) -dvdscaled = pygame.transform.scale(dvd,dvdscalesize) -dvdpos = ri(0,screensize[0]-dvdsize[0]),ri(0,screensize[1]-dvdsize[1]) -dvdspeed = 3 - -richtung = ["r","u"] -def randcolor(): - return (ri(0,255),ri(0,255),ri(0,255)) - -def moving(richtung,dvdpos): - dvdx,dvdy = dvdpos - if richtung[0] == "r": - dvdx += dvdspeed - else: - dvdx -= dvdspeed - if richtung[1] =="u": - dvdy += dvdspeed - else: - dvdy -= dvdspeed - return dvdx,dvdy - -def toggle_fullscreen(is_fullscreen): - if is_fullscreen: - pygame.display.set_mode((600,500),pygame.RESIZABLE) - else: - pygame.display.set_mode((0,0),pygame.FULLSCREEN) - is_fullscreen = not is_fullscreen - return is_fullscreen,pygame.display.get_window_size() - -def get_debug_text(): - debug_text = "" - for index,a in enumerate(globals()): - debug_text = default_font.render(f"{str(a)} = {globals()[a]}", True, (240, 240, 240)) - screen.blit(debug_text,(0,index*default_font.get_height())) - -running = True -if __name__ == "__main__": - color = randcolor() - while running: - if fill_screen: - screen.fill((0,0,0)) - pressed_keys = pygame.key.get_pressed() - - if pressed_keys[pygame.K_ESCAPE]: - exit() - if pressed_keys[pygame.K_SPACE] and not preview_pressed_keys[pygame.K_SPACE]: - fill_screen = not fill_screen - if pressed_keys[pygame.K_d] and not preview_pressed_keys[pygame.K_d]: - show_debug = not show_debug - if pressed_keys[pygame.K_f] and screen.get_size(): - is_fullscreen,screensize = toggle_fullscreen(is_fullscreen) - if pressed_keys[pygame.K_UP] and dvdspeed>=0: - dvdspeed += 1 - if pressed_keys[pygame.K_DOWN] and dvdspeed>=1: - dvdspeed -= 1 - if pressed_keys[pygame.K_RIGHT] and dvdscale>0.1: - dvdscale += 0.1 - dvdscalesize = scale(dvdscale) - if pressed_keys[pygame.K_LEFT] and dvdscale>=0.2: - dvdscale -= 0.1 - dvdscalesize = scale(dvdscale) - - preview_pressed_keys = pressed_keys - - for event in pygame.event.get(): - if event.type == pygame.QUIT: - exit() - if event.type == pygame.WINDOWRESIZED: - screensize = pygame.display.get_window_size() - - if dvdpos[0]+dvdscalesize[0] >= screensize[0]: - richtung[0] = "l" - color = randcolor() - if dvdpos[0] <= 0: - richtung[0] = "r" - color = randcolor() - if dvdpos[1]+dvdscalesize[1] >= screensize[1]: - richtung[1] = "o" - color = randcolor() - if dvdpos[1] <= 0: - richtung[1] = "u" - color = randcolor() - - dvdpos = moving(richtung,dvdpos) - pygame.draw.rect(screen,color,(dvdpos[0],dvdpos[1],dvdscalesize[0],dvdscalesize[1])) - dvdscaled = pygame.transform.scale(dvd,dvdscalesize) - screen.blit(dvdscaled,dvdpos) - if show_debug: - get_debug_text() - pygame.display.flip() - clock.tick(60) \ No newline at end of file