Jeux Libres

Envie de créer un jeu vidéo ?   Le site qui vous accompagne de A à Z.


» Les Forums » A propos de la création de jeux vidéo » Fonctionnement du démineur.


Aller à la page : 1.

Fonctionnement du démineur.
Lo



Grade : Expert
Inscrit le: 26 Dec 2007, 17:33
Ecrit le: 09 Nov 2008, 14:15             Message non corrigé

Voilà, je suis entrain de programmer en Java un démineur. (du style window XP)
Alors j'aimerais savoir ce qu'il doit se passer quand on clique par exemple sur une cellule ou il n'y a pas de bombes voisines.

Je sais qu'il faut faire une boucle qui découvre toutes les cellules autour, mais je sais pas très bien jusqu'ou.
Pcq parfois ça découvre juste une case, et parfois ça en découvrent plusieurs d'un coup, alors si quelqu'un sais pourquoi peut il m'expliquer le jeux pcq là je vois pas très bien.

________
Parce qu'on ne peut s'exprimer que par nos créations. ^^
  Profil Mail
David



Grade : Expert
Inscrit le: 11 Mai 2005, 20:30
Ecrit le: 09 Nov 2008, 15:27             Message non corrigé

Lorsqu'il n'y a pas de bombe voisine, on dévoile les cases voisines qui n'ont pas de bombe voisine.
Ici, nous avons affaire à une récursivité.

Une case peut demander au case voisine de se dévoiler.
Une case peut se dévoiler si elle n'a pas de bombe a proximité.


Imaginons cette carte :

oooooxoo
ooxooooo
ooxooooo
ooooxooo


On clique en haut à droite.
La case n'a pas de bombe voisine, donc elle demande à ses cases voisines de se dévoiler. Ici, il y en a 3.
Celle de gauche se dévoile, elle a une bombe voisine donc elle affiche '1' et ne demande pas à ses cases voisine de se dévoiler.
Ensuite, la case juste en dessous à gauche. Cette case a une bombe voisine donc elle affiche '1' et ne demande pas au autres cases de se dévoiler.
Ensuite, la troisième, celle juste en dessous de la case en haut à gauche. Cette case n'a pas de bombe voisine, elle n'affiche donc rien et elle demande au cases voisines de se dévoiler. C'est là qu'intervient la récursivité ! C'est à dire que pour chacune des cases voisines, on rappel la méthode qui est appelé lorsqu'on clique sur une case.

Voici donc le contenu de la méthode correspondant au clique sur une case :

1) On compte le nombre de bombes voisines.
2) S'il y a au moins une bombe voisine, on affiche ce nombre et on s'arrête là.
3) S'il n'y a pas de bombe voisine, on appel cette méthode (celle dans laquelle nous somme en ce moment) (elle s'appelle elle-même) comme si on avait cliqué sur chacune des 8 cases voisines.

Et c'est tout ! En quelques lignes, tout le travail simple fait sur une seule case se répercute sur celle situé à proximité jusqu'à dévoiler les parties sans risque de la carte.

________
Apprenez à créer votre propre FPS en C++ avec OpenGL. C'est pas dur ! :-)
  Profil Mail
Lo



Grade : Expert
Inscrit le: 26 Dec 2007, 17:33
Ecrit le: 09 Nov 2008, 15:56             Message non corrigé

Ha okiche, je comprends!

Cool, je vais bientôt pouvoir le finir. (il ne me reste plus que la gestion des évènements)

L'affichage m'a pris pas mal de temps, mais là il est bon.^^
Pas simple à faire quand même.

Enfin soit si j'arrive à le terminé se sera un bonne exemple pour l'affichage, et la gestion des évènements en Java!

Et aussi la gestion du temps avec le chronomètre.

Enfin soit l'affichage et pas mal du tout et je peux mettre ce que je veux comme image.  

________
Parce qu'on ne peut s'exprimer que par nos créations. ^^
  Profil Mail
David



Grade : Expert
Inscrit le: 11 Mai 2005, 20:30
Ecrit le: 09 Nov 2008, 16:03             Message non corrigé

Tu peux nous monter une capture histoire de nous mettre l'eau à la bouche ?

________
Apprenez à créer votre propre FPS en C++ avec OpenGL. C'est pas dur ! :-)
  Profil Mail
Lo



Grade : Expert
Inscrit le: 26 Dec 2007, 17:33
Ecrit le: 09 Nov 2008, 17:56             Message non corrigé

Pas de problème, mais je suis pas info graphiste donc je pense pas que ça mettra l'eau à la bouche comme tu dis.

Mais dès que j'aurais fini, je ferai une démo dans mon tutoriel Java, mais si il y a un infographiste disponible pour me faire les images je veux bien. ^^
Parce que je te dis pas comment que je galère pour faire les images. (Même si je peux mettre celles que je veux, il suffit de les changer à la racine de mon projet)

________
Parce qu'on ne peut s'exprimer que par nos créations. ^^
  Profil Mail
Lo



Grade : Expert
Inscrit le: 26 Dec 2007, 17:33
Ecrit le: 11 Nov 2008, 12:19             Message non corrigé

Héhéhé, gestion du temps fini, il me reste plus qu'à sauvegarder une partie dans un fichier, et le classement.

Mais là j'ai envie d'attaquer les sons car j'ai jamais essayer, mais y'a t'il quelqu'un peut me donner un site sympa ou on peut télécharger des sons sympa svp?

Alors j'aurais besoin évidement d'un son quand une bombe explose, et un autre quand on découvre une cellule.

________
Parce qu'on ne peut s'exprimer que par nos créations. ^^
  Profil Mail
David



Grade : Expert
Inscrit le: 11 Mai 2005, 20:30
Ecrit le: 11 Nov 2008, 12:32             Message non corrigé

Perso je vais findsound, il y a des sons simpats

Explosion :
http://www.netdoo.com/wodx/sounds/weapons/grenlf1a.wav
http://www.shockwave-sound.com/sound-effects/explosion%20sounds/Arcade%20Explo%20A.wav

Clique / dévoilement de la map :
http://samples.edge6.com/dr-550/CLAP.WAV
http://music.griswold.k12.ct.us/music/Audio/Student_WAV_Samples/Yup.wav
http://gamelay.usami.com/~netboy/w30/samples/01_roland_mc-303/wavs/Realclap.wav

________
Apprenez à créer votre propre FPS en C++ avec OpenGL. C'est pas dur ! :-)
  Profil Mail
Lo



Grade : Expert
Inscrit le: 26 Dec 2007, 17:33
Ecrit le: 11 Nov 2008, 13:49             Message non corrigé

Oké, merci!

________
Parce qu'on ne peut s'exprimer que par nos créations. ^^
  Profil Mail
 


Aller à la page : 1.


Hébergeur du site : 1and1.fr



Site de création de Jeux Vidéo
Apprenez à créer vos propres Jeux Video

1389477 pages ont été consultées sur le site !
Dont 1489 pages pendant les 24 dernières heures.

Page générée en 0.325 secondes


Nos partenaires
- Otium Production : Aide aux débutants à créer leurs jeux
- Les bibliothèques de développement de jeux vidéo


  © 2005-2012 www.jeux-libres.com - Toute reproduction totale ou partielle du contenu de ce site est strictement interdite.