criar excepcao quando é passado mapa como None

This commit is contained in:
2026-03-19 12:55:38 +00:00
parent 3b6102983e
commit b32e1ea096

View File

@ -1,3 +1,4 @@
from annotationlib import type_repr
import sys import sys
import random import random
from types import NoneType from types import NoneType
@ -100,8 +101,8 @@ def mostrarMapa(mapa: Mapa | None) -> None:
def main(mapa: Mapa | None, tamanho_mapa: tuple[int, int]): def main(mapa: Mapa | None, tamanho_mapa: tuple[int, int]):
if mapa is None: if isinstance(mapa, NoneType):
print("SEM MAPA!!") raise TypeError("não foi passado mapa (tipo None)")
pg.init() pg.init()
janela = pg.display.set_mode((1280, 800), flags) janela = pg.display.set_mode((1280, 800), flags)
pg.display.set_caption("Game Theory of Life") 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) mapa = Mapa(tamanho_mapa)
popularMapa(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) criarTabuleiro(janela, mapa.dimensao, mapa)
pg.display.flip() pg.display.flip()
@ -152,5 +159,5 @@ def main(mapa: Mapa | None, tamanho_mapa: tuple[int, int]):
if __name__ == "__main__": if __name__ == "__main__":
mapa_mundo: Mapa = Mapa((10, 10)) mapa_mundo: Mapa = Mapa((128, 128))
app = main(mapa_mundo) app = main(mapa_mundo, tamanho_mapa=(128, 128))