Package utils
Class GenererMonde
java.lang.Object
utils.GenererMonde
Classe utilitaire servant à générer dynamiquement un monde de jeu,
en plaçant des obstacles, des monstres et des coffres contenant des objets.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final CarteRéférence vers la carte générée (structure de toutes les cases du monde).private final intHauteur de la carte générée (nombre de lignes).Liste de tous les objets générés aléatoirement (hors coffres).private final intLargeur de la carte générée (nombre de colonnes).Liste de tous les monstres placés sur la carte.private final intProbabilité (en pourcentage, 0-100) de générer une case d'eau (obstacle EAU).private final intProbabilité (en pourcentage, 0-100) de générer une case de forêt (obstacle FORET).private final intProbabilité (en pourcentage, 0-100) de générer une case rocheuse (obstacle ROCHE).private final RandomGénérateur aléatoire utilisé pour placer obstacles, monstres et objets. -
Constructor Summary
ConstructorsConstructorDescriptionGenererMonde(int largeurCarte, int hauteurCarte, int nbMonstres, int nbCoffres, int nbItemsPool, int pctEau, int pctForet, int pctRoche) Constructeur de la classe GenererMonde. -
Method Summary
Modifier and TypeMethodDescriptionprivate voidgenererItems(int count) Génère aléatoirement un ensemble d’objets (items) avec des bonus variables.getCarte()Retourne la carte générée.Retourne le pool global des objets disponibles.Retourne la liste immuable des monstres présents dans le monde.private voidplacerCoffres(int nbCoffres) Place des coffres aléatoirement sur des cases franchissables.private voidplacerMonstres(int nbMonstres) Génère les monstres avec caractéristiques aléatoires, les place sur la carte et leur ajoute une potion de soin.private voidPlace aléatoirement des obstacles (eau, forêt, roche) sur la carte selon les pourcentages spécifiés dans le constructeur.
-
Field Details
-
largeur
private final int largeurLargeur de la carte générée (nombre de colonnes). -
hauteur
private final int hauteurHauteur de la carte générée (nombre de lignes). -
probEau
private final int probEauProbabilité (en pourcentage, 0-100) de générer une case d'eau (obstacle EAU). -
probForet
private final int probForetProbabilité (en pourcentage, 0-100) de générer une case de forêt (obstacle FORET). -
probRoche
private final int probRocheProbabilité (en pourcentage, 0-100) de générer une case rocheuse (obstacle ROCHE). -
carte
Référence vers la carte générée (structure de toutes les cases du monde). -
monstres
Liste de tous les monstres placés sur la carte. -
items
Liste de tous les objets générés aléatoirement (hors coffres). -
random
Générateur aléatoire utilisé pour placer obstacles, monstres et objets.
-
-
Constructor Details
-
GenererMonde
public GenererMonde(int largeurCarte, int hauteurCarte, int nbMonstres, int nbCoffres, int nbItemsPool, int pctEau, int pctForet, int pctRoche) Constructeur de la classe GenererMonde. Initialise une carte avec des obstacles, des monstres et des coffres.- Parameters:
largeurCarte- largeur de la cartehauteurCarte- hauteur de la cartenbMonstres- nombre total de monstres à générernbCoffres- nombre total de coffres à placernbItemsPool- nombre d'objets différents dans le pool globalpctEau- pourcentage de cases avec de l'eaupctForet- pourcentage de cases avec de la forêtpctRoche- pourcentage de cases avec de la roche
-
-
Method Details
-
getCarte
Retourne la carte générée.- Returns:
- la carte de jeu
-
getMonstres
Retourne la liste immuable des monstres présents dans le monde.- Returns:
- liste des monstres
-
getItemsPool
Retourne le pool global des objets disponibles.- Returns:
- liste des objets
-
genererItems
private void genererItems(int count) Génère aléatoirement un ensemble d’objets (items) avec des bonus variables. Chaque objet a un type, un nom, un prix et des bonus d’équipement.- Parameters:
count- nombre d’objets à générer
-
placerObstacles
private void placerObstacles()Place aléatoirement des obstacles (eau, forêt, roche) sur la carte selon les pourcentages spécifiés dans le constructeur. -
placerMonstres
private void placerMonstres(int nbMonstres) Génère les monstres avec caractéristiques aléatoires, les place sur la carte et leur ajoute une potion de soin.- Parameters:
nbMonstres- nombre de monstres à générer
-
placerCoffres
private void placerCoffres(int nbCoffres) Place des coffres aléatoirement sur des cases franchissables. Chaque coffre contient un objet aléatoire du pool global.- Parameters:
nbCoffres- nombre total de coffres à placer
-