/// <summary> /// Rempli le dico des loots spécifiés /// </summary> /// <param name="List"></param> public void CreationListLoot() { //ajout cle for (int cle = 0; cle < quantiteLoot.nbClés; cle++) { Liste.Add(this.CaseVide(), new Loot_ObjetCle()); } //ajout carte du labyrinthe for (int carte = 0; carte < quantiteLoot.nbCartes; carte++) { Liste.Add(this.CaseVide(), new Loot_Carte()); } //ajout pic for (int pic = 0; pic < quantiteLoot.nbPic; pic++) { Liste.Add(this.CaseVide(), new Loot_ObjetPic()); } //ajout etre for (int etre = 0; etre < quantiteLoot.nbCartes; etre++) { Liste.Add(this.CaseVide(), new Loot_Etre()); } //ajout Sort InstanciationLootSort(quantiteLoot.nbSortTeleportation, TypeSort.Immediat, NomSort.Teleportation, Liste); InstanciationLootSort(quantiteLoot.nbSortVision, TypeSort.Immediat, NomSort.Vision, Liste); InstanciationLootSort(quantiteLoot.nbSortForce, TypeSort.Immediat, NomSort.Force, Liste); //ajout Potion InstanciationLootSort(quantiteLoot.nbPotionForce, TypeSort.Potion, NomSort.Force, Liste); InstanciationLootSort(quantiteLoot.nbPotionForce, TypeSort.Potion, NomSort.Vision, Liste); InstanciationLootSort(quantiteLoot.nbPotionForce, TypeSort.Potion, NomSort.Vitesse, Liste); //ajout carte InstanciationLootSort(quantiteLoot.nbCartes, TypeSort.Carte, (NomSort)Utilitaire.RandNombre(0, 50), Liste); //ajout porte Liste.Add(CaseVide(Tableau.GetLength(0) * 0.9, Tableau.GetLength(1) * 0.5, Tableau.GetLength(0), Tableau.GetLength(1) * 0.51), new Loot_Porte()); }
/// <summary> /// Renvoie un point aléatoire défini dans la valeur de hauteur maxi et une valeur de largeur maxi /// </summary> /// <param name="hauteur"></param> /// <param name="largeur"></param> /// <returns></returns> public static Point PositionAleatoire(int hauteur, int largeur) { Point position = new Point(); position.X = Utilitaire.RandNombre(0, largeur); position.Y = Utilitaire.RandNombre(0, hauteur); return(position); }
/// <summary> /// renvoie un sort dont le type est définie en argument avec des valeurs aléatoires /// </summary> /// <param name="nomSort"></param> /// <returns></returns> public Loot_Sort CreationSort(NomSort nomSort) { //Loot_Sort so = new Loot_Sort(); Point po = new Point(); po.X = 0; po.Y = 0; switch (nomSort) { case NomSort.Vitesse: this.Vitesse += Utilitaire.RandNombre(1, 10); this.NomSort = nomSort; break; case NomSort.Force: this.Force += Utilitaire.RandNombre(1, 10); this.NomSort = nomSort; break; case NomSort.Teleportation: this.Position = po; this.NomSort = nomSort; break; case NomSort.Combine: this.Force -= Utilitaire.RandNombre(1, 10); this.Vitesse -= Utilitaire.RandNombre(1, 10); this.NomSort = nomSort; break; case NomSort.Vision: this.Vision += Utilitaire.RandNombre(1, 3); this.NomSort = nomSort; break; default: break; } return(this); }
/// <summary> /// Renvoie aleatoirement un type de sort /// </summary> /// <returns></returns> public Loot_Sort CreationSortAleatoire() { Loot_Sort so = new Loot_Sort(); return(so.CreationSort((NomSort)(Utilitaire.RandNombre(0, Loot_Sort.NombreTypeSort())))); }