tom strehle / Mbed 2 deprecated projetv2

Dependencies:   mbed

draw.h

Committer:
guibouu
Date:
2022-03-28
Revision:
11:0b85a680ad28
Parent:
10:6f9340af7926

File content as of revision 11:0b85a680ad28:

int ext;
int temps=0;   
int effet[2]={14,14};
int effet1[2]={14,14};
int effet2[2]={14,14};
int effet3[2]={14,14};
int effet4[2]={14,14};
//tir
int tir=0;
int tir2=0;
int tirx;
int tirx2;

int autoritir1=1;
int autoritir2=1;

//menu variable

int menubleu=0;
int menub=0; 
int menurouge=0;
int menur=0;
int zeno=1;

//mob
int mvie =100;
int xmob1 =20;
int ymob1=20;
int xdepm=0;
int ydepm=0;
//mob 2
int mvie2=100;
int xmob2=13;
int ymob2=25;
int xdepm2=6;
int ydepm2=0;
//deplacement mob

  int timedep=0;
  int timetab=0;
  int tabdep[18]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18};

  
   
//menu
void draw()   // ici vous exprimez vos dessins (jamais de delai dans cette boucle)
  { // DEBUT  de vos dessins   
      if(zeno==1)
{
        if(ccy*1.4>=3 && ccx<4 && ccx>-4 && ccy*1.4<11)
  {
            menubleu=menubleu+1; 
            if(menubleu>=20)
 {
                menubleu=menubleu-20;
                menub=menub+1;
     }
     
  }
  //bleu moins
        if(ccy<=0)
  {
            menubleu=menubleu+1; 
            if(menubleu>=10&&menub>0)
 {
                menubleu=menubleu-10;
                 menub=menub+-1;
     }
     
  }
  
   //rouge plus
        if(ccy*1.4<=-4 && ccx<4 && ccx>-4 && ccy*1.4>-11)
  {
            menurouge=menurouge+1; 
            if(menurouge>=20)
 {
            menurouge=menurouge-20;
            menur=menur+1;
     }
     
  }
  //bleu moins
         if(ccy>=0)
  {
            menurouge=menurouge+1; 
            if(menurouge>=10&&menur>0)
 {
                menurouge=menurouge-10;
                 menur=menur+-1;
     }
     
  }
        carre(0,16,menub,16,1,0,0);
         carre(0,0,menur,16,0,0,1);
  
  
         carre(13,6,7,7,1,1,1);
        carre(15,18,3,7,1,1,1);
         carre(13,20,7,3,1,1,1);
        carre(14,19,5,5,1,1,1);
        if(menub>=35)
{
             zeno=0;
}
pix(16+ccx,15+ccy*1.4,1,1,0);

pix(16+ccx,14+ccy*1.4,0,1,0);
pix(16+ccx,16+ccy*1.4,0,1,0);
pix(15+ccx,15+ccy*1.4,0,1,0);
pix(17+ccx,15+ccy*1.4,0,1,0);
  } 
  
  //variables  
int ccxx=ccx*1.3;  
int ccyy=ccy*1.3; 
int vaisseaux = 15;
int vaisseauy =10;//lieu de base du vaisseau







if(zeno==0)
{
        //mob
        mob(xmob1,ymob1,mvie);
        mob(xmob2,ymob2,mvie2);
        //dégats mobs
        hitmob(xmob1,ymob1,mvie,15+vaisseauy+ccyy+tir2/4,vaisseauy+ccyy+tir/4,tirx2,tirx,autoritir2,autoritir1);
        hitmob2(xmob2,ymob2,mvie2,15+vaisseauy+ccyy+tir2/4,vaisseauy+ccyy+tir/4,tirx2,tirx,autoritir2,autoritir1);
        //déplacement
        timedep=timedep+1;
        timetab=timetab+1;
        if(timetab>17)
        {
            timetab=timetab-17;
            }
                 //mouvement
        if(timedep>15)
        {
            timedep=timedep-15;
            //mob1
            if(xdepm>0)
            {
                xmob1=xmob1+1;
                xdepm=xdepm-1;
                }
                
                if(xdepm<0)
            {
                xmob1=xmob1-1;
                 xdepm=xdepm+1;
                }
                //mob2
                 if(xdepm2>0)
            {
                xmob2=xmob2+1;
                xdepm2=xdepm2-1;
                }
                
                if(xdepm2<0)
            {
                xmob2=xmob2-1;
                 xdepm2=xdepm2+1;
                }
            }
                    
            //deplacement incrementation
                    //mob1  
       if(xdepm==0)
       {
            if (xmob1>=15)
        {
                xdepm=xdepm-tabdep[timetab];
            }
            else
            {
                xdepm=xdepm+tabdep[timetab];
                }
                }
                    //mob2
                    if(xdepm2==0)
       {
            if (xmob2>=15)
        {
                xdepm2=xdepm2-tabdep[timetab];
            }
            else
            {
                xdepm2=xdepm2+tabdep[timetab];
                }
                }
        //effets vaisseau
        temps=temps+1;
        if(temps>=30)
        {
            temps=temps-30;
            effet[0]=vaisseaux+ccxx;
             effet[1]=vaisseauy+ccyy;
            }
             if(temps==5)
        {
            effet1[0]=vaisseaux+ccxx;
             effet1[1]=vaisseauy+ccyy;
            }
                if(temps==10)
        {
            effet2[0]=vaisseaux+ccxx;
             effet2[1]=vaisseauy+ccyy;
            }
                if(temps==15)
        {
            effet3[0]=vaisseaux+ccxx;
             effet3[1]=vaisseauy+ccyy;
            }
                if(temps==20)
        {
            effet4[0]=vaisseaux+ccxx;
             effet4[1]=vaisseauy+ccyy;
            }
            

       pix ( effet[0], effet[1],0,0,1);
       pix ( effet1[0], effet1[1],0,0,1);
       pix ( effet2[0], effet2[1],0,0,1);
       pix ( effet3[0], effet3[1],0,0,1);
       pix ( effet4[0], effet4[1],0,0,1);
//tir1
tir=tir+1;
        if(tir>=120)
        {
            tir=tir-120;
            tirx=vaisseaux+ccxx;
            autoritir1=1;
            }
            if(vaisseauy+ccyy+tir/4<=32 && autoritir1==1)
            {
pix(tirx,vaisseauy+ccyy+tir/4,1,0,1);
}
//tir2
tir2=tir2+1;
if(tir2>=60)
        {
            tir2=tir2-120;
            tirx2=vaisseaux+ccxx;
            autoritir2=1;
            }
            if(15+vaisseauy+ccyy+tir2/4<=32 && autoritir2==1)
            {
pix(tirx2,15+vaisseauy+ccyy+tir2/4,1,0,1);
}
       
 //vaisseau

pix ( vaisseaux+ccxx, vaisseauy+ccyy,1,1,1); 
pix ( vaisseaux+ccxx, vaisseauy+1+ccyy,1,1,1); 
pix ( vaisseaux+ccxx, vaisseauy-1+ccyy,1,1,1); 
pix ( vaisseaux+1+ccxx, vaisseauy-1+ccyy,1,1,1); 
pix ( vaisseaux-1+ccxx, vaisseauy-1+ccyy,1,1,1); 
           
}
/*
  serie.printf("D%dX \r\n",ccxx+15)    ;    // envoyer un texte en liaison serie 
   serie.printf("D%dY \r\n",ccyy+15)    ; 
    charr(14, 18 , ext);
    */
  } 
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  // FIN de vos dessins 
    
  //  fonctions et  variables deja créées 
  
  // pix ( x , y , r , v , b )   dessine un pixel de couleur en xy
  //    x et y position du pixel à dessiner ( 0 à 31 )
  //    r v b  quantité de r v b codée de 0 à 7 , 7 c'est lumineux 
  
  // ptnum(x, y , nombre )   écrit un nombre en rouge en  x y 
  //    x et y  position ou ecrire ( 0 a 31)   ... couleur obligée ROUGE
  //    nombre ou variable .. un entier  compris entre 0 et 99 
  
  //  circle( x , y , r ) dessine un cercle de centre xy rayon r
  //     x et y  position du centre ( 0 à 31)
  //     r rayon du cercle 
  //     la couleur est prédéfinie ( 0 à 7) dans br bv bb
  
  // charr( x , y , "char') ecrit carractère en x y  avec br bv bb
  //     tous les carractères n'existent pas 
  
  //  ccx ccy    variables portant l'accéleration X et Y +-75  pour +- 3G 
  //  accx  accy variables portant l'accélération X et Y +-100 pour +- 1G