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

avec Java Discussion :

Jeu du taquin


Sujet :

avec Java

  1. #1
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Avril 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Avril 2014
    Messages : 4
    Points : 4
    Points
    4
    Par défaut Jeu du taquin
    Bonjour,

    Je suis en terminale S et je dois programmer un jeu du taquin en Javascool.

    J'ai un problème concernant le déplacement de cases et l'initialisation du mélange de cases.

    Voici le code
    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
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
        static int        numCase;
        static int        rgb[];
        static int[][]    rouge    = new int[500][500];
        static int[][]    vert    = new int[500][500];
        static int[][]    bleu    = new int[500][500];
     
        void main() {
     
            // chargement de l'image
            load("iceberg.jpg", false);
            // dessin du carré noir en bas à droite
            carre(375, 375);
            // scan de l'image en tableau
            for (int y = 0; y < 500; y++) {
                for (int x = 0; x < 500; x++) {
                    int rgb[] = getPixelColor(x, y);
                    rouge[x][y] = rgb[0];
                    vert[x][y] = rgb[1];
                    bleu[x][y] = rgb[2];
                }
            }
            // génération de l'odre des cases
            int[] tab = new int[15];
            for (int i = 0; i < 15; i++) {
                int result = random(1, 16);
                while (result == tab[0] || result == tab[1] || result == tab[2] || result == tab[3] || result == tab[4] || result == tab[5] || result == tab[6]
                        || result == tab[7] || result == tab[8] || result == tab[9] || result == tab[10] || result == tab[11] || result == tab[12]
                        || result == tab[13] || result == tab[14]) {
                    result = random(1, 16);
                }
                tab[i] = result;
     
            }
            // déclaration runnable détection position clic
            setRunnable(new Runnable() {
     
                public void run() {
     
                    int posX, posY, posXcase, posYcase;
                    posX = getX();
                    posY = getY();
                    // test runnable
                    // *println("X=" + posX + "Y=" + posY);
                    // numéro case image
                    // position x case
                    if (posX < 375) {
                        if (posX < 250) {
                            if (posX < 125) {
                                posXcase = 1;
                            } else {
                                posXcase = 2;
                            }
                        } else {
                            posXcase = 3;
                        }
                    } else {
                        posXcase = 4;
                    }
                    // position y case
                    if (posY < 375) {
                        if (posY < 250) {
                            if (posY < 125) {
                                posYcase = 1;
                            } else {
                                posYcase = 2;
                            }
                        } else {
                            posYcase = 3;
                        }
                    } else {
                        posYcase = 4;
                    }
                    // test posCase
                    // *println("posXcase =" + posXcase + "posYcase =" + posYcase);
                    if (posYcase == 1) {
                        if (posXcase == 1) {
                            numCase = 1;
                        } else if (posXcase == 2) {
                            numCase = 2;
                        } else if (posXcase == 3) {
                            numCase = 3;
                        } else {
                            numCase = 4;
                        }
                    } else if (posYcase == 2) {
                        if (posXcase == 1) {
                            numCase = 5;
                        } else if (posXcase == 2) {
                            numCase = 6;
                        } else if (posXcase == 3) {
                            numCase = 7;
                        } else {
                            numCase = 8;
                        }
                    } else if (posYcase == 3) {
                        if (posXcase == 1) {
                            numCase = 9;
                        } else if (posXcase == 2) {
                            numCase = 10;
                        } else if (posXcase == 3) {
                            numCase = 11;
                        } else {
                            numCase = 12;
                        }
                    } else if (posYcase == 4) {
                        if (posXcase == 1) {
                            numCase = 13;
                        } else if (posXcase == 2) {
                            numCase = 14;
                        } else if (posXcase == 3) {
                            numCase = 15;
                        } else {
                            numCase = 16;
                        }
                    }
                    // test numCase
                    println(numCase);
                }
            });
        }
     
        void carre(int x, int y) {
     
            for (int i = 0; i < 125; i++) {
                for (int k = 0; k < 125; k++) {
                    setPixel(x + k, y + i, 5, 5, 5);
                }
            }
        }
    Quelqu'un saurait-il m'indiquer comment corriger ce problème ?

    Merci beaucoup de votre aide

  2. #2
    Membre éclairé Avatar de JoeChip
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    536
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2008
    Messages : 536
    Points : 803
    Points
    803
    Par défaut
    Quel est ce problème ?
    Sans danger si utilisé conformément au mode d'emploi.

    (anciennement BenWillard, enfin moins anciennement que ... enfin bon c'est une longue histoire... Un genre de voyage dans le temps...)

  3. #3
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Avril 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Avril 2014
    Messages : 4
    Points : 4
    Points
    4
    Par défaut
    Je n'ai aucune idée de comment il faut m'y prendre...

  4. #4
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Mai 2017
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Lycéen
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2017
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Bonjour, avez vous trouvé une solution a votre problème car j'essaie de coder le même jeu et je rencontre le même problème que vous.
    Merci

  5. #5
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Salut,

    On ne sait pas vraiment quels étaient les 2 problèmes initiaux exactement (ils n'étaient pas explicites, parce que dire juste qu'on a un problème, ça ne veut rien dire), donc, que tu aies le même problème ne nous dit pas grand chose non plus. En plus, je doute que tu aies exactement le même code, si ? Ce serait mieux si tu créais une nouvelle discussion, que tu expliquais quel problème exactement tu rencontres, et que tu montres ce que tu as déjà fait, qu'on puisse voir ton code, et te donner une réponse circonstancielle.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

Discussions similaires

  1. [Langage/Algorithme] Jeu du taquin
    Par dekalima dans le forum C++Builder
    Réponses: 4
    Dernier message: 13/09/2010, 15h10
  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. Jeu de taquin /Puzzle 8
    Par saloua2200 dans le forum Défis C
    Réponses: 0
    Dernier message: 12/11/2009, 16h01
  4. [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