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

Langage Java Discussion :

[Debutant] Probleme de gestion des joueurs pour un jeu


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2007
    Messages : 23
    Par défaut [Debutant] Probleme de gestion des joueurs pour un jeu
    Bonjour a tous,
    je suis nouveau, je suis en DUT informatique. Je suis actuellement en train de coder le jeu du yams, un jeu de dés. Je rencontre quelques difficultés a gerer deux joueurs, enfin au niveau de l'attribution des points. J'arrive a changer de joueur, mais ma methode d'attribution des points ne marchent pu a 2 joueurs ...

    Elements : Classes, tableaux

    voici un morceaux de mon main()
    si vous le souhaiter je peux mettre la methode, mais elle est tres grosse ... enfin je me debrouillerais pour la mettre si vousl voulez
    D'avance merci, et ce forum est vraiment bien, mais un peu incomprehensible pour un debutant comme moi ^^' ( ca viendra ^^)

    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
    if(gestion.getNumeroJoueur() == 1)
    {
        while(tabContratsRealiseJ1[relancer-1] == true)
        {
            System.out.println("Contrat deja realise, saisissez en un autre");
    	relancer = Clavier.lire_int();
     
    	if(relancer !=0) // le 0 sert a consulter les contrats
    	    tabContratsRealiseJ1[relancer-1] = true; //Le contrat est fait, meme si il est faux, il est considéré comme fait
    	gestion.tableauxScore(relancer,tabContratsRealiseJ1[0],tabContratsRealiseJ1[1],tabContratsRealiseJ1[2],tabContratsRealiseJ1[3],tabContratsRealiseJ1[4],tabContratsRealiseJ1[5]);
        }
    }
     
    if(gestion.getNumeroJoueur() == 2)
    {
    	while(tabContratsRealiseJ2[relancer-1] == true)
    	{
    		System.out.println("Contrat deja realise, saisissez en un autre");
    		relancer = Clavier.lire_int();
     
    		if(relancer !=0) // le 0 sert a consulter les contrats
        		    tabContratsRealiseJ2[relancer-1] = true; //Le contrat est fait, meme si il est faux, il est considéré comme fait
                   gestion.tableauxScore(relancer,tabContratsRealiseJ2[0],tabContratsRealiseJ2[1],tabContratsRealiseJ2[2],tabContratsRealiseJ2[3],tabContratsRealiseJ2[4],tabContratsRealiseJ2[5]);
    	}
    }
     
     
     
    if(gestion.getNumeroJoueur() == 1)
    	System.out.println("Vous avez obtenu : "+gestion.getResultatJ1()+ " points\n");
     
    if(gestion.getNumeroJoueur() == 2)
    	System.out.println("Vous avez obtenu : "+gestion.getResultatJ2()+ " points\n");

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 68
    Par défaut
    Pas facile de deviner ce qui ne va pas si tu ne donnes pas plus de précisions !
    tu reçois un message d'erreur, ou bien c'est simplement que ton code ne produit pas l'effet escompté ?

    Si l'erreur te paraît venir de la méthode d'attribution des points, ce serait mieux qu'on puisse la voir, ou voir le message d'erreur lors de la compilation ou de l'éxécution...

  3. #3
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2007
    Messages : 23
    Par défaut
    Ca compile parfaitement, ca s'execute aussi, mais mal

    voila un bout de ma methode :

    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
    public void tableauxScore(int indice, boolean indice1,boolean indice2,boolean indice3,boolean indice4,boolean indice5,boolean indice6)
    {
    	int sommeChiffresEgaux;
    	int nombrePlusRepresente;
     
    	if(numeroJoueur == 1)
    	{
    		//Remplissage tabResultatsJ1
    		for(int i = 0; i<5; i++)
    		{
    			tabResultatsJ1[i] = 0;
    		}
     
    		//Somme des memes numeros dans la case choisie
    		//6 premieres cases du tableaux gérées
    		if(indice < 6)
    		{
    			for(int i = 0; i<5;i++)
    			{
    				if(tabDes[i] ==indice)
    				{
    					tabResultatsJ1[indice] ++;
    				}
    			}
    			tabResultatsJ1[indice] = tabResultatsJ1[indice]*indice;
    		}
     
    		//Somme des 6 premiers contrats
    		if(indice1 == true && indice2== true && indice3 == true && indice4== true && indice5 == true && indice6== true)
    		{
    			for(int i = 0; i < 6; i ++)
    			{
    				tabResultatsJ1[6] = tabResultatsJ1[6]+tabResultatsJ1[i];
    			}
    		}
    }
    Voila il n'y en a qu'un petit bout, car comme je vous l'ai deja dit, ma methode est assez longue ...
    Ca marche moins bien depuis que j'ai rajouté le numerojoueur==1, il y a le meme pour le 2e joueur, la varialbe ne prend que 2 valeurs, je lai testé, et de toute facon, il n'y a aucune attribution de points ...

    Merci d'avance pour vos réponses

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 68
    Par défaut
    Quelle fonction met à jour la variable numéroJoueur ?
    Tu devrais vérifier en début de ta fonction quelle est la valeur prise par cette variable numéroJoueur (en ajoutant un System.out.println(numéroJoueur) par exemple).
    Pourquoi ne la passes-tu pas simplement en paramètre de ta fonction d'attribution de points ?

    autre remarque :
    tu n'as pas besoin d'écrire des if(booleen==true) ou if(booleen==false) pour les booléens. Fais plutôt des if(booleen) ou if (!booleen).

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 68
    Par défaut
    une idée :
    Si comme tu le constates il n'y a pas d'attribution de points, c'est que ta variable numéroJoueur ne prend ni la valeur 1, ni la valeur 2 (le programme ne passe donc pas dans les boucles correspondantes).

    Va voir du côté de la fonction qui change la valeur de numéroJoueur... C'est là que ça doit coincer...

  6. #6
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2007
    Messages : 23
    Par défaut
    Je vous remercie de vos réponses, mais le probleme ne vient pas de la,
    en fait numeroJoueur me permet de changer de joueur, et dans mon main, lorsque je fais if(gestion.getNumeroJoueur()==1) System.out.println(joueur1)
    j'ai bien joueur qui saffiche, de meme pour joueur2.
    J'avais un probleme avec ca aussi pendant un moment, mais ca s'est resolu.

    Encore merci, d'autres idées ? vous voulez d'autres precisions ?

Discussions similaires

  1. Gestion des sprites pour un jeu xna
    Par Toin3 dans le forum Windows Phone
    Réponses: 0
    Dernier message: 08/03/2012, 01h08
  2. [Oracle]probleme de gestion des utilisateurs
    Par gentarik dans le forum Oracle
    Réponses: 5
    Dernier message: 09/03/2005, 12h58
  3. Question des gestions des genres pour livre, BD...
    Par Oberown dans le forum Schéma
    Réponses: 3
    Dernier message: 16/09/2004, 16h58
  4. Gestion des modifications pour un enregistrement
    Par Pascal Jankowski dans le forum Bases de données
    Réponses: 3
    Dernier message: 10/03/2004, 14h09

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