diff --git a/README.md b/README.md index 39af52c..8ca9e78 100644 --- a/README.md +++ b/README.md @@ -1,29 +1,74 @@ -# README # +# Jeu de Rôle - Niveau -This README would normally document whatever steps are necessary to get your application up and running. +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. -### What is this repository for? ### +## Structure du Projet -* Quick summary -* Version -* [Learn Markdown](https://bitbucket.org/tutorials/markdowndemo) +- **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. -### How do I get set up? ### +## Fonctionnalités -* Summary of set up -* Configuration -* Dependencies -* Database configuration -* How to run tests -* Deployment instructions +1. **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. -### Contribution guidelines ### +2. **Navigation entre les Pièces** : + - Permet à l'utilisateur de naviguer entre les pièces ou de quitter le jeu. -* Writing tests -* Code review -* Other guidelines -### Who do I talk to? ### +## Exemple d'utilisation +```python +#app.py +if __name__ == "__main__": + loaded_character = CharacterBuilder.load_character("Jamin") + if loaded_character: + print(loaded_character) -* Repo owner or admin -* Other community or team contact \ No newline at end of file + 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. + +```bash +python3 app.py +``` \ No newline at end of file