pygame-color-test/colors/main.py

45 lines
1.1 KiB
Python
Raw Normal View History

2023-02-19 15:22:48 -05:00
import time
2023-02-19 14:19:43 -05:00
import pygame
def rainbow_spectrum(position):
relative_pos = position % 1530
red = max(0, min(255, 510 - relative_pos), min(255, relative_pos - 1020))
green = max(0, min(255, relative_pos, 1020 - relative_pos))
blue = max(0, min(255, relative_pos - 510, 1530 - relative_pos))
return red, green, blue
def main():
pygame.init()
clock = pygame.time.Clock()
2023-02-19 14:21:24 -05:00
window = pygame.display.set_mode((720, 720), pygame.FULLSCREEN)
2023-02-19 14:19:43 -05:00
rainbow_pos = 0
2023-02-19 15:22:48 -05:00
window.fill((0, 0, 0))
pygame.draw.line(window, (255, 255, 255), (0, 0), (720, 720), 25)
pygame.draw.line(window, (255, 255, 255), (0, 720), (720, 0), 25)
2023-02-19 15:22:48 -05:00
pygame.display.flip()
time.sleep(2)
2023-02-19 15:22:48 -05:00
2023-02-19 14:19:43 -05:00
running = True
while running:
clock.tick(60)
2023-02-19 14:37:27 -05:00
pygame.mouse.set_visible(False)
2023-02-19 14:39:25 -05:00
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
if event.type == pygame.MOUSEBUTTONDOWN:
2023-02-19 14:19:43 -05:00
running = False
rainbow_pos %= 1530
window.fill(rainbow_spectrum(rainbow_pos))
rainbow_pos += 4
pygame.display.flip()
pygame.quit()