36 lines
949 B
Python
36 lines
949 B
Python
# definição de classe Estrategia
|
|
from enum import Enum
|
|
import json
|
|
import os
|
|
|
|
|
|
class TiposEstrategia(Enum):
|
|
ALEATORIO = 0
|
|
NEUTRO = 1
|
|
TIT4TAT = 2
|
|
VINGATIVO = 3
|
|
LUNATICO = 4
|
|
|
|
|
|
# lista de estratégias. cada entrada é um dicionário com nome de estratégia
|
|
# e respectivos tracos de personalidade
|
|
lista_estrategias: dict = {}
|
|
|
|
|
|
def carregarFicheirosEstrategias(pasta_estrategias: str) -> None:
|
|
lista_ficheiros: list = os.listdir(pasta_estrategias)
|
|
for ficheiro_json in lista_ficheiros:
|
|
with open(f'{pasta_estrategias}/{ficheiro_json}', 'r') as ficheiro:
|
|
dados = json.load(ficheiro)
|
|
lista_estrategias.update(dados)
|
|
|
|
|
|
def listaNomesEstrategias() -> list:
|
|
return list(lista_estrategias.keys())
|
|
|
|
|
|
def devolvePersonalidade(nome_estrategia: str) -> dict[str, float] | None:
|
|
personalidade: dict[str, float] | None = lista_estrategias.get(
|
|
nome_estrategia)
|
|
return personalidade
|