Source code for models.bioma

"""
Model do Bioma
Representa um bioma do jogo com suas características
"""

from dataclasses import dataclass
from enum import Enum


[docs] class BiomaType(Enum): """Tipos de bioma disponíveis no jogo""" DESERTO = "Deserto" SELVA = "Selva" FLORESTA = "Floresta" OCEANO = "Oceano"
[docs] @dataclass class Bioma: """ Model que representa um bioma do jogo Attributes: nome: Nome do bioma (chave primária - NomeBioma) """ nome: str
[docs] def __str__(self) -> str: """Representação string do bioma""" return f"Bioma({self.nome})"
[docs] def __repr__(self) -> str: """Representação detalhada do bioma""" return f"Bioma(nome='{self.nome}')"
[docs] def __eq__(self, other) -> bool: """Comparação de igualdade baseada na chave primária""" if not isinstance(other, Bioma): return False return self.nome == other.nome
[docs] def __hash__(self) -> int: """Hash baseado na chave primária""" return hash(self.nome)
# Biomas predefinidos do jogo (baseados nos dados do banco) BIOMAS_PREDEFINIDOS = { BiomaType.DESERTO: Bioma("Deserto"), BiomaType.SELVA: Bioma("Selva"), BiomaType.FLORESTA: Bioma("Floresta"), BiomaType.OCEANO: Bioma("Oceano") }