// JUEGO DE LA VIBORILLA VERSION 1 ... CONTROL DE LA VENTANA
// int initwindow(int width, int height, const char* title="Windows BGI", int left=0, int top=0, bool dbflag=false, closeflag=true);
// LIGA OK ===>>> http://docs.mis-algoritmos.com/c.ref.graphics.h.html
#include<graphics.h>
#include <stdio.h>
int gdriver = DETECT, gmodo, modo_max;
int XMAX, YMAX, Grosor=10; // XMAX(ancho en pixeles), YMAX(alto en pixeles), Grosor del borde
int Xi, Yi, Xf, Yf; // lImites internos
void Inicia( )
{
char Tecla=' ';
int x, y, N=1000;
int INC = 10;
x = (Xf - Xi)/2;
y = (Yf - Yi)/2;
//cleardevice();
while ( N > 0 )
{
setcolor(YELLOW); fillellipse(x, y, 5, 5);
/*
//Tecla=getchar(); Tecla=getchar(); Tecla=getchar();
Dir = rand( ) % 5;
Tecla = Dir + 64;
printf("T=%d\tX=%d\tY=%d\n",Tecla,x,y);
if (Tecla == 65) { y=y-10; if ( !y ) y=0; } // arriba
if (Tecla == 66) { y=y+10; if ( y>getmaxy( ) ) y=getmaxy( ); } // abajo
if (Tecla == 67) { x=x+10; if ( x>getmaxx( ) ) x=getmaxx( ); } // derecha
if (Tecla == 68) { x=x-10; if ( !x ) x=0; } // izquierda
*/
delay(10);
setcolor(BLACK); fillellipse(x, y, 5, 5); // Borra la pelotita (dibujarla del color de fondo)
x += INC;
if (x+20 >= Xf) INC = -5;
if (x-10 <= Xi) INC = 5;
N--;
}
}
void Borde()
{
int color = 1, fill = 1;
Xi = Yi = 10 + Grosor;
Xf = XMAX - 10 - Grosor;
Yf = YMAX - 10 - Grosor;
bar(10, 10, Xf, Yi);
bar(Xf, 10, Xf+Grosor, Yf);
bar(10, Yf, Xf+Grosor, Yf+Grosor);
bar(10, 10, Xi, YMAX-Grosor);
}
void ModoGrafico()
{
initgraph(&gdriver, &gmodo, NULL ); // gmodo = 2
modo_max = getmaxmode(); // modo_max = 6 (eso detectO en mi portAtil)
setgraphmode( modo_max );
XMAX = getmaxx(); YMAX = getmaxy();
}
void ModoTexto() { getch(); closegraph(); }
int main()
{
ModoGrafico();
Borde(); Inicia();
ModoTexto();
}