| Juego de Tres en Raya |
| Autor [nex] |
Calificacion |
 |
|
|
| Juego de tres en raya hecho con C++ en entorno Grafico, no funciona el boton del mouse pero la tecla enter lo reemplaza. |
/*Creado por Nex Technologies para sugerencias en via un mail a mi correo [email protected] apreciaria tus consejos..
si saben cual es el codigo ascii del boton del mouse por favor haganmelo saber (100% ecuatoriano)*/
#include
#include
#include
#include
#define t 9
int c=100,f=100,verif[t],salir=0;
void tablero();
int control(char x);
char op;
void linea();
void encera();
void mensaje();
void main()
{
int a,b,aux;
a=DETECT;
initgraph(&a,&b,"");
cleardevice();
encera();
while(op<82)
{
if(salir==1)
return;
tablero();
// setcolor(15);
op=getch();
switch(op)
{
case 80:
sound(410);
delay(20);
nosound();
setcolor(0);
rectangle(c+10,f+10,c+90,f+90);
setcolor(15);
f+=100;
if(f>300)
f=300;
rectangle(c+10,f+10,c+90,f+90);
break;
case 72:
sound(410);
delay(20);
nosound();
setcolor(0);
rectangle(c+10,f+10,c+90,f+90);
setcolor(15);
f-=100;
if(f<100)
f=100;
rectangle(c+10,f+10,c+90,f+90);
break;
case 75:
sound(410);
delay(20);
nosound();
setcolor(0);
rectangle(c+10,f+10,c+90,f+90);
setcolor(15);
c-=100;
if(c<100)
c=100;
rectangle(c+10,f+10,c+90,f+90);
break;
case 77:
sound(410);
delay(20);
nosound();
setcolor(0);
rectangle(c+10,f+10,c+90,f+90);
setcolor(15);
c+=100;
if(c>300)
c=300;
rectangle(c+10,f+10,c+90,f+90);
break;
case 48:
sound(100);
delay(20);
nosound();
aux=control(op);
if(aux!=0)
{
setcolor(14);
settextstyle(10,0,4);
outtextxy(c+40,f+20,"O");
setcolor(15);
linea();
}
if(aux==0)
{
setcolor(12);
outtextxy(4,450,"Ya ingresado");
delay(300);
setfillstyle(1,8);
bar(1,450,200,480);
setcolor(15);
}
break;
case 49:
sound(100);
delay(20);
nosound();
aux=control(op);
if(aux!=0)
{
setcolor(12);
settextstyle(10,0,4);
outtextxy(c+40,f+20,"X");
setcolor(15);
linea();
}
if(aux==0)
{
setcolor(12);
outtextxy(4,450,"Ya ingresado");
delay(300);
setfillstyle(1,8);
bar(1,450,200,480);
setcolor(15);
}
break;
case 8:
sound(510);
delay(500);
nosound();
cleardevice();
encera();
break;
case 27:
sound(420);
delay(50);
nosound();
sound(400);
delay(120);
nosound();
sound(130);
delay(50);
nosound();
sound(140);
delay(300);
nosound();
return;
}
}
}
void tablero()
{
setfillstyle(1,8);
bar(1,450,200,480);
setcolor(15);
line(100,200,400,200);
line(100,300,400,300);
line(200,100,200,400);
line(300,100,300,400);
setfillstyle(1,9);
bar(450,10,630,200);
settextstyle(3,0,2);
setcolor(14);
outtextxy(460,15,"1=X");
outtextxy(460,35,"0=O");
outtextxy(460,55,"esc=Salir");
outtextxy(460,75,"=>Flechas de");
outtextxy(460,95,"movimiento=");
outtextxy(460,115,"para direccion");
outtextxy(460,135,"Borrar=Nuevo ");
outtextxy(540,155,"Juego ");
settextstyle(12,1,4);
setcolor(14);
outtextxy(440,55,"INSTRUCCUIONES");
setcolor(15);
}
void encera()
{
for(int i=0;i<=t;i++)
verif[i]=0;
}
int control(char x)
{
int col,fil;
col=c;
fil=f;
col=col/100;
fil=fil/100;
if(col==1&&fil==1&&verif[0]==0)
{ if(x=='0')
verif[0]=1;
if(x=='1')
verif[0]=2;
return 1;
}
if(col==2&&fil==1&&verif[1]==0)
{
if(x=='0')
verif[1]=1;
if(x=='1')
verif[1]=2;
return 1;
}
if(col==3&&fil==1&&verif[2]==0)
{
if(x=='0')
verif[2]=1;
if(x=='1')
verif[2]=2;
return 1;
}
if(col==1&&fil==2&&verif[3]==0)
{
if(x=='0')
verif[3]=1;
if(x=='1')
verif[3]=2;
return 1;
}
if(col==2&&fil==2&&verif[4]==0)
{
if(x=='0')
verif[4]=1;
if(x=='1')
verif[4]=2;
return 1;
}
if(col==3&&fil==2&&verif[5]==0)
{
if(x=='0')
verif[5]=1;
if(x=='1')
verif[5]=2;
return 1;
}
if(col==1&&fil==3&&verif[6]==0)
{
if(x=='0')
verif[6]=1;
if(x=='1')
verif[6]=2;
return 1;
}
if(col==2&&fil==3&&verif[7]==0)
{
if(x=='0')
verif[7]=1;
if(x=='1')
verif[7]=2;
return 1;
}
if(col==3&&fil==3&&verif[8]==0)
{
if(x=='0')
verif[8]=1;
if(x=='1')
verif[8]=2;
return 1;
}
return 0;
}
void linea()
{
if((verif[0]==1&&verif[1]==1&&verif[2]==1)||(verif[0]==2&&verif[1]==2&&verif[2]==2))
{
setcolor(14);
line(100,150,400,150);
setcolor(15);
mensaje();
}
if((verif[0]==1&&verif[4]==1&&verif[8]==1)||(verif[0]==2&&verif[4]==2&&verif[8]==2))
{
setcolor(14);
line(100,100,400,400);
setcolor(15);
mensaje();
}
if((verif[0]==1&&verif[3]==1&&verif[6]==1)||(verif[0]==2&&verif[3]==2&&verif[6]==2))
{
setcolor(14);
line(150,100,150,400);
setcolor(15);
mensaje();
}
if((verif[1]==1&&verif[4]==1&&verif[7]==1)||(verif[1]==2&&verif[4]==2&&verif[7]==2))
{
setcolor(14);
line(250,100,250,400);
setcolor(15);
mensaje();
}
if((verif[2]==1&&verif[5]==1&&verif[8]==1)||(verif[2]==2&&verif[5]==2&&verif[8]==2))
{
setcolor(14);
line(350,100,350,400);
setcolor(15);
mensaje();
}
if((verif[2]==1&&verif[4]==1&&verif[6]==1)||(verif[2]==2&&verif[4]==2&&verif[6]==2))
{
setcolor(14);
line(400,100,100,400);
setcolor(15);
mensaje();
}
if((verif[3]==1&&verif[4]==1&&verif[5]==1)||(verif[3]==2&&verif[4]==2&&verif[5]==2))
{
setcolor(14);
line(100,250,400,250);
setcolor(15);
mensaje();
}
if((verif[6]==1&&verif[7]==1&&verif[8]==1)||(verif[6]==2&&verif[7]==2&&verif[8]==2))
{
setcolor(14);
line(100,350,400,350);
setcolor(15);
mensaje();
}
}
void mensaje()
{
setfillstyle(1,8);
bar(100,200,400,250);
setcolor(10);
rectangle(100,200,400,250);
setcolor(10);
settextstyle(6,0,4);
outtextxy(140,200,"Juego Terminado");
sound(520);
delay(50);
nosound();
sound(400);
delay(120);
nosound();
sound(330);
delay(50);
nosound();
sound(640);
delay(300);
nosound();
delay(600);
setcolor(10);
settextstyle(3,0,3);
outtextxy(4,450,"Presione una tecla...");
getch();
cleardevice();
outtextxy(114,150,"Jugar de Nuevo(S/N): ");
char sn;
sn=getch();
if(toupper(sn)=='S')
{
sound(510);
delay(500);
nosound();
encera();
cleardevice();
}
else
{
sound(550);
delay(500);
nosound();
cleardevice();
salir=1;
}
} |
|
| ? |
| Terminos de Uso |
|
1 - Copiar o Descargarse este contenido implica aceptar los terminos aqui detallados.
2 - Usted puede utilizar este contenido en sus propios programas y puede compilarlo en un programa y modificarlo a su gusto.
3 - Usted NO PUEDE redistribuir este contenido tal como se presenta aqui sin el permiso del autor original del mismo.
4 - Usted seguir? cualquier restricci?n adicional del copyright que el autor pudo haber puesto en la descripci?n del contenido.
|
|
|
?
|
|