IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

Jeu du taquin Java


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Femme Profil pro
    Inscrit en
    Mai 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 2
    Par défaut Jeu du taquin Java
    Salut !

    J'ai un petit souci avec mon code java pour implémenter le jeu du taquin. Alors, le problème c'est que lorsque je tente d'engendre les fils suite aux déplacements possibles de la case vides , j'ai des cases vides doubles , puis avec les itérations tout est vide

    Voici ma fonction : executer ( engendre fils) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    	public ArrayList<Noeud> executer (){
    			Jeu LeJeu ;
    			Jeu LeJeu1;
    			Jeu LeJeu2;
    			Jeu LeJeu3;
     
    			ArrayList<Noeud> l = new ArrayList<Noeud>();
     
     
    					if (possible(Operateurs.HAUT))  {						
    						LeJeu = new Jeu(jeu.lejeu,jeu.case_vide);
    						LeJeu.lejeu[jeu.case_vide.x][jeu.case_vide.y]=jeu.lejeu[jeu.case_vide.x-1][jeu.case_vide.y];
    				        LeJeu.lejeu[jeu.case_vide.x-1][jeu.case_vide.y]='V';
    				    	LeJeu.case_vide.x = jeu.case_vide.x-1;
     
    						l.add(new Noeud(this,LeJeu,cout_d(),cout_f(but)));
     
    				}
     
    					if (possible(Operateurs.DROITE)) {					
    						 LeJeu1 = new Jeu(jeu.lejeu,jeu.case_vide);
    						LeJeu1.lejeu[jeu.case_vide.x][jeu.case_vide.y]=jeu.lejeu[jeu.case_vide.x][jeu.case_vide.y+1];
    				        LeJeu1.lejeu[jeu.case_vide.x][jeu.case_vide.y+1]='V';
    						LeJeu1.case_vide.y = jeu.case_vide.y+1;
     
    						l.add(new Noeud(this,LeJeu1,cout_d(),cout_f(but)));
     
    					}
     
    					if (possible(Operateurs.BAS)) {						
    						 LeJeu2 = new Jeu(jeu.lejeu,jeu.case_vide);
    						LeJeu2.lejeu[jeu.case_vide.x][jeu.case_vide.y]=jeu.lejeu[jeu.case_vide.x+1][jeu.case_vide.y];
    				        LeJeu2.lejeu[jeu.case_vide.x+1][jeu.case_vide.y]='V';
    						LeJeu2.case_vide.x = jeu.case_vide.x+1;
     
    						l.add(new Noeud(this,LeJeu2,cout_d(),cout_f(but)));
     
    					} 
     
    					if (possible(Operateurs.GAUCHE)) { 					
    						 LeJeu3 = new Jeu(jeu.lejeu,jeu.case_vide);
    					    LeJeu3.lejeu[jeu.case_vide.x][jeu.case_vide.y]=jeu.lejeu[jeu.case_vide.x][jeu.case_vide.y-1];
    					    LeJeu3.lejeu[jeu.case_vide.x][jeu.case_vide.y-1]='V';
    						LeJeu3.case_vide.y = jeu.case_vide.y-1;
     
    						l.add(new Noeud(this,LeJeu3,cout_d(),cout_f(but)));
     
    					}
    								return l;
    								}
    et le résultat est pour cette matrice de jeu :

    |2||3||V|
    |5||4||1|
    |6||8||7|

    c'est =>

    |2||V||3|
    |5||4||V|
    |6||8||7|


    |2||V||3|
    |5||4||V|
    |6||8||7|

  2. #2
    Modérateur
    Avatar de kolodz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    2 209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 209
    Billets dans le blog
    52
    Par défaut
    Sans avoir le code exécutable difficile à dire.

    Tente de voir tes jeux 1/2/3/4 juste après leur création et juste après l'action.
    Je pense que le problème peut-être là.
    Tu peux aussi tenter de voir le comportement avec qu'un seul "Noeud" à la fois.

    Cordialement,
    Patrick Kolodziejczyk.
    Si une réponse vous a été utile pensez à
    Si vous avez eu la réponse à votre question, marquez votre discussion
    Pensez aux FAQs et aux tutoriels et cours.

  3. #3
    Candidat au Club
    Femme Profil pro
    Inscrit en
    Mai 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 2
    Par défaut
    Merci pour ta réponse ! En effet , le problème c'est dans mes Jeu(1,2,3,4)
    Et donc j'ai remarqué qu'une fois une opération est faite par exemple Haut , la prochaine opération possible se fait sur le même jeu de la précédente :

    La matrice de jeu :
    |2||3||V|
    |1||5||4|
    |6||8||7|

    L'operation Bas donne :
    |2||3||4|
    |1||5||V|
    |6||8||7|

    L'operation Gauche vient apres , et donne :
    |2||V||3|
    |1||5||V|
    |6||8||7|

    Justement , c'est pour ca que j'ai fait toutes ces variables Jeu(1,2,3,4) et pourtant ca donne rien

  4. #4
    Modérateur
    Avatar de kolodz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    2 209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 209
    Billets dans le blog
    52
    Par défaut
    Il doit y avoir un problème dans ta classe Jeu.
    Peux-tu nous la montrer ?
    Si une réponse vous a été utile pensez à
    Si vous avez eu la réponse à votre question, marquez votre discussion
    Pensez aux FAQs et aux tutoriels et cours.

Discussions similaires

  1. [Débutant] Programmer le jeu Sudoku en Java
    Par whally dans le forum Graphisme
    Réponses: 5
    Dernier message: 04/03/2011, 09h53
  2. Question sur le jeu du Taquin
    Par DevloNewb' dans le forum Algorithmes et structures de données
    Réponses: 14
    Dernier message: 23/02/2010, 10h55
  3. [Conseil]Projet de jeu en binôme JAVA
    Par Vivian Pennel dans le forum Développement 2D, 3D et Jeux
    Réponses: 7
    Dernier message: 30/07/2008, 17h21
  4. [Débutant] Developper un jeu DirectX en Java
    Par akito dans le forum DirectX
    Réponses: 5
    Dernier message: 10/08/2007, 07h09
  5. [C] Jeu du Taquin
    Par Lucas42 dans le forum C
    Réponses: 3
    Dernier message: 02/11/2006, 18h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo