Besoin d'aide Jeu Java
Ourii
-
Pacorabanix Messages postés 3248 Date d'inscription Statut Membre Dernière intervention -
Pacorabanix Messages postés 3248 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai un jeu à programmer en java, un labyrinthe en fait, je n'arrive plus à avancer car je ne sais pas comment faire pour remplir aléatoirement mon labyrinthe de petits murets fabriqués à l'aide de "-" et de "|", et ceci dépendamment du niveau de difficulté souhaité par l'utilisateur.
Exemple, pour le niveau le plus dur (Le niveau 10), j'ai ceci:
public static char[][] dessineMuret(int hauteur, int largeur, int densite)
{
int i,j,k;
char[][] tab;
tab= new char[hauteur+1][largeur+1];
if(densite==10)
{
for(i=4; i<=hauteur-4; i+=4)
{
for(j=1; j<largeur; j++)
tab[i][j]='-';
for(k=8;k<largeur-7;k+=8)
tab[i][p]=' ';
}
}
Je l'ai un peu modifié pour que vous puissiez mieux comprendre, en l'affichant j'obtiens un labyrinthe plein de murets.
Maintenant, j'aimerais savoir comment faire pour avoir des blocs horizontaux de 7 "-" et d'autres blocs verticaux de 3 "|", distribués aléatoirement et selon la difficulté...
Merci d'avance...
J'ai un jeu à programmer en java, un labyrinthe en fait, je n'arrive plus à avancer car je ne sais pas comment faire pour remplir aléatoirement mon labyrinthe de petits murets fabriqués à l'aide de "-" et de "|", et ceci dépendamment du niveau de difficulté souhaité par l'utilisateur.
Exemple, pour le niveau le plus dur (Le niveau 10), j'ai ceci:
public static char[][] dessineMuret(int hauteur, int largeur, int densite)
{
int i,j,k;
char[][] tab;
tab= new char[hauteur+1][largeur+1];
if(densite==10)
{
for(i=4; i<=hauteur-4; i+=4)
{
for(j=1; j<largeur; j++)
tab[i][j]='-';
for(k=8;k<largeur-7;k+=8)
tab[i][p]=' ';
}
}
Je l'ai un peu modifié pour que vous puissiez mieux comprendre, en l'affichant j'obtiens un labyrinthe plein de murets.
Maintenant, j'aimerais savoir comment faire pour avoir des blocs horizontaux de 7 "-" et d'autres blocs verticaux de 3 "|", distribués aléatoirement et selon la difficulté...
Merci d'avance...
A voir également:
- Besoin d'aide Jeu Java
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel - Télécharger - Jeux vidéo
- Eclipse java - Télécharger - Langages
- 94 jeu - Télécharger - Puzzle & Réflexion
- Java apk - Télécharger - Langages
4 réponses
On peut également voir la densite comme une probabilité entre 0 et 1... (ou un niveau entre 1 et 10)
Si j'ai bien compris, tu cherche une fonction qui génère des valeurs aléatoires:
http://www.javafr.com/forum/sujet-FONCTION-MATH-RANDOM_1031916.aspx
Math.random()doit pouvoir faire la tâche.
http://www.javafr.com/forum/sujet-FONCTION-MATH-RANDOM_1031916.aspx
Merci, mais ce dont j'ai besoin c'est un début de code qui génère les murets. Je n'y arrive pas du tout, et ça m'aiderait énormément a faire les autres parties de mon exercice.
en fait ton problème est assez complexe... construire des "blocs de tant de murets" au bol pose plusieurs problèmes, notamment pour gérer les murets (= tes blocs c'est bien ça?) risquent de ne pas bien s'accrocher.
Tu as là un bon projet complet pour utiliser la programmation objet.
Je pense que tu devrais revoir la structure même de te labyrinthe. au lieu d'être un char [][] ça devrait être un objet (une classe) à part entière. Sa donnée principale serait un tableau double de "blocs" (une autre classe). Tu pourras ainsi concevoir ta classe de manière "plus haut niveau", avec des blocs de construction genre légos, et après tu programmes les petites unités que seront : la création et le positionnement de tes blocs, selon le niveau de diff, etc...
Tu as là un bon projet complet pour utiliser la programmation objet.
Je pense que tu devrais revoir la structure même de te labyrinthe. au lieu d'être un char [][] ça devrait être un objet (une classe) à part entière. Sa donnée principale serait un tableau double de "blocs" (une autre classe). Tu pourras ainsi concevoir ta classe de manière "plus haut niveau", avec des blocs de construction genre légos, et après tu programmes les petites unités que seront : la création et le positionnement de tes blocs, selon le niveau de diff, etc...