#include "AdnForme.h"
// Génère les fichiers c.jo et c.joa
void genereFichierJo(char c)
{

jo joc = mesjo[c-'a'];

  // Nom du fichier jo
  char nomfichierjo[32];
  snprintf(nomfichierjo, 32, "%c.jo", c);
  // Nom du fichier joa
  char nomfichierjoa[32];
  snprintf(nomfichierjoa, 32, "%c.joa", c);

  // Fichier jo
  FILE* fichierjo;
  if (!(fichierjo = fopen(nomfichierjo, "wb")))
   {
    exit(-1);
   }
  // Fichier joa
  FILE* fichierjoa;
  if (!(fichierjoa = fopen(nomfichierjoa, "wb")))
   {
    exit(-1);
   }

int amplibase[4];
      for(int i=0; i<4; i++)
       {amplibase[i] = joc.changeamplitude[i];}


int dureebase[4];
      for(int i=0; i<4; i++)
       {dureebase[i] = joc.dureefront[i];}

  for(int duree = joc.duree; duree>0; duree--)
   {


    // monte laforceb
    for(int laforcehbase = joc.laforceh; laforcehbase > 0; laforcehbase--)
     {
      for(int i=0; i<4; i++)
       {
        if(i%2)
         joc.amplitude[i] -= joc.changeamplitude[i];
        else
         joc.amplitude[i] += joc.changeamplitude[i];

        if(i%2)
        joc.dureefront[i] -= joc.changedureefront[i];

        if(joc.dureefront[i] < 6)
         joc.dureefront[i] = 6;
          fprintf(fichierjo,  "%c%c",    (char)joc.amplitude[i], (char)joc.dureefront[i]);
          fprintf(fichierjoa, "%d %d\n", (unsigned char)joc.amplitude[i], (unsigned char)joc.dureefront[i]);

       }



     }


    int variforce = joc.dureefront[0];
    int variforce1 = joc.dureefront[1];
	joc.dureefront[0] = joc.dureefront[2];
	joc.dureefront[1] = joc.dureefront[3];
	joc.dureefront[2] = variforce;
	joc.dureefront[3] = variforce1;


    // Descente laforceh
    for(int laforcehbase = joc.laforceb; laforcehbase > 0; laforcehbase--)
     {
      for(int i=0; i<4; i++)
       {
        if(i%2)
         joc.amplitude[i] += joc.changeamplitude[i]* 0.1;
        else
         joc.amplitude[i] -= joc.changeamplitude[i]* 0.1;


          fprintf(fichierjo,  "%c%c",    (char)joc.amplitude[i], (char)joc.dureefront[i]);
          fprintf(fichierjoa, "%d %d\n", (unsigned char)joc.amplitude[i], (unsigned char)joc.dureefront[i]);
       }

      for(int i=0; i<4; i++)
       {joc.changeamplitude[i]  = amplibase[i];}


      for(int i=0; i<4; i++)
       {joc.dureefront[i] = dureebase[i]; }
     }


   }
    // Écriture des zones mémoires
    for(int zonememoire = joc.combiendezonememoire; zonememoire > 0 ; zonememoire--)
     {
      fprintf(fichierjo,  "%c%c", 130, 250);
      fprintf(fichierjoa, "%d %d\n", 130, 250);
      fprintf(fichierjo,  "%c%c", 128, 250);
      fprintf(fichierjoa, "%d %d\n", 128, 250);
     }
  fclose(fichierjo);
  fclose(fichierjoa);
}
