Candy Crush Projet
Répondre à la discussion
Affichage des résultats 1 à 4 sur 4

Candy Crush Projet



  1. #1
    invited9385e42

    Candy Crush Projet


    ------

    Bonjour a tous !!!

    Je suis un ultra débutant en c++ et voilà que j'ai un projet à faire sur le célèbre jeu Candy Crush. L'idée est de programmer ce jeu sans utiliser de graphismes. Du coup, j'ai commencé à plancher dessus sauf que j'aurais besoin de votre aide pour une étape assez cruciale pour moi. J'ai bien initialisé mon tableau aléatoirement, fais un changement de variable pour que les entiers deviennent des caractères, réaliser un menu (avec switch etc...). Le problème est que lorsque j'affiche mon tableau aléatoire (de 4 colonnes par 4 grilles) j'ai par exemple 3 lettres qui s'alignent consécutivement et donc je dois créer une fonction qui la supprime avant qu'elle ne s'affiche pour n'afficher qu'un tableau aléatoire mais ou les lettres ne s'alignent pas plus de 2 fois consécutivement. Pour cela, j'ai tenté en vain de faire une fonction de type check (avec une condition if(tab[i][j]==tab[i][j+1] && tab[i][j]=tab[i][j+2]; tab[i][j+2]=1-tab[i][j+1] et ensuite printf tab[i][j+2]) mais sa ne marche pas enfin sa m'affiche une valeur en plus (peut etre qu'il faut que je fasse une fonction change pour qu'elle change la valeur précédente pour la nouvelle, mais à vous de me le confirmer. De plus, j'ai entendu parler de faire un masque (c'est a dire un tableau masqué rempli de 0 qui va généré aléatoirement des nombres jusqu'a qu'il ne trouve aucun enchainenement de 3 cases consécutives...)/. Que me conseillez vous, est ce que ma premiere fonction semble t elle exploitable ou pas du tout.......

    (bcp de texte = débutant ^^)


    Merci

    -----

  2. #2
    invitef35ebd48

    Re : Candy Crush Projet

    Bonjour,

    Tu cherches un moyen de remplir un tableau aléatoirement mais sans que 3 cases consécutives aient la même valeurs ?

    si c'est ça, au moment de générer une valeur, prend en compte les 2 valeurs précédentes et boucle jusqu’à trouver une valeur qui convienne.

  3. #3
    invited9385e42

    Re : Candy Crush Projet

    Oui c'est ça ! Mais je n'arrive pas a le mettre en forme, enfin est ce que sa donnerait ça ?

    if ( (T[i][j] == T[i][j+1]) && (T[i][j] == T[i][j+2]) ) {
    T[i][j+2]=1-T[i][j+1]
    printf("T[i][j+2]");


    ?

  4. #4
    inviteb9f49292

    Re : Candy Crush Projet

    A priori non, je le ferrai au moment de remplir le tableau avec un truc du genre:
    Code:
    for (i = 0; i < NB_LIGNES; i++) {
        T[i][0] = rand ();
        T[i][1] = rand ();
        for (j = 2; j < NB_COLONNES; j++) {
            do {
                T[i][j] = rand ();
            } while ((T[i][j-2] == T[i][j-1]) && (T[i][j-1] == T[i][j]));
        }
    }
    pour traiter le cas de 3 valeurs consécutives en ligne seulement.

  5. A voir en vidéo sur Futura

Discussions similaires

  1. Sand crush test
    Par invite2c9a6487 dans le forum Physique
    Réponses: 1
    Dernier message: 26/12/2010, 17h38
  2. Réponses: 6
    Dernier message: 23/10/2007, 20h38