init
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
import random
|
||||
from 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):
|
||||
"""
|
||||
Génère une liste aléatoire de mobs à partir de la liste des instances disponibles.
|
||||
|
||||
: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.
|
||||
"""
|
||||
if max_mobs <= 0:
|
||||
return []
|
||||
|
||||
num_mobs = random.randint(2, max_mobs)
|
||||
selected_mobs = [random.choice(mobs_list) for _ in range(num_mobs)]
|
||||
return selected_mobs
|
||||
|
||||
|
||||
def generate_random_rooms(mobs_in_level, num_rooms):
|
||||
"""
|
||||
Génère un nombre spécifié de pièces et y distribue les mobs disponibles.
|
||||
|
||||
:param mobs_in_level: Liste des mobs disponibles pour le niveau.
|
||||
:param num_rooms: Nombre total de pièces à générer.
|
||||
:return: Une liste de pièces, chaque pièce contenant un ou plusieurs mobs, ou étant vide si aucun mob n'est disponible.
|
||||
"""
|
||||
rooms = []
|
||||
|
||||
for _ in range(num_rooms):
|
||||
if len(mobs_in_level) > 0:
|
||||
# Si des mobs sont disponibles, ajouter le premier mob à la pièce
|
||||
new_room = []
|
||||
for x in range(random.randint(1, len(mobs_in_level))):
|
||||
new_room.append(mobs_in_level.pop(0))
|
||||
rooms.append(new_room)
|
||||
else:
|
||||
# Ajouter une pièce vide si aucun mob n'est disponible
|
||||
rooms.append(None)
|
||||
|
||||
return rooms
|
||||
Reference in New Issue
Block a user