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

Candy Crush Projet



  1. #1
    stan4950

    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
    Arzhur

    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
    stan4950

    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
    lou_ibmix_xi

    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 chris111 dans le forum Physique
    Réponses: 1
    Dernier message: 26/12/2010, 16h38
  2. Réponses: 6
    Dernier message: 23/10/2007, 19h38