Files
d-crawler/src/elironwars/menu.py
T
2026-07-17 20:42:51 +02:00

46 lines
1.1 KiB
Python

import os
from enum import Enum
class Action(Enum):
PIECE_SUIVANTE = (1, "Pièce suivante")
COMBAT = (2, "Combat")
FUIR = (3, "Fuir")
QUITTER = (4, "Quitter")
@property
def code(self):
return self.value[0]
@property
def libelle(self):
return self.value[1]
def clear_console() -> None:
os.system('cls' if os.name == 'nt' else 'clear')
def action_menu(actions_autorisees: list[Action] = None) -> Action:
"""Affiche le menu et retourne une action valide."""
actions_autorisees = list(Action) if actions_autorisees is None else actions_autorisees
while True:
print("\n------ Menu Action ------\n")
for action in actions_autorisees:
print(f"{action.libelle:<20} : {action.code}")
try:
choix = int(input("\nChoix : "))
clear_console()
for action in actions_autorisees:
if action.code == choix:
return action
print("Mauvais choix")
except ValueError:
clear_console()
print("Veuillez saisir un nombre.")