예제 #1
0
int main()
{
    vidas(1000);
    Barra_salud(4);
    explocion();
    jugar();
    getch();
}
예제 #2
0
int main(){
    
    vidas(Num_vidas);
    Barra_salud(Corazones);
    gotoxy(ix,iy);puts(avion_l1);
    gotoxy(ix,iy+1);puts(avion_l2);
    gotoxy(ix,iy+2);puts(avion_l3);
    
    while(Num_vidas > 0){
    jugar();
}
    
    getch();
    return 0;
    }   
예제 #3
0
void jugar(void){
     
     //rutina asteroides
     
     gotoxy(x,y); printf("%c",2);
     gotoxy(xx,yy); printf("%c",2);
     gotoxy(x1,y1); printf("%c",2);
     gotoxy(x2,y2); printf("%c",2);
     gotoxy(x3,y3); printf("%c",2);
     gotoxy(x4,y4); printf("%c",2);
     gotoxy(x5,y5); printf("%c",2);
     gotoxy(x6,y6); printf("%c",2);
     gotoxy(x7,y7); printf("%c",2);
     gotoxy(x8,y8); printf("%c",2);
     Sleep(70);
     
     gotoxy(x,y); printf(" ");
     gotoxy(xx,yy); printf(" ");
     gotoxy(x1,y1); printf(" ");
     gotoxy(x2,y2); printf(" ");
     gotoxy(x3,y3); printf(" ");
     gotoxy(x4,y4); printf(" ");
     gotoxy(x5,y5); printf(" ");
     gotoxy(x6,y6); printf(" ");
     gotoxy(x7,y7); printf(" ");
     gotoxy(x8,y8); printf(" ");
     if(y > 20){
          
          y=4;
          x= (rand() % 70) + 6;
          }
     if(yy > 20){
          
          yy=4;
          xx= (rand() % 70) + 6;
          }
     if(y1 > 20){
          
          y1=4;
          x1= (rand() % 70) + 6;
          }
     if(y2 > 20){
          
          y2=4;
          x2= (rand() % 70) + 6;
          }
     if(y3 > 20){
          
          y3=4;
          x3= (rand() % 70) + 6;
          }
          
     if(y4 > 20){
          
          y4=4;
          x4= (rand() % 70) + 6;
          }     
     if(y5 > 20){
          
          y5=4;
          x5= (rand() % 70) + 6;
          }
     
     if(y6 > 20){
          
          y6=4;
          x6= (rand() % 70) + 6;
          }
     
     if(y7 > 20){
          
          y7=4;
          x7= (rand() % 70) + 6;
          }
     
     if(y8 > 20){
          
          y8=4;
          x8= (rand() % 70) + 6;
          }
     
     
     
     
     //Mover avion
     if(kbhit()){
                 unsigned char tecla = getch();
                 
                 switch(tecla){
                               case IZQUIERDA:
                                    if(ix>4){
                                            
                                            gotoxy(ix,iy);puts(borrar_avion);
                                            gotoxy(ix,iy+1);puts(borrar_avion);
                                            gotoxy(ix,iy+2);puts(borrar_avion);
                                            ix-=2;

                                            gotoxy(ix,iy);puts(avion_l1);
                                            gotoxy(ix,iy+1);puts(avion_l2);
                                            gotoxy(ix,iy+2);puts(avion_l3);

                                            }
                                            break;
                                case DERECHA:
                                     if (ix<70){
                                            
                                            gotoxy(ix,iy);puts(borrar_avion);
                                            gotoxy(ix,iy+1);puts(borrar_avion);
                                            gotoxy(ix,iy+2);puts(borrar_avion);
                                            ix+=2;

                                            gotoxy(ix,iy);puts(avion_l1);
                                            gotoxy(ix,iy+1);puts(avion_l2);
                                            gotoxy(ix,iy+2);puts(avion_l3);

                                               }
                               break;
                               
                               }//switch
     }//if
     
     //Golpes asteroides
     
     if((x>ix && x<ix+6 && y==iy-1)||(xx>ix && xx<ix+6 && yy==iy-1)||(x1>ix && x1<ix+6 && y1==iy-1)||(x2>ix && x2<ix+6 && y2==iy-1)||(x3>ix && x3<ix+6 && y3==iy-1)||(x4>ix && x4<ix+6 && y4==iy-1)||(x5>ix && x5<ix+6 && y5==iy-1)||(x6>ix && x6<ix+6 && y6==iy-1)||(x7>ix && x7<ix+6 && y7==iy-1)||(x8>ix && x8<ix+6 && y8==iy-1)){
              Corazones --;
              Barra_salud(Corazones);
              printf("\a");
              }
     
     gotoxy(ix,iy);puts(avion_l1);
     gotoxy(ix,iy+1);puts(avion_l2);
     gotoxy(ix,iy+2);puts(avion_l3);
     
     if(!Corazones){
                    Num_vidas--;
                    vidas(Num_vidas);
                    Explosion();
                    Corazones = 3;
                    Barra_salud(Corazones);
                  }
     
     y++;
     yy++;
     y1++;
     y2++;
     y3++;
     y4++;
     y5++;
     y6++;
     y7++;
     y8++;     
     
     }
