import pygame

def load_image(img_path : str, position):
    imge = pygame.image.load(img_path)
    surface = imge.convert()

    transparent_color = (0,0,0)
    surface.set_colorkey(transparent_color)

    rect = surface.get_rect(center = position)

    return [imge, surface, rect]

def print_image(img_list, screen_surface) -> None:
    image , surface, rect = img_list
    screen_surface.blit(surface, rect)
    pass

def set_position_image(img_list, position, screen_surface):
    image, surface, rect = img_list
    rect = screen_surface.get_rect(center=position)
    return [image, surface, rect]

def calculate_movement(keys):
    speed = 10
    delta_x = 0
    delta_y = 0

    if keys[pygame.K_LSHIFT]:
        speed *= 2

    if keys[pygame.K_w]:
        delta_y -= speed
    if keys[pygame.K_s]:
        delta_y += speed
    if keys[pygame.K_d]:
        delta_x += speed
    if keys[pygame.K_a]:
        delta_x -= speed
    
    return [delta_x, delta_y]