/* Se autoriza la distribucion y uso libre de este programa (freeware) */ /* Fernando Galindo Soria www.fgalindosoria.com www.laredi.com fgalindo@ipn.mx Cd. de Mexico */ /* Programa de inicio a la programacion en C (turbo C, Borland C) Bases de un Juego por computadora Ping Pong Se mueve la paleta con las flechas y la pelota rebota 20/vii/2002*/ #include #include #include #include void main() { char car; int gd=DETECT,gm, ix=200, iy=200, incx=1, incy=1, r=5, paly=1, incpaly=1; printf("\n\n\nBases de un Juego por computadora"); printf("\n Ping Pong"); printf("\n\nmueve la paleta con las flechas"); printf("\n\npara terminar oprime la tecla "); printf("\n\npara iniciar el juego oprime una tecla"); getch(); initgraph(&gd,&gm,""); lineto(0,getmaxy()); lineto(getmaxx(),getmaxy()); lineto(getmaxx(),0); lineto(0,0); while ( car !=27 ) { car=0; if(kbhit() != 0) car=getch(); //Dibuja la Paleta setcolor(0); //borra paleta line(20,paly,20,paly+40); if(car==72)incpaly=-1; //mueve coordenadas de la paleta if(car==80)incpaly=1; paly+=incpaly; //si sale de la pantalla cambia la direccion if((paly<=1) || (paly>=(getmaxy()-41)))incpaly*=-1; setcolor(15); //pinta la paleta line(20,paly,20,paly+40); delay(5); //Dibuja la Pelota setcolor(0); //borra el circulo circle(ix,iy,r); ix+=incx; //mueve iy+=incy; //si sale de la pantalla cambia la direccion if((ix<=(r+1)) || (ix>=(getmaxx()-r-1)))incx*=-1; if((iy<=(r+1)) || (iy>=(getmaxy()-r-1)))incy*=-1; setcolor(2); //pinta el circulo circle(ix,iy,r); delay(5); } closegraph(); }