import pygame
import random
pygame.init()
SCREEN_W = 800
SCREEN_H = 600
screen=pygame.display.set_mode((SCREEN_W,SCREEN_H))
background = pygame.surface.Surface((SCREEN_W,SCREEN_H))
background.fill(pygame.color.Color(190,200,230))
clock=pygame.time.Clock()

def load_image(img_path,size):
    image=pygame.image.load(img_path)
    surface=image.convert_alpha()
    surface=pygame.transform.scale(surface,size)
    return surface
def limit_pos(pos: list):
    x, y = pos
    
    x = min(SCREEN_W, max(0, x))
    y = min(SCREEN_W, max(0, y))
    return [x, y]
player=load_image("obrazy/postac.png",(100,100))
player_pos=[SCREEN_W/2,SCREEN_H/2]
tnt=load_image("obrazy/tnt.png",(100,100))
pygame.time.set_timer(pygame.USEREVENT, 1000)
tnt_list = []
tnt_pos_list = []

running=True
while running:
    for event in pygame.event.get():
        if event.type==pygame.QUIT:
            running=False
        if event.type==pygame.USEREVENT:
            x = random.randint(0, SCREEN_W)
            y = random.randint(0, SCREEN_H)
            tnt_list.append(tnt.copy())
            tnt_pos_list.append([x,y])
    player_speed=10
    
    keys=pygame.key.get_pressed()
    if keys[pygame.K_w]:
        player_pos[1]-=player_speed
    if keys[pygame.K_s]:
        player_pos[1]+=player_speed
    if keys[pygame.K_a]:
        player_pos[0]-=player_speed
    if keys[pygame.K_d]:
        player_pos[0]+=player_speed
    player_pos = limit_pos(player_pos)


    screen.blit(background,(0, 0))
    screen.blit(player,player.get_rect(center=player_pos))
    for tnt, tnt_pos in zip(tnt_list, tnt_pos_list):
        screen.blit(tnt, tnt_pos)
    for tnt, tnt_pos in zip(tnt_list, tnt_pos_list):
        player_rect = player.get_rect(center=player_pos)
        tnt_rect = tnt.get_rect()
        collide = player.colliderect(tnt)
        print(collide)
    pygame.display.update()
    clock.tick(60)
pygame.quit()