From b32e1ea0969ae0e3e44c5414f967ea4a50715c56 Mon Sep 17 00:00:00 2001 From: Luis Rodrigues Date: Thu, 19 Mar 2026 12:55:38 +0000 Subject: [PATCH] =?UTF-8?q?criar=20excepcao=20quando=20=C3=A9=20passado=20?= =?UTF-8?q?mapa=20como=20None?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/gui.py | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/modules/gui.py b/modules/gui.py index 07b75e3..901149f 100644 --- a/modules/gui.py +++ b/modules/gui.py @@ -1,3 +1,4 @@ +from annotationlib import type_repr import sys import random from types import NoneType @@ -100,8 +101,8 @@ def mostrarMapa(mapa: Mapa | None) -> None: def main(mapa: Mapa | None, tamanho_mapa: tuple[int, int]): - if mapa is None: - print("SEM MAPA!!") + if isinstance(mapa, NoneType): + raise TypeError("não foi passado mapa (tipo None)") pg.init() janela = pg.display.set_mode((1280, 800), flags) pg.display.set_caption("Game Theory of Life") @@ -141,7 +142,13 @@ def main(mapa: Mapa | None, tamanho_mapa: tuple[int, int]): mapa = Mapa(tamanho_mapa) popularMapa(mapa) - # fazer interaccoes entre agentes + # interaccoes entre agentes + # primeiro criar um dicionario de interacções, atravessando todas as + # posicoes de mapa[i][j] e fazendo um hash com agente_actual.id e + # agente_vizinho.id (e seu inverso, para evitar interaccoes ja + # existentes no dicionario). adicionar essa interação se ainda não + # existir no dicionario. passar para proximo vizinho. passar para + # proxima posicao no mapa. criarTabuleiro(janela, mapa.dimensao, mapa) pg.display.flip() @@ -152,5 +159,5 @@ def main(mapa: Mapa | None, tamanho_mapa: tuple[int, int]): if __name__ == "__main__": - mapa_mundo: Mapa = Mapa((10, 10)) - app = main(mapa_mundo) + mapa_mundo: Mapa = Mapa((128, 128)) + app = main(mapa_mundo, tamanho_mapa=(128, 128))