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

2D Java Discussion :

Interface graphique "jeu de dame"


Sujet :

2D Java

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 3
    Par défaut Interface graphique "jeu de dame"
    Bonjour,

    Je suis débutant en JAVA. Pour m'initier, j'ai décidé de créer un jeu de dame.

    Pb: Je souhaite déplacer mes jetons directement via l'interface graphique de mon jeu de dame. Or un dessin ne réagit pas à priori au clic de la souris. J'ai besoin de déplacer mes Jetons d'une case à une autre, puis j'imposerai des restrictions sur les déplacements. Comment faire?

    infos: Mon programme est constitué d'une classe Jeton (avec toutes les propriétés relatives à un jeton), d'une classe Tabjeton (qui recense tous les jetons, contient des fonctions d'initialisation, d'enregistrement des positions etc), d'une classe MaFenêtre (avec l'interface graphique), et du programme principal Jeu.

    Merci de m'aider!

  2. #2
    Membre confirmé
    Inscrit en
    Juin 2008
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 127
    Par défaut
    Perso, dans une démarche similaire, j'ai fait de l'équivalent de tes Jetons une sous-classe de JComponent (au final : extends JLabel), je crois que c'est une bonne piste pour obtenir des Jetons ayant une existence quasi "physique" pour le programme.

    Cela dit, comme je n'ai pas encore abouti, je ne peux pas te certifier que ça fonctionne, mais j'y crois.

  3. #3
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 913
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 913
    Billets dans le blog
    54
    Par défaut
    Non pas vraiment. C'est une methode (etendre JLabel) parmi d'autre et qui a l'avantage d'etre simple a aborder pour debuter et facile a aprehender, mais n'escompte pas faire des jeux trop avances ou tres performants de cette maniere.
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  4. #4
    Membre confirmé
    Inscrit en
    Juin 2008
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 127
    Par défaut
    Citation Envoyé par bouye Voir le message
    Non pas vraiment. C'est une methode (etendre JLabel) parmi d'autre et qui a l'avantage d'etre simple a aborder pour debuter et facile a aprehender, mais n'escompte pas faire des jeux trop avances ou tres performants de cette maniere.
    Peux tu nous expliquer une autre stratégie ?

  5. #5
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 913
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 913
    Billets dans le blog
    54
    Par défaut
    Eh ben tu peux... dessiner tout toi-meme en 2D ou en 3D "au vol", au contraire utiliser des images que tu positionnes manuellement, faire un mix des deux, passer par une lib (que tu auras eventuellement cree toi-meme) de gestions de sprites, etc, etc, etc...
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 16
    Par défaut
    salut à tous,
    moi aussi j'ai bossé sur le jeu de dams en 3D. pour ce qui est de la création des cases et des pionts j'ai utilisé des collections de pions et de cases qui sont crées puis dont on change la couleur suivant un mécanisme de switch case.

  7. #7
    Membre confirmé
    Inscrit en
    Juin 2008
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 127
    Par défaut
    Et comment gères-tu leur alignement sur la grille?

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 16
    Par défaut
    j'ai crée un objet damier qui fait appel des collections de pions et de cases.

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 16
    Par défaut
    bonjour,

    pour répondre à ta question sur la conception des collections de leur alignement, je te donne le code du damier c'est là que tout ce joue.
    j'espère que cela pourra t'aider.
    Code java : 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
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
     
    /** 
       * Cette méthode crée une scène 3D pour le damier.
       * Nous y définissons un ensemble de transformations pour un positionnement du damier dans l'univers 3D.
       * Nous y ajoutons ensuite par un système de boucle une collection de cases et de pions.
       * @return
       */
      public BranchGroup createSceneDamier() {
     
        BranchGroup parent = new BranchGroup();
        parent.setCapability(TransformGroup.ALLOW_CHILDREN_WRITE);
        parent.setCapability(BranchGroup.ALLOW_CHILDREN_EXTEND);
        parent.setCapability(TransformGroup.ENABLE_PICK_REPORTING);
     
        // Nous donnons une couleur gris clair au fond
        Background background = new Background(new Color3f(0.94f, 0.93f, 0.92f));
        background.setApplicationBounds(new BoundingBox());
        parent.addChild(background);  
     
        // Nous appliquons une rotation de l'ensemble des cases du damier
        Transform3D myRotation = new Transform3D();
        myRotation.rotX(-1.0f);
        TransformGroup myTGRotation = new TransformGroup();
        myTGRotation.setTransform(myRotation);
        parent.addChild(myTGRotation);
     
        // Nous pla�ons dans l'espace le damier pour une meilleure visibilit�
        Transform3D placement = new Transform3D();
        placement.setTranslation(new Vector3d(X,Y,Z));
        placement.setScale(zoom);
        TGplacementcases.setTransform(placement);
        myTGRotation.addChild(TGplacementcases);
     
        // Création par lignes
        for(i=0;i<10;i++) {
        	// Création par colonnes
        	for(j=0;j<10;j++) {
                if (b1==b2){
        		cases[i][j] = new CaseDamier(CaseDamier.CASE_BLANCHE,i,j);
        		cases[i][j].setCapability(Appearance.ALLOW_COLORING_ATTRIBUTES_WRITE);
        		cases[i][j].setCapability(Appearance.ALLOW_RENDERING_ATTRIBUTES_WRITE);
        		}
        		else{
        		cases[i][j] = new CaseDamier(CaseDamier.CASE_NOIRE,i,j);
        		cases[i][j].setCapability(Appearance.ALLOW_COLORING_ATTRIBUTES_WRITE);
        		cases[i][j].setCapability(Appearance.ALLOW_RENDERING_ATTRIBUTES_WRITE);
        		}
        		// Nous disposons les cases dans l'espace
                Transform3D myT = new Transform3D();
                myT.setTranslation(new Vector3d(i*2*Damier.TAILLE_CASE-(2*Damier.TAILLE_CASE*5), j*2*Damier.TAILLE_CASE-(2*Damier.TAILLE_CASE*5), 0));
                TransformGroup myTG = new TransformGroup();
                myTG.setTransform(myT);
        	    myTG.addChild(cases[i][j].getShape3D());
        	    TGplacementcases.addChild(myTG);    	    		
        		b2=!b2;
        	}
        	b1=!b1;
        }
        return parent;
      }

  10. #10
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 4
    Par défaut jeu de dame en java
    Salut,

    J'ai réalisé un je de dame en Java utilisant un system expert pour l'inteligence.
    Son code source poura peut etre t'aider : http://www.angelfires-fr.com/program...p?nom=checkers

Discussions similaires

  1. interface graphique java jeu bubble
    Par nadhem17 dans le forum Général Java
    Réponses: 4
    Dernier message: 30/04/2013, 19h46
  2. interface graphique jeu TRON 3D
    Par aedh04 dans le forum 3D
    Réponses: 1
    Dernier message: 19/02/2011, 01h03
  3. Jeu 2D: Quelle interface graphique choisir ?
    Par laurentm44 dans le forum Débuter
    Réponses: 6
    Dernier message: 18/10/2010, 11h58
  4. Réponses: 0
    Dernier message: 22/03/2010, 10h41
  5. Interface graphique pour jeu de Sudoku
    Par Stradithehutt dans le forum Interfaces Graphiques
    Réponses: 5
    Dernier message: 01/11/2006, 11h43

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