Skip to content
Snippets Groups Projects
Commit 4f6f0d45 authored by LILianHUb's avatar LILianHUb
Browse files

fonctionnel

parent ea04e1cd
No related branches found
No related tags found
No related merge requests found
......@@ -110,7 +110,7 @@ int nbVoisinVivantTor(int **tab, int i, int j, int ligne, int colonne)
{
if (k != 0 || l != 0)
{
if (tab[(i + k + ligne) % ligne][(j + l + colonne) % colonne] == '1')
if (tab[(i + k + ligne) % ligne][(j + l + colonne) % colonne] == 1)
{
cpt++;
}
......@@ -120,21 +120,28 @@ int nbVoisinVivantTor(int **tab, int i, int j, int ligne, int colonne)
return cpt;
}
void VieTore(int **tab, int **cpyTab, int vie[TAILLE_MASQUE], int mort[TAILLE_MASQUE], int ligne, int colonne)
void VieTore(int **moment_t, int **tmp, int masqueVie[TAILLE_MASQUE], int masqueMort[TAILLE_MASQUE], int nb_lignes, int nb_colonnes)
{
copyTab(tab, cpyTab, ligne, colonne);
copyTab(moment_t, tmp, nb_lignes, nb_colonnes);
for (int i = 0; i < ligne; i++)
int i, j, m;
for (i = 0; i < nb_lignes; i++)
{
for (int j = 0; j < colonne; j++)
for (j = 0; j < nb_colonnes; j++)
{
if (cpyTab[i][j] == 1 && vie[nbVoisinVivantTor(cpyTab, i, j, ligne, colonne)] == 0)
m = nbVoisinVivantTor(tmp, i, j, nb_lignes, nb_colonnes);
if (tmp[i][j] == 1)
{
tab[i][j] = 0;
moment_t[i][j] = masqueVie[m];
}
if (cpyTab[i][j] == 1 && mort[nbVoisinVivantTor(cpyTab, i, j, ligne, colonne)] == 1)
else
{
tab[i][j] = 1;
moment_t[i][j] = masqueMort[m];
}
}
}
......@@ -166,8 +173,8 @@ int nbvoisinsLimite(int **moment_t, int ligne, int colonne, int nb_lignes, int n
/* 1 Itération du jeu de la vie */
void iterationLimite(int **moment_t, int **tmp, int nb_lignes, int nb_colonnes,
int masqueVie[TAILLE_MASQUE],
int masqueMort[TAILLE_MASQUE])
int masqueVie[TAILLE_MASQUE],
int masqueMort[TAILLE_MASQUE])
{
copyTab(moment_t, tmp, nb_lignes, nb_colonnes);
......
......@@ -9,7 +9,7 @@ void ClearTab(int **tab, int ligne, int colonne);
int **creer_tableau(int nb_lignes, int nb_colonnes);
void liberer_tableau(int **tableau, int nb_lignes);
void afficher_tableau(int **tableau, int nb_lignes, int nb_colonnes);
void VieTore(int **tab, int **cpyTab, int vie[TAILLE_MASQUE], int mort[TAILLE_MASQUE], int ligne, int colonne);
void VieTore(int **moment_t, int **tmp, int masqueVie[TAILLE_MASQUE], int masqueMort[TAILLE_MASQUE], int nb_lignes, int nb_colonnes);
int TestStagne(int **tab1, int **tab2, int ligne, int colonne);
void iterationLimite(int **moment_t, int **tmp, int nb_lignes, int nb_colonnes, int masqueVie[TAILLE_MASQUE], int masqueMort[TAILLE_MASQUE]);
#endif
......@@ -180,7 +180,6 @@ void ChangeEtat(int **tab, int FenetreW, int FenetreH, int x, int y, int nbLigne
{
if (x > 0 && x < FenetreW && y > 25 && y < FenetreH)
{
printf("%d et %d\n", x, y - 25);
int colonneTab = x / (FenetreW / nbColonne);
int ligneTab = (y - 25) / (FenetreH / nbLigne);
......
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
......@@ -11,7 +11,6 @@
#define NB_LIGNE 25
#define NB_COLONNE 25
int main(int argc, char **argv)
{
(void)argc;
......@@ -69,14 +68,13 @@ int main(int argc, char **argv)
int masqueVie[TAILLE_MASQUE] = {0, 0, 1, 1, 0, 0, 0, 0, 0};
int masqueMort[TAILLE_MASQUE] = {0, 0, 0, 1, 0, 0, 0, 0, 0};
int ** tab1 = creer_tableau(NB_LIGNE, NB_COLONNE);
int ** tab2 = creer_tableau(NB_LIGNE, NB_COLONNE);
int **tab1 = creer_tableau(NB_LIGNE, NB_COLONNE);
int **tab2 = creer_tableau(NB_LIGNE, NB_COLONNE);
/*Gestion Vitesse*/
int GestionVitesse = 50;
int stagne = 0;
/*Evenement*/
......@@ -161,15 +159,13 @@ int main(int argc, char **argv)
{
VieTore(tab1, tab2, masqueVie, masqueMort, NB_LIGNE, NB_COLONNE);
}
if (!stagne)
{
stagne = TestStagne(tab1, tab2, NB_LIGNE, NB_COLONNE);
}
}
if(!stagne){
stagne = TestStagne(tab1, tab2, NB_LIGNE, NB_COLONNE);
}
Affichage(window,renderer,FenetreW, FenetreH, policeTitre, masqueVie, masqueMort, modeJeu, tab1, NB_LIGNE, NB_COLONNE, stagne);
Affichage(window, renderer, FenetreW, FenetreH, policeTitre, masqueVie, masqueMort, modeJeu, tab1, NB_LIGNE, NB_COLONNE, stagne);
SDL_RenderPresent(renderer);
SDL_Delay(GestionVitesse); // depend pour fps avec horloge
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment