Jeu de Rôle - Niveau
+Ce projet est une implémentation d’un système de niveau pour un jeu de rôle. Il permet de générer des pièces avec des mobs (monstres) et de naviguer entre ces pièces.
+Structure du Projet
+-
+
- Level: La classe principale qui représente un niveau dans le jeu. +
- BaseMob: La classe représentant les monstres (mobs). +
- generate_random_rooms: Une fonction pour générer des pièces avec des mobs. +
Fonctionnalités
+-
+
-
+
Génération de Niveau : + - Charge un nombre aléatoire de mobs en fonction de la difficulté. + - Génère des pièces et y répartit les mobs disponibles.
+
+ -
+
Navigation entre les Pièces : + - Permet à l’utilisateur de naviguer entre les pièces ou de quitter le jeu.
+
+
Exemple d’utilisation
+#app.py
+if __name__ == "__main__":
+ loaded_character = CharacterBuilder.load_character("Jamin")
+ if loaded_character:
+ print(loaded_character)
+
+ level = Level(2, CharacterBuilder.load_character("Jamin"))
+ player = level.player
+ rooms = level.rooms
+ number_room = len(rooms)
+ print(f"Nombre de pièce dans le donjon : {number_room}")
+
+ while level.exit_level:
+ os.system('cls' if os.name == 'nt' else 'clear')
+ match action_menu():
+ case 1:
+ if level.current_room_index >= number_room:
+ print("fin du donjon !")
+ break
+ room = rooms[level.current_room_index]
+ print(f"Pièce actuelle : {level.current_room_index}")
+ if room is not None:
+ for mob in room:
+ print(f"Un {mob.name} est devant toi !")
+ match action_menu():
+ case 2:
+ level.combat(mob, player)
+ if player.current_pv <= 0:
+ print("!!!!!!!!! Joueur mort !!!!!!!!!!")
+ break
+ if mob.current_pv == 0:
+ print(f"Le {mob.name} est mort !!")
+ case 3:
+ print("Tu fuis la pièce")
+ else:
+ print("\n ------ Pièce vide ------ \n")
+ player.current_pv = player.max_pv
+ level.current_room_index += 1
+ case 4:
+ level.exit_level = False
+ print(f"Au revoir {player.name} !")
+ case _:
+ print("Mauvais choix")
+Installation
+Pour exécuter ce projet, vous aurez besoin de Python 3.7 ou supérieur.
+python3 app.py
+