🏗️ ♻️ restructuration du projet et refactoring #3
+11
-3
@@ -1,9 +1,9 @@
|
||||
import sys
|
||||
|
||||
from elironwars.mob.base_mob import BaseMob
|
||||
from elironwars.mob.character_builder import CharacterBuilder
|
||||
from .level import Level
|
||||
from .menu import Action, action_menu
|
||||
from .mob.base_mob import BaseMob
|
||||
from .mob.character_builder import CharacterBuilder
|
||||
|
||||
|
||||
def play_room(room: list[BaseMob], level: Level) -> int:
|
||||
@@ -50,7 +50,15 @@ def app() -> None:
|
||||
|
||||
print(loaded_character)
|
||||
|
||||
level = Level(2, loaded_character)
|
||||
# Créer des instances de BaseMob
|
||||
yanaar = BaseMob("Yanaar", 15, 2, 1, 3, 2)
|
||||
ulnarain = BaseMob("Ulnarain", 20, 3, 3, 2, 2)
|
||||
skroll = BaseMob("Skroll", 25, 5, 3, 1, 2)
|
||||
|
||||
# Liste d'instances de BaseMob (au lieu d'un ensemble pour autoriser des doublons)
|
||||
mobs_list = [yanaar, skroll, ulnarain]
|
||||
|
||||
level = Level(2, loaded_character, mobs_list)
|
||||
print(f"Nombre de pièce dans le donjon : {len(level.rooms)}")
|
||||
|
||||
play_donjon(level)
|
||||
|
||||
@@ -1,16 +1,13 @@
|
||||
""" Class Level """
|
||||
import random
|
||||
|
||||
from .mobs_utils import generate_random_mob_list, generate_random_rooms
|
||||
|
||||
|
||||
class Level:
|
||||
""" Class Level """
|
||||
|
||||
def __init__(self, difficulty, player):
|
||||
def __init__(self, difficulty, player, mob_list):
|
||||
""" Chargement du niveau """
|
||||
print("Loading Level")
|
||||
self.mobs_in_level = generate_random_mob_list(random.randint(2, difficulty))
|
||||
self.mobs_in_level = generate_random_mob_list(mob_list, difficulty)
|
||||
self.exit_level = True
|
||||
self.player = player
|
||||
self.rooms = generate_random_rooms(self.mobs_in_level, difficulty) # Liste des pièces du niveau
|
||||
|
||||
@@ -1,20 +1,11 @@
|
||||
import random
|
||||
|
||||
from elironwars.mob.base_mob import BaseMob
|
||||
|
||||
# Créer des instances de BaseMob
|
||||
yanaar = BaseMob("Yanaar", 15, 2, 1, 3, 2)
|
||||
ulnarain = BaseMob("Ulnarain", 20, 3, 3, 2, 2)
|
||||
skroll = BaseMob("Skroll", 25, 5, 3, 1, 2)
|
||||
|
||||
# Liste d'instances de BaseMob (au lieu d'un ensemble pour autoriser des doublons)
|
||||
mobs_list = [yanaar, skroll, ulnarain]
|
||||
|
||||
|
||||
def generate_random_mob_list(max_mobs):
|
||||
def generate_random_mob_list(mob_list, max_mobs):
|
||||
"""
|
||||
Génère une liste aléatoire de mobs à partir de la liste des instances disponibles.
|
||||
Génère une liste aléatoire de mobs à partir de la liste fournie.
|
||||
|
||||
:param mob_list: Liste de mob a choisir aleatoirement.
|
||||
:param max_mobs: Le nombre maximum de mobs dans la liste générée.
|
||||
:return: Une liste de mobs sélectionnés aléatoirement.
|
||||
"""
|
||||
@@ -22,7 +13,7 @@ def generate_random_mob_list(max_mobs):
|
||||
return []
|
||||
|
||||
num_mobs = random.randint(2, max_mobs)
|
||||
selected_mobs = [random.choice(mobs_list) for _ in range(num_mobs)]
|
||||
selected_mobs = [random.choice(mob_list) for _ in range(num_mobs)]
|
||||
return selected_mobs
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user