Exemplo n.º 1
0
void rodarSemaforoPedestre(Sinal * sinal, Display2Timer * timer) {
    Semaforo2 *semaforo = &sinal->semaforoPedestre;

    tempo_ms(500);

    semaforo->verde(semaforo);
    timer->intervaloDecrescente(timer, 10, 0, 500);
    tempo_ms(100);
    desliga(&timer->dezena);
    desliga(&timer->unidade);

    semaforo->vermelho(semaforo);
    tempo_ms(500);
}
Exemplo n.º 2
0
int main(void)
{
   int gdriver = DETECT,x, gmode,lin,col,sta,stant,ml1[16],ml2[16],mc1[19],mc2[19];
   for(i=0;i<16;i++)
     for(j=0;j<19;j++)
	mt[j] [i]=0;
   i=0;j=0;
   initgraph(&gdriver, &gmode, "c:\\bc\\bgi");
   ml2[0]=65;
   for(lin=40;lin<=440;lin+=25,i++){
      line(95,lin,570,lin);
      if(lin<440){
	 ml1[i]=lin;
	 if(i>0)
	   ml2[i-1]=ml1[i];}}
   ml2[15]=440;
   i=0;
   for(col=95;col<=570;col=col+25,i++){
     line(col,40,col,440);
     if(col<570){
	mc1[i]=col;
	if(i>0)
	   mc2[i-1]=mc1[i];}}
   mc2[18]=570;
   mouse();
   while(!(kbhit())){
	stant=sta;
	lin=(linmouse()*8);
	col=(colmouse()*8);
	sta=status();
      if(lin>40 && lin<440){
	for(i=0;lin>ml1[i] ^ lin<ml2[i];i++);}
      if(col>95 && col<570 && col!=320 && col!=120 && col!=520){
	for(j=0;col>mc1[j] ^ col<mc2[j];j++);}
      if(lin>=ml1[i] && lin<=ml2[i] && col>=mc1[j] && col<=mc2[j] ){
	    if(stant==0 && sta==1){
	      desliga();
	      bar(mc1[j]+2,ml1[i]+2,mc2[j]-2,ml2[i]-2);
	    /*if(mt[j][i]==0)
	      botao(mc1[j]+4,ml1[i]+4,mc2[j]-3,ml2[i]-4,0);
	    else
	      botao(mc1[j]+4,ml1[i]+4,mc2[j]-3,ml2[i]-4,1);*/
	      mouse();
	      mt[j][i]=1;}
	    else if(stant==0 && sta==2){
		 setfillstyle( SOLID_FILL,0);
		 desliga();
		 bar(mc1[j]+2,ml1[i]+2,mc2[j]-2,ml2[i]-2);
		 mouse();
		 mt[j][i]=0;
		 setfillstyle( SOLID_FILL,15);}}

   }
   desliga();
   cleardevice();
   salva();
   cleardevice();
   sta=0;
   flushall();
   /*while(!(kbhit())){
      mudamouse(_DS,(unsigned) dorme1.imag,7,7);
      mouse();
      delay(500);
      mudamouse(_DS,(unsigned) dorme2.imag,7,7);
      mouse();
      delay(500);}*/
   closegraph();
   return 0;
}
Exemplo n.º 3
0
int main(void)
{
   int gdriver = DETECT, gmode, errorcode,lin=160,col=320,r=70,li, co,sta,C,L;
   char msg[]="      Eu te amo!!!!!!! ",ma[]="Marclaine!!!!...",m[1];
   int n[16],i,j,l=1;
   n[0]=50;n[1]=110;n[2]=152;n[3]=189;n[4]=229;n[5]=254;n[6]=296;n[7]=323;
   n[8]=373;n[9]=413;n[10]=435;n[11]=457;n[12]=479;n[13]=501;n[14]=523;n[15]=545;
   initgraph(&gdriver, &gmode, "c:\\bc\\bgi");
   errorcode = graphresult();
   if (errorcode != grOk)
   {
      printf("Graphics error: %s\n", grapherrormsg(errorcode));
      exit(1);
   }
   setcolor(9);
   settextstyle(TRIPLEX_FONT, HORIZ_DIR, 8);
   for(i=0;ma[i]!='\0';i++){
     for(j=480;j>=60;j--){
       m[0]=ma[i];
       m[1]='\0';
       setcolor(l);
       outtextxy(n[i],j,m);
       delay(10);
       setcolor(0);
       outtextxy(n[i],j,m);}
       setcolor(l);
       outtextxy(n[i],j,m);l++;
       if(l==16)
	  l=1;}
   mouse();
   for(i=480;i>=240;i--){
     mousexy(i,320);
     delay(10);}
   botao(300,200,330,230,0);
   li=(linmouse()*8);
   co=(colmouse()*8);
   sta=status();
   while(!(co>=300 && co<=330 && li>=200 && li<=230) && sta!=1){
	   sta=status();}
   C=0;
   L=0;
	while(sta==1)
      {
       if(C==0 && L==0)
	botao(300,200,330,230,1);
       C=1;
       sta=status();
       li=(linmouse()*8);
       co=(colmouse()*8);
       if(!(co>=300 && co<=330 && li>=200 && li<=230)){
	  if(C==1 && L==0)
	     botao(300,200,330,230,0);
	     sta=1;L=1;}
       else
	    if(C==1 && L==1){
	       L=0;C=0;}
      }
      desliga();
      cleardevice();
      setcolor(4);
      settextstyle(TRIPLEX_FONT, HORIZ_DIR, 6);
      settextjustify(CENTER_TEXT, CENTER_TEXT);
      outtextxy(270,28, msg);
  while(!(kbhit())){
  for(r=0;r<90;r++){
   setcolor(4);
   cardio(col,lin,r);
   delay(9);
   if(kbhit())
      break;}
  for(;r>-1;r--){
   delay(9);
   setcolor(0);
   cardio(col,lin,r);
   if(kbhit())
      break;}}
   getch();
   closegraph();
   return 0;
}