예제 #4
0
////////////////////////MAIN/////////////////////////////
void main()
{
    //iniciar modo grafico
    modo_grafico();
    randomize();

    //pido memoria para los rectangulos
    //y les paso la coorenadas
    crear_imagenes();
    crear_estrellas();
    while(i<=21)
    {
        res.y=y;
        res.x=x;
        if(i%7==0)
        {
            y+=30;
            x=20;
        }
        else
        {
            x+=50;
        }
        crear_rectangulos(res);
        i++;
    }


    menu();
    presentacion();
    tecla=10;
    while(continuar!='n'&&continuar!='N')
    {
        if(cuentanavebuena<=0)
        {
            tecla=27;
            destruido();
        }
        //mientras la tecla pulsada no se escape
        while(tecla!=27&&cuentanavebuena>0)
        {
            //limpio el buffer
            fflush(stdin);
            //borro pantalla
            clearviewport();
            //pongo la nave buena
            //NaveBuena();
            //dibujo las estrelas
            estrellas();
            mover_estrellas();
            //dibujo los malisimos
            navesola();
            dibujar_rectangulos();
            swmalo=tocadomalo();
            if(swmalo==1)
            {   if(cuentanavebuena>0)cuentanavebuena--;

            }
            if(cuentanavebuena>0)
            {
                NaveBuena();
            }
            if(cuentanavebuena<=0)
            {
                destruido();
                break;

            }
            dibumala();
            puntos();
            vidas();
            contadorescudos();

            //miro si han pulsado una tecla
            if(kbhit())
            {
                tecla=getch();
                if(tecla==13&&topeescudo>0)
                {
                    //escudo();
                    swescudo=1;
                    topeescudo--;
                }
                if(tecla==27)continuar='n';
                if (tecla==0)
                {
                    tecla=getch();
                    switch (tecla)
                    {
                    case 75:
                        xbuena-=10;
                        if (xbuena<10)xbuena=10;
                        break;
                    case 77:
                        xbuena+=10;
                        if (xbuena>600)xbuena=600;
                        break;
                    }
                }

                //si la tecla es espacio
                else if(tecla==32 && contbb<totalbb)
                {
                    //sonido dolby surround
                    sound(8500);
                    delay(100);
                    sound(200);
                    delay(50);
                    nosound();
                    dibujarbb();
                }
            }
            if(cuentaescudo>=100)
            {
                swescudo=0;
                cuentaescudo=0;
            }
            if(swescudo==1)
            {
                escudo();
            }
            //si el conbb es mayor de 0 es que hay disparos en el aire
            if(contbb>0)
            {
                //miro si he matado ha alguien
                quitamala();
                moverbbeliminar();
            }
            //muevo los malisimos

            mover_rectangulos();
            //cambio de pagina de video
            setactivepage(1-pagina);
            setvisualpage(pagina);
            pagina=1-pagina;

        }
    }
    recor();
    //vacio las listas
    while(vaciar_rectangulos())
    {
        //vacio la lista
    }
    while(vaciar_balas_malo())
    {
        //vacio la lista de las balas de los malos
    }
    while(vaciar_balas_bueno())
    {
        //vacio la lista de las balas del bueno
    }
    while(vaciar_estrellas())
    {
        //vacio la lista de las balas del bueno
    }
    closegraph();
}