diff --git a/snake/fenetre.c b/snake/fenetre.c index 1399a2a..51946fa 100755 --- a/snake/fenetre.c +++ b/snake/fenetre.c @@ -6,6 +6,11 @@ #include <stdlib.h> #include <graph.h> #include "plateau_init.h" +<<<<<<< HEAD +======= + + +>>>>>>> 2d7d16101fad9327b5f27c54983bc5cff31508a3 @@ -13,7 +18,9 @@ int start (void) { couleur green, grey, yellow, red, black, white; - int** tableau = plateau_init(); + int* plateau_tete_queue = plateau_init(); + + int** tableau = plateau_tete_queue[0]; int i, j; @@ -26,6 +33,7 @@ int start (void) { int score=0; +<<<<<<< HEAD char* num_score = "score : 00000"; @@ -35,6 +43,8 @@ int start (void) { CreerFenetre(10,10,1450,840); +======= +>>>>>>> 2d7d16101fad9327b5f27c54983bc5cff31508a3 /* remplisage du fond d'écran */ @@ -95,7 +105,7 @@ int start (void) { /* remplissage du plateau de jeux avec les couleur adéquate */ - for (i = 0; i < LIGNES; i++) { + for (i = 0; i < LIGNES; i++) { for (j = 0; j < COLONNES; j++) { if ( tableau[i][j] == 0) { @@ -105,7 +115,7 @@ int start (void) { RemplirRectangle(20*(j+1),20*(i+1),20,20); } - if ( tableau[i][j] == 1 || tableau[i][j] == -1 || tableau[i][j] == -2) { + if ( tableau[i][j] == 1) { yellow = CouleurParComposante(255,255,0); ChoisirCouleurDessin(yellow); @@ -136,13 +146,6 @@ int start (void) { free(tableau); - - - - Touche(); - FermerGraphique(); - - diff --git a/snake/main.c b/snake/main.c index 4a3dba1..cebc483 100644 --- a/snake/main.c +++ b/snake/main.c @@ -3,8 +3,6 @@ #include <graph.h> #include "fenetre.h" #include "plateau_init.h" -#include "search_tete.h" -#include "search_queue.h" #include "deplacement.h" @@ -15,16 +13,17 @@ int main(void) { short int jeu = 1; - int** plateau = plateau_init(); + int* plateau = plateau_init(); unsigned long suivant; - int* tete = NULL, queue = NULL; + int* tete = NULL; + int* queue = NULL; char sens = "bas"; - /* alloacation des tableau tete et queue qui prendront les coordonnées de la tête et la queue */ + /* alloacation des tableau tete et queue qui prendront les coordonnées de la tête et la queue tete = malloc(2*sizeof(short int)); @@ -32,7 +31,7 @@ int main(void) { - suiavnt = Microsencondes() + CYCLE; + /*suiavnt = Microsencondes() + CYCLE;*/ InitialiserGraphique(); @@ -43,7 +42,7 @@ int main(void) { start(); - while ( jeu = 1) { + /* while ( jeu = 1) { if (Microsecondes() > suivant) { @@ -51,7 +50,7 @@ int main(void) { deplacement(plateau, tete, queue); - } + }*/ Touche(); diff --git a/snake/plateau_init.c b/snake/plateau_init.c index a07c74b..a26ab88 100755 --- a/snake/plateau_init.c +++ b/snake/plateau_init.c @@ -13,22 +13,36 @@ -int** plateau_init(void) { +int* plateau_init(void) { - int ligne_pomme, colonne_pomme, i; + int ligne_pomme, colonne_pomme, i, j; - int** tableau = NULL; + int* plateau_tete_queue = NULL; + + int* tete = NULL; + int* queue = NULL; + + int** plateau = NULL; srand(time(NULL)); + + /* allocation du tableau qui renvoie les addresses du plateau, de la tete et de la queue */ + + plateau_tete_queue = malloc(3 * sizeof(long double)); + + tete = malloc(2*sizeof(short int)); + + queue = malloc(2*sizeof(short int)); + /* allocation du tableau dans le tas */ - tableau = calloc(LIGNES, sizeof(double)); + plateau = calloc(LIGNES, sizeof(double)); for ( i = 0; i < LIGNES; i++) { - tableau[i] = calloc(COLONNES, sizeof(int)); + plateau[i] = calloc(COLONNES, sizeof(int)); } @@ -37,13 +51,17 @@ int** plateau_init(void) { /* positionnement du serpent et marquage de la tete et la queue */ - tableau[(LIGNES/2)-5][COLONNES/2] = -2; + tete[0] = (LIGNES/2)-5 ; + tete[1] = COLONNES/2 ; - tableau[((LIGNES/2)-5)+TAILLE_SERPENT-1][COLONNES/2] = -1; + - for (i = 1; i < TAILLE_SERPENT - 1; i++) { + queue[0] = ((LIGNES/2)-5)+TAILLE_SERPENT-1; + queue[1] = COLONNES/2; - tableau[((LIGNES/2)-5)+i][COLONNES/2] = 1; + for (i = 0; i < TAILLE_SERPENT ; i++) { + + plateau[((LIGNES/2)-5)+i][COLONNES/2] = 1; } @@ -60,7 +78,7 @@ int** plateau_init(void) { /* teste pour faire apparaitre exactement 5 pommes */ - while (tableau[ligne_pomme][colonne_pomme] == 2 || tableau[ligne_pomme][colonne_pomme] == 1) { + while (plateau[ligne_pomme][colonne_pomme] == 2 || plateau[ligne_pomme][colonne_pomme] == 1) { ligne_pomme = rand() % 40; colonne_pomme = rand() % 60; @@ -70,13 +88,18 @@ int** plateau_init(void) { /* le chiffre "2" definit une pomme */ - tableau[ligne_pomme][colonne_pomme] = 2; + plateau[ligne_pomme][colonne_pomme] = 2; } - + plateau_tete_queue[0] = **plateau; + + plateau_tete_queue[1] = *tete; + + plateau_tete_queue[2] = *queue; + - return tableau; + return plateau_tete_queue; } diff --git a/snake/plateau_init.h b/snake/plateau_init.h index ef7e397..00b1591 100644 --- a/snake/plateau_init.h +++ b/snake/plateau_init.h @@ -15,7 +15,7 @@ -int** plateau_init(void); +int* plateau_init(void);