corrigir apresentação do mapa quando é usado outros tamanhos

This commit is contained in:
2026-04-03 00:33:05 +01:00
parent 60f9c2af13
commit c9c015e15b

View File

@ -40,11 +40,11 @@ class Frame:
def criarFrames(janela_app: pg.Surface) -> tuple[Frame, Frame, Frame, Frame]: def criarFrames(janela_app: pg.Surface) -> tuple[Frame, Frame, Frame, Frame]:
frm_mapa = Frame( frm_mapa = Frame(
( (
janela_app.get_size()[1] - (sep_janelas) * 2, janela_app.get_size()[1] - (sep_janelas * 2),
janela_app.get_size()[1] - (sep_janelas * 2), janela_app.get_size()[1] - (sep_janelas * 2),
), ),
(sep_janelas, sep_janelas), (sep_janelas, sep_janelas),
pg.Color(0, 0, 0, 0), pg.Color(0, 0, 0),
) )
frm_info_mapa = Frame( frm_info_mapa = Frame(
( (
@ -52,7 +52,7 @@ def criarFrames(janela_app: pg.Surface) -> tuple[Frame, Frame, Frame, Frame]:
(janela_app.get_size()[1] - (sep_janelas * 2)) // 2, (janela_app.get_size()[1] - (sep_janelas * 2)) // 2,
), ),
(frm_mapa.tamanho[0] + (sep_janelas * 2), sep_janelas), (frm_mapa.tamanho[0] + (sep_janelas * 2), sep_janelas),
pg.Color(255, 255, 255, 0), pg.Color(255, 255, 255),
) )
frm_info_pos = Frame( frm_info_pos = Frame(
( (
@ -63,7 +63,7 @@ def criarFrames(janela_app: pg.Surface) -> tuple[Frame, Frame, Frame, Frame]:
frm_mapa.tamanho[0] + (sep_janelas * 2), frm_mapa.tamanho[0] + (sep_janelas * 2),
frm_info_mapa.tamanho[1] + (sep_janelas * 2), frm_info_mapa.tamanho[1] + (sep_janelas * 2),
), ),
pg.Color(255, 255, 255, 0), pg.Color(255, 255, 255),
) )
frm_accoes = Frame( frm_accoes = Frame(
( (
@ -77,7 +77,7 @@ def criarFrames(janela_app: pg.Surface) -> tuple[Frame, Frame, Frame, Frame]:
frm_mapa.tamanho[0] + 20, frm_mapa.tamanho[0] + 20,
frm_info_mapa.tamanho[1] + frm_info_pos.tamanho[1] + 30, frm_info_mapa.tamanho[1] + frm_info_pos.tamanho[1] + 30,
), ),
pg.Color(255, 255, 255, 0), pg.Color(255, 255, 255),
) )
return (frm_mapa, frm_info_mapa, frm_info_pos, frm_accoes) return (frm_mapa, frm_info_mapa, frm_info_pos, frm_accoes)
@ -100,7 +100,7 @@ def devolveCor(agente: Agente) -> tuple[int, int, int, int]:
def criarMapa(janela_app: pg.Surface, frame: Frame, mapa: Mapa) -> None: def criarMapa(janela_app: pg.Surface, frame: Frame, mapa: Mapa) -> None:
lado: int = (frame.tamanho[1] - (10 * 2)) // mapa.dimensao[0] lado: int = frame.tamanho[0] // mapa.dimensao[0]
for pos_y in range(0, mapa.dimensao[1]): for pos_y in range(0, mapa.dimensao[1]):
for pos_x in range(0, mapa.dimensao[0]): for pos_x in range(0, mapa.dimensao[0]):
agente: Agente | None = mapa.posicao((pos_x, pos_y)) agente: Agente | None = mapa.posicao((pos_x, pos_y))
@ -233,7 +233,7 @@ def main(mapa: Mapa | None, tamanho_mapa: tuple[int, int]):
# botao 1 do rato clicado, seleccionar ou tirar selecao # botao 1 do rato clicado, seleccionar ou tirar selecao
if pg.mouse.get_pressed(num_buttons=3)[0]: if pg.mouse.get_pressed(num_buttons=3)[0]:
pos_rato: tuple[int, int] = pg.mouse.get_pos() pos_rato: tuple[int, int] = pg.mouse.get_pos()
quadrado = (frm_mapa.tamanho[1] - 20) // mapa.dimensao[0] quadrado = frm_mapa.tamanho[0] // mapa.dimensao[0]
if pos_rato[0] < 10 or pos_rato[1] < 10: if pos_rato[0] < 10 or pos_rato[1] < 10:
continue continue
pos_x = (pos_rato[0] - 10) // quadrado pos_x = (pos_rato[0] - 10) // quadrado