This is a simple Criss-Cross Game Project developed using C-Language and Graphics. The IDE and environment used for this project Turbo C.
Screenshort

Code for Criss-Cross Game
typedef struct winlist wk;
long int SIZE =sizeof(wk);
int i,j,a,gdriver = DETECT, gmode;
initgraph(&gdriver, &gmode, "c:\\WINDOWS/Crossgam/"); // Change Driver Path as per your turbo C Graphics EGAVGA.BGI file
setfillstyle(SOLID_FILL,BLACK);
if(choice==ESC){ HELP(); goto input; }
if(choice=='0'){msgbox();}
if(choice=='s'||choice=='S'){winbox1();winlist();}
if(choice=='7' && flag==0 && mat[1][1]==0)
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(240,160,"X"); flag=1; matrix[1][1]=1,mat[1][1]=1;
if(matrix[1][1]==matrix[1][2] && matrix[1][2]==matrix[1][3])
setcolor(CYAN); line(220,170,410,170); flag=Refresh(flag);
else if(matrix[1][1]==matrix[2][1] && matrix[2][1]==matrix[3][1])
setcolor(CYAN); line(245,150,245,300); flag=Refresh(flag);
else if(matrix[1][1]==matrix[2][2] && matrix[2][2]==matrix[3][3])
setcolor(CYAN); line(235,150,410,300); flag=Refresh(flag);
else if(choice=='7' && flag==1&& mat[1][1]==0)
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(240,160,"O"); flag=0; matrix[1][1]=2,mat[1][1]=1;
if(matrix[1][1]==matrix[1][2] && matrix[1][2]==matrix[1][3])
setcolor(CYAN); line(220,170,410,170); flag=Refresh(flag);
else if(matrix[1][1]==matrix[2][1] && matrix[2][1]==matrix[3][1])
setcolor(CYAN); line(245,150,245,300); flag=Refresh(flag);
else if(matrix[1][1]==matrix[2][2] && matrix[2][2]==matrix[3][3])
setcolor(CYAN); line(235,150,410,300); flag=Refresh(flag);
else if(choice=='8' && flag==0&& mat[1][2]==0)
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(305,160,"X"); flag=1; matrix[1][2]=1,mat[1][2]=1;
if(matrix[1][1]==matrix[1][2] && matrix[1][2]==matrix[1][3])
setcolor(CYAN); line(220,170,410,170); flag=Refresh(flag);
else if(matrix[1][2]==matrix[2][2] && matrix[2][2]==matrix[3][2])
setcolor(CYAN); line(315,150,315,300); flag=Refresh(flag);
else if(choice=='8' && flag==1&& mat[1][2]==0)
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(305,160,"O"); flag=0; matrix[1][2]=2,mat[1][2]=1;
if(matrix[1][1]==matrix[1][2] && matrix[1][2]==matrix[1][3])
setcolor(CYAN); line(220,170,410,170); flag=Refresh(flag);
else if(matrix[1][2]==matrix[2][2] && matrix[2][2]==matrix[3][2])
setcolor(CYAN); line(315,150,315,300); flag=Refresh(flag);
else if(choice=='9' && flag==0&& mat[1][3]==0)
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(370,160,"X"); flag=1; matrix[1][3]=1,mat[1][3]=1;
if(matrix[1][1]==matrix[1][2] && matrix[1][2]==matrix[1][3])
setcolor(CYAN); line(220,170,410,170); flag=Refresh(flag);
else if(matrix[1][3]==matrix[2][3] && matrix[2][3]==matrix[3][3])
setcolor(CYAN); line(375,150,375,300); flag=Refresh(flag);
else if(matrix[1][3]==matrix[2][2] && matrix[2][2]==matrix[3][1])
setcolor(CYAN); line(390,150,220,300); flag=Refresh(flag);
else if(choice=='9' && flag==1&& mat[1][3]==0)
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(370,160,"O"); flag=0; matrix[1][3]=2,mat[1][3]=1;
if(matrix[1][1]==matrix[1][2] && matrix[1][2]==matrix[1][3])
setcolor(CYAN); line(220,170,410,170); flag=Refresh(flag);
else if(matrix[1][3]==matrix[2][3] && matrix[2][3]==matrix[3][3])
setcolor(CYAN); line(375,150,375,300); flag=Refresh(flag);
else if(matrix[1][3]==matrix[2][2] && matrix[2][2]==matrix[3][1])
setcolor(CYAN); line(390,150,220,300); flag=Refresh(flag);
else if(choice=='4' && flag==0&& mat[2][1]==0)
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(240,215,"X"); flag=1; matrix[2][1]=1,mat[2][1]=1;
if(matrix[1][1]==matrix[2][1] && matrix[2][1]==matrix[3][1])
setcolor(CYAN); line(245,150,245,300);flag=Refresh(flag);
else if(matrix[2][1]==matrix[2][2] && matrix[2][2]==matrix[2][3])
setcolor(CYAN); line(235,215,400,215); flag=Refresh(flag);
else if(choice=='4' && flag==1&& mat[2][1]==0)
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(240,215,"O"); flag=0; matrix[2][1]=2,mat[2][1]=1;
if(matrix[1][1]==matrix[2][1] && matrix[2][1]==matrix[3][1])
setcolor(CYAN); line(245,150,245,300); flag=Refresh(flag);
else if(matrix[2][1]==matrix[2][2] && matrix[2][2]==matrix[2][3])
setcolor(CYAN); line(235,215,400,215); flag=Refresh(flag);
else if(choice=='5' && flag==0&& mat[2][2]==0)
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(305,215,"X"); flag=1; matrix[2][2]=1,mat[2][2]=1;
if(matrix[1][2]==matrix[2][2] && matrix[2][2]==matrix[3][2])
setcolor(CYAN); line(315,150,315,300); flag=Refresh(flag);
else if(matrix[2][1]==matrix[2][2] && matrix[2][2]==matrix[2][3])
setcolor(CYAN); line(235,215,400,215); flag=Refresh(flag);
else if(matrix[1][1]==matrix[2][2] && matrix[2][2]==matrix[3][3])
setcolor(CYAN); line(235,150,410,300); flag=Refresh(flag);
else if(matrix[1][3]==matrix[2][2] && matrix[2][2]==matrix[3][1])
setcolor(CYAN); line(390,150,220,300); flag=Refresh(flag);
else if(choice=='5' && flag==1&& mat[2][2]==0)
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(305,215,"O"); flag=0; matrix[2][2]=2,mat[2][2]=1;
if(matrix[1][2]==matrix[2][2] && matrix[2][2]==matrix[3][2])
setcolor(CYAN); line(315,150,315,300); flag=Refresh(flag);
else if(matrix[2][1]==matrix[2][2] && matrix[2][2]==matrix[2][3])
setcolor(CYAN); line(235,215,400,215); flag=Refresh(flag);
else if(matrix[1][1]==matrix[2][2] && matrix[2][2]==matrix[3][3])
setcolor(CYAN); line(235,150,410,300); flag=Refresh(flag);
else if(matrix[1][3]==matrix[2][2] && matrix[2][2]==matrix[3][1])
setcolor(CYAN); line(390,150,220,300); flag=Refresh(flag);
else if(choice=='6' && flag==0&& mat[2][3]==0)
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(370,215,"X"); flag=1; matrix[2][3]=1,mat[2][3]=1;
if(matrix[1][3]==matrix[2][3] && matrix[2][3]==matrix[3][3])
setcolor(CYAN); line(375,150,375,300); flag=Refresh(flag);
else if(matrix[2][1]==matrix[2][2] && matrix[2][2]==matrix[2][3])
setcolor(CYAN); line(235,215,400,215); flag=Refresh(flag);
else if(choice=='6' && flag==1&& mat[2][3]==0)
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(370,215,"O"); flag=0; matrix[2][3]=2,mat[2][3]=1;
if(matrix[1][3]==matrix[2][3] && matrix[2][3]==matrix[3][3])
setcolor(CYAN); line(375,150,375,300); flag=Refresh(flag);
else if(matrix[2][1]==matrix[2][2] && matrix[2][2]==matrix[2][3])
setcolor(CYAN); line(235,215,400,215); flag=Refresh(flag);
else if(choice=='1' && flag==0&& mat[3][1]==0)
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(240,270,"X"); flag=1; matrix[3][1]=1,mat[3][1]=1;
if(matrix[1][1]==matrix[2][1] && matrix[2][1]==matrix[3][1])
setcolor(CYAN); line(245,150,245,300); flag=Refresh(flag);
else if(matrix[1][3]==matrix[2][2] && matrix[2][2]==matrix[3][1])
setcolor(CYAN); line(390,150,220,300); flag=Refresh(flag);
else if(matrix[3][1]==matrix[3][2] && matrix[3][2]==matrix[3][3])
setcolor(CYAN); line(235,275,400,275); flag=Refresh(flag);
else if(choice=='1' && flag==1&& mat[3][1]==0)
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(240,270,"O"); flag=0; matrix[3][1]=2,mat[3][1]=1;
if(matrix[1][1]==matrix[2][1] && matrix[2][1]==matrix[3][1])
setcolor(CYAN); line(245,150,245,300); flag=Refresh(flag);
else if(matrix[1][3]==matrix[2][2] && matrix[2][2]==matrix[3][1])
setcolor(CYAN); line(390,150,220,300); flag=Refresh(flag);
else if(matrix[3][1]==matrix[3][2] && matrix[3][2]==matrix[3][3])
setcolor(CYAN); line(235,275,400,275); flag=Refresh(flag);
else if(choice=='2' && flag==0&& mat[3][2]==0)
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(305,270,"X"); flag=1; matrix[3][2]=1,mat[3][2]=1;
if(matrix[3][1]==matrix[3][2] && matrix[3][2]==matrix[3][3])
setcolor(CYAN); line(235,275,400,275); flag=Refresh(flag);
else if(matrix[1][2]==matrix[2][2] && matrix[2][2]==matrix[3][2])
setcolor(CYAN); line(315,150,315,300); flag=Refresh(flag);
else if(choice=='2' && flag==1&& mat[3][2]==0)
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(305,270,"O"); flag=0; matrix[3][2]=2,mat[3][2]=1;
if(matrix[3][1]==matrix[3][2] && matrix[3][2]==matrix[3][3])
setcolor(CYAN); line(235,275,400,275); flag=Refresh(flag);
else if(matrix[1][2]==matrix[2][2] && matrix[2][2]==matrix[3][2])
setcolor(CYAN); line(315,150,315,300); flag=Refresh(flag);
else if(choice=='3' && flag==0&& mat[3][3]==0)
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(370,270,"X"); flag=1; matrix[3][3]=1,mat[3][3]=1;
if(matrix[3][1]==matrix[3][2] && matrix[3][2]==matrix[3][3])
setcolor(CYAN); line(235,275,400,275); flag=Refresh(flag);
else if(matrix[1][3]==matrix[2][3] && matrix[2][3]==matrix[3][3])
setcolor(CYAN); line(375,150,375,300); flag=Refresh(flag);
else if(matrix[1][1]==matrix[2][2] && matrix[2][2]==matrix[3][3])
setcolor(CYAN); line(235,150,410,300); flag=Refresh(flag);
else if(choice=='3' && flag==1&& mat[3][3]==0)
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(370,270,"O"); flag=0; matrix[3][3]=2,mat[3][3]=1;
if(matrix[3][1]==matrix[3][2] && matrix[3][2]==matrix[3][3])
setcolor(CYAN); line(235,275,400,275); flag=Refresh(flag);
else if(matrix[1][3]==matrix[2][3] && matrix[2][3]==matrix[3][3])
setcolor(CYAN); line(375,150,375,300); flag=Refresh(flag);
else if(matrix[1][1]==matrix[2][2] && matrix[2][2]==matrix[3][3])
setcolor(CYAN); line(235,150,410,300); flag=Refresh(flag);
else if(choice=='R'||choice=='r')
for(i=1;i<=3;i++){for(j=1;j<=3;j++){matrix[i][j]=a;a++;}}
for(i=1;i<=3;i++){for(j=1;j<=3;j++){mat[i][j]=0;}}
flag=Clear(flag); goto input;
sound(2589); delay(150);nosound();setcolor(GREEN);
settextstyle(DEFAULT_FONT,HORIZ_DIR,1);outtextxy(300,400,"Invalid key press"); goto input;
stop : closegraph(); _exit(0);
setcolor(RED); settextstyle(DEFAULT_FONT,HORIZ_DIR,3);
outtextxy(30,50,"CROSS PUZZLE MIXING GAME");
line(225,190,400,190); line(225,250,400,250);
line(275,150,275,300); line(350,150,350,300);
setcolor(YELLOW); settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
outtextxy(25,450,"press `Esc' to Help. press `0'(zero) to exit. press `R' to restart.");
outtextxy(25,470,"Press `S' To Show the Winer List");
setcolor(GREEN); outtextxy(50,400,"ENTER VALUE :");
for(i=1;i<=3;i++){for(j=1;j<=3;j++){matrix[i][j]=a;a++;}}
gotoxy(50,24); printf("SECOND PLAYER IS WINER");
gotoxy(50,24); printf("FIRST PLAYER IS WINER");
gotoxy(50,24); printf(" ");
flag=0;sub_REFRESH(getch());graf();Swindow();
for(i=1;i<=3;i++){for(j=1;j<=3;j++){mat[i][j]=0;}}
for(i=1;i<=3;i++){for(j=1;j<=3;j++){matrix[i][j]=a;a++;}}
flag=0; Swindow(); return flag;
setfillstyle(SOLID_FILL,LIGHTGRAY);
bar(0,0,getmaxx(),getmaxy()); setcolor(YELLOW);
settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(50,25,"THE INSTRUCTIONS TO PLAY THE GAME");
setcolor(MAGENTA); outtextxy(380,100,"X");
outtextxy(387,118,"O"); setcolor(BLUE);
outtextxy(220,185,"7 8 9"); outtextxy(220,225,"4 5 6");
outtextxy(220,275,"1 2 3");settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
outtextxy(50,90,"[*] Two players must need to play this game.");
outtextxy(50,105,"[*] First player holds the simbol of .");
outtextxy(50,120,"[*] Second player holds the simbol of .");
outtextxy(50,320,"[*] Which player creats a straight line into the box, he is the winer.");
outtextxy(50,335,"[*] To restart the game as fresh, press `R'.");
outtextxy(50,350,"[*] press `0' (zero) to exit the game.");
outtextxy(330,460,"press any key to return back into game");
line(250,170,250,300);line(320,170,320,300);
line(200,210,375,210);line(200,260,375,260);
outtextxy(150,150,"The Keywords which contains the value of puzzle box");
setcolor(LIGHTGREEN);settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(125,400,"Made By - Subroto Mondal");
sound(i);delay(500);bar(123,398,520,435); delay(500);i=i+15;
cleardevice();setfillstyle(SOLID_FILL,BLUE);
bar(150,220,465,235);setfillstyle(SOLID_FILL,LIGHTGREEN);
bar(155,215,470,230);delay(500);
setfillstyle(INTERLEAVE_FILL,RED);
bar(X,218,X+10,228);i++;X=X+13;
setfillstyle(SOLID_FILL,DARKGRAY);
char sub_REFRESH(char ch)
for(i=1;i<=3;i++){for(j=1;j<=3;j++){matrix[i][j]=a;a++;}}
for(i=1;i<=3;i++){for(j=1;j<=3;j++){mat[i][j]=0;}}
for(i=1;i<=3;i++){for(j=1;j<=3;j++){matrix[i][j]=a;a++;}}
for(i=1;i<=3;i++){for(j=1;j<=3;j++){mat[i][j]=0;}}
sound(2589);delay(150); nosound(); setcolor(GREEN);
settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
outtextxy(300,400,"Invalid key press");
int x=120,y=55,i,x1=500,y1=55,x2=320,y2=40,x3=130,y3=230;
setfillstyle(SOLID_FILL,WHITE);bar(0,0,getmaxx(),getmaxy());
setcolor(BLACK);circle(x,y,50);circle(x1,y1,50);
x=x+1,y=y+1,x1=x1-1,y1=y1+1; delay(9);
setcolor(LIGHTBLUE);settextstyle(TRIPLEX_FONT,HORIZ_DIR,3);
bar(90,235,700,265);delay(200);
outtextxy(90,235,"Wel Come To Cross Pazzel Mixing Game");
delay(500);bar(0,0,getmaxx(),getmaxy());
circle(x2,y2,50);circle(x3,y3,50);
y2=y2+2,x3=x3+2;delay(20);
setcolor(BLACK);settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
outtextxy(385,6,"Compiled With :Terbo C++");
outtextxy(385,20,"Graphics :Borland Graphics C++");
if(matrix[1][1]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(240,160,"X");}
if(matrix[1][1]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(240,160,"O");}
if(matrix[1][2]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(305,160,"X");}
if(matrix[1][2]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(305,160,"O");}
if(matrix[1][3]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(370,160,"X");}
if(matrix[1][3]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(370,160,"O");}
if(matrix[2][1]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(240,215,"X");}
if(matrix[2][1]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(240,215,"O");}
if(matrix[2][2]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(305,215,"X");}
if(matrix[2][2]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(305,215,"O");}
if(matrix[2][3]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(370,215,"X");}
if(matrix[2][3]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(370,215,"O");}
if(matrix[3][1]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(240,270,"X");}
if(matrix[3][1]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(240,270,"O");}
if(matrix[3][2]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(305,270,"X");}
if(matrix[3][2]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(305,270,"O");}
if(matrix[3][3]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(370,270,"X");}
if(matrix[3][3]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(370,270,"O");}
if(mat[1][1]==1&&mat[1][2]==1&&mat[1][3]==1&&mat[2][1]==1&&mat[2][2]==1&&mat[2][3]==1&&mat[3][1]==1&&mat[3][2]==1&&mat[3][3]==1)
sound(2589); delay(150);nosound();setcolor(GREEN);
settextstyle(DEFAULT_FONT,HORIZ_DIR,1);outtextxy(250,400,"Incomplite game press any key to reset the game");
for(i=1;i<=3;i++){for(j=1;j<=3;j++){matrix[i][j]=a;a++;}}
flag=0;for(i=1;i<=3;i++){for(j=1;j<=3;j++){mat[i][j]=0;}}
flag=Clear(flag);submain();
setfillstyle(INTERLEAVE_FILL,BROWN);bar(130,200,495,350);
setfillstyle(SOLID_FILL,DARKGRAY); bar(140,210,485,340);
setfillstyle(SOLID_FILL,LIGHTCYAN);bar(142,212,483,223);
setcolor(BLACK); settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
outtextxy(433,214,"_ [] X");outtextxy(145,214,"Meassage Box");
setcolor(WHITE);outtextxy(180,250,"Are You Want To Sure Quit Game?");
outtextxy(210,310,"Press TAB To Select Option.");
outtextxy(210,325,"Press Enter To Select Choice.");CHOICE=optionYN();
if(CHOICE==1){closegraph();exit(0);}else{submain();}
settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
setfillstyle(SOLID_FILL,DARKGRAY);bar(320,280,370,300);
setfillstyle(SOLID_FILL,BLACK); bar(395,280,445,300);
setfillstyle(SOLID_FILL,WHITE); bar(325,275,375,295);
bar(400,275,450,295);setcolor(GREEN);
outtextxy(340,282,"YES");settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(410,278,"NO"); fflush(stdin);
settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
setfillstyle(SOLID_FILL,BLACK);bar(320,280,370,300);
setfillstyle(SOLID_FILL,DARKGRAY);bar(395,280,445,300);
setfillstyle(SOLID_FILL,WHITE);bar(325,275,375,295);
bar(400,275,450,295);setcolor(GREEN);
outtextxy(420,282,"NO");settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(328,278,"YES");CHOICE=1;
if(getch()==ENT){return CHOICE;}else{goto input;}
if(ch==ENT){return CHOICE; }else{ goto input; }
setfillstyle(INTERLEAVE_FILL,BROWN);bar(130,200,495,350);
setfillstyle(SOLID_FILL,DARKGRAY); bar(140,210,485,340);
setfillstyle(SOLID_FILL,LIGHTCYAN);bar(142,212,483,223);
setcolor(BLACK); settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
outtextxy(433,214,"_ [] X");outtextxy(145,214,"Meassage Box");
setcolor(WHITE);outtextxy(160,250,"ENTER WINER NAME :-");
outtextxy(160,280,"ENTER LOOSER NAME :-");
outtextxy(210,325,"Press Enter To Save This Record.");
outtextxy(140,230," Press 'Y'to enter winer and losser name..");
gotoxy(41,16); fflush(stdin);
gets(w.win); gotoxy(41,18);
fflush(stdin); gets(w.loss);
fs=fopen("c:\\WINDOWS/CROSSGAM/DATA.DAT","ab");
fwrite(&w,SIZE,1,fs); fclose(fs);
setfillstyle(SOLID_FILL,DARKGRAY); bar(200,320,485,340);
outtextxy(210,325,"The record is not save..");
{ int x=24,y=11,x1=45,x2=40,c=1,count=0,count1=0,ch;
fs=fopen("c:\\WINDOWS/CROSSGAM/DATA.DAT","r");
outtextxy(225,230,"NO DATA FILE WAS FOUND");
while (fread(&w,SIZE,1,fs)==1)
outtextxy(225,230,"NO RECORD WAS FOUND");
fs=fopen("c:\\WINDOWS/CROSSGAM/DATA.DAT","r");
while(fread(&w,SIZE,1,fs)==1)
gotoxy(x-5,y);printf("%d.)",c);
gotoxy(x2,y);printf("Vs");
gotoxy(x1,y);puts(w.loss);
printf("Press enter key to continue & `E' to exit ");
ch=getch();if(ch=='e'||ch=='E'){ break;}
count1=0; y=11; count1=0; winbox1();
}setcolor(WHITE);outtextxy(210,325,"Press any key to back."); setcolor(WHITE);
getch(); submain(); Swindow(); subshow();
setfillstyle(INTERLEAVE_FILL,BROWN);bar(130,100,495,380);
setfillstyle(SOLID_FILL,DARKGRAY); bar(140,110,485,370);
setfillstyle(SOLID_FILL,LIGHTCYAN);bar(142,112,483,123);
setcolor(BLACK); settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
outtextxy(433,114,"_ [] X");outtextxy(145,114,"WINER LIST BOX");
setcolor(WHITE);outtextxy(160,130,"WINER NAME");
outtextxy(380,130,"LOOSER NAME ");setcolor(BLACK);
line(150,147,477,147);setcolor(RED);
#include<stdio.h>
#include<conio.h>
#include<graphics.h>
#include<process.h>
#include<dos.h>
#define ESC 0x1b
#define ENT 13
#define TAB 9
#define LEFT 75
#define RIGHT 77
FILE *fs;
struct winlist
{
char win[60];
char loss[60];
};
typedef struct winlist wk;
long int SIZE =sizeof(wk);
void Swindow(void);
void HELP(void);
void graf(void);
int Clear(int );
int Refresh(int );
char sub_REFRESH();
void animation(void);
void submain(void);
void subshow(void);
void result(void);
void msgbox(void);
int optionYN(void);
void winbox(void);
void winlist(void);
void winbox1(void);
int matrix[3][3];
int mat[3][3];
void main(void)
{
int i,j,a,gdriver = DETECT, gmode;
char choice;
initgraph(&gdriver, &gmode, "c:\\WINDOWS/Crossgam/"); // Change Driver Path as per your turbo C Graphics EGAVGA.BGI file
animation();
exit(0);
}
void submain(void)
{
int flag=0,i,j,a;
char choice;
Swindow();
subshow();
input:
fflush(stdin);
choice=getch();
setfillstyle(SOLID_FILL,BLACK);
bar(300,400,600,430);
if(choice==ESC){ HELP(); goto input; }
if(choice=='0'){msgbox();}
if(choice=='s'||choice=='S'){winbox1();winlist();}
if(choice=='7' && flag==0 && mat[1][1]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(240,160,"X"); flag=1; matrix[1][1]=1,mat[1][1]=1;
if(matrix[1][1]==matrix[1][2] && matrix[1][2]==matrix[1][3])
{
setcolor(CYAN); line(220,170,410,170); flag=Refresh(flag);
}
else if(matrix[1][1]==matrix[2][1] && matrix[2][1]==matrix[3][1])
{
setcolor(CYAN); line(245,150,245,300); flag=Refresh(flag);
}
else if(matrix[1][1]==matrix[2][2] && matrix[2][2]==matrix[3][3])
{
setcolor(CYAN); line(235,150,410,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='7' && flag==1&& mat[1][1]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(240,160,"O"); flag=0; matrix[1][1]=2,mat[1][1]=1;
if(matrix[1][1]==matrix[1][2] && matrix[1][2]==matrix[1][3])
{
setcolor(CYAN); line(220,170,410,170); flag=Refresh(flag);
}
else if(matrix[1][1]==matrix[2][1] && matrix[2][1]==matrix[3][1])
{
setcolor(CYAN); line(245,150,245,300); flag=Refresh(flag);
}
else if(matrix[1][1]==matrix[2][2] && matrix[2][2]==matrix[3][3])
{
setcolor(CYAN); line(235,150,410,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='8' && flag==0&& mat[1][2]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(305,160,"X"); flag=1; matrix[1][2]=1,mat[1][2]=1;
if(matrix[1][1]==matrix[1][2] && matrix[1][2]==matrix[1][3])
{
setcolor(CYAN); line(220,170,410,170); flag=Refresh(flag);
}
else if(matrix[1][2]==matrix[2][2] && matrix[2][2]==matrix[3][2])
{
setcolor(CYAN); line(315,150,315,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='8' && flag==1&& mat[1][2]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(305,160,"O"); flag=0; matrix[1][2]=2,mat[1][2]=1;
if(matrix[1][1]==matrix[1][2] && matrix[1][2]==matrix[1][3])
{
setcolor(CYAN); line(220,170,410,170); flag=Refresh(flag);
}
else if(matrix[1][2]==matrix[2][2] && matrix[2][2]==matrix[3][2])
{
setcolor(CYAN); line(315,150,315,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='9' && flag==0&& mat[1][3]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(370,160,"X"); flag=1; matrix[1][3]=1,mat[1][3]=1;
if(matrix[1][1]==matrix[1][2] && matrix[1][2]==matrix[1][3])
{
setcolor(CYAN); line(220,170,410,170); flag=Refresh(flag);
}
else if(matrix[1][3]==matrix[2][3] && matrix[2][3]==matrix[3][3])
{
setcolor(CYAN); line(375,150,375,300); flag=Refresh(flag);
}
else if(matrix[1][3]==matrix[2][2] && matrix[2][2]==matrix[3][1])
{
setcolor(CYAN); line(390,150,220,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='9' && flag==1&& mat[1][3]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(370,160,"O"); flag=0; matrix[1][3]=2,mat[1][3]=1;
if(matrix[1][1]==matrix[1][2] && matrix[1][2]==matrix[1][3])
{
setcolor(CYAN); line(220,170,410,170); flag=Refresh(flag);
}
else if(matrix[1][3]==matrix[2][3] && matrix[2][3]==matrix[3][3])
{
setcolor(CYAN); line(375,150,375,300); flag=Refresh(flag);
}
else if(matrix[1][3]==matrix[2][2] && matrix[2][2]==matrix[3][1])
{
setcolor(CYAN); line(390,150,220,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='4' && flag==0&& mat[2][1]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(240,215,"X"); flag=1; matrix[2][1]=1,mat[2][1]=1;
if(matrix[1][1]==matrix[2][1] && matrix[2][1]==matrix[3][1])
{
setcolor(CYAN); line(245,150,245,300);flag=Refresh(flag);
}
else if(matrix[2][1]==matrix[2][2] && matrix[2][2]==matrix[2][3])
{
setcolor(CYAN); line(235,215,400,215); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='4' && flag==1&& mat[2][1]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(240,215,"O"); flag=0; matrix[2][1]=2,mat[2][1]=1;
if(matrix[1][1]==matrix[2][1] && matrix[2][1]==matrix[3][1])
{
setcolor(CYAN); line(245,150,245,300); flag=Refresh(flag);
}
else if(matrix[2][1]==matrix[2][2] && matrix[2][2]==matrix[2][3])
{
setcolor(CYAN); line(235,215,400,215); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='5' && flag==0&& mat[2][2]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(305,215,"X"); flag=1; matrix[2][2]=1,mat[2][2]=1;
if(matrix[1][2]==matrix[2][2] && matrix[2][2]==matrix[3][2])
{
setcolor(CYAN); line(315,150,315,300); flag=Refresh(flag);
}
else if(matrix[2][1]==matrix[2][2] && matrix[2][2]==matrix[2][3])
{
setcolor(CYAN); line(235,215,400,215); flag=Refresh(flag);
}
else if(matrix[1][1]==matrix[2][2] && matrix[2][2]==matrix[3][3])
{
setcolor(CYAN); line(235,150,410,300); flag=Refresh(flag);
}
else if(matrix[1][3]==matrix[2][2] && matrix[2][2]==matrix[3][1])
{
setcolor(CYAN); line(390,150,220,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='5' && flag==1&& mat[2][2]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(305,215,"O"); flag=0; matrix[2][2]=2,mat[2][2]=1;
if(matrix[1][2]==matrix[2][2] && matrix[2][2]==matrix[3][2])
{
setcolor(CYAN); line(315,150,315,300); flag=Refresh(flag);
}
else if(matrix[2][1]==matrix[2][2] && matrix[2][2]==matrix[2][3])
{
setcolor(CYAN); line(235,215,400,215); flag=Refresh(flag);
}
else if(matrix[1][1]==matrix[2][2] && matrix[2][2]==matrix[3][3])
{
setcolor(CYAN); line(235,150,410,300); flag=Refresh(flag);
}
else if(matrix[1][3]==matrix[2][2] && matrix[2][2]==matrix[3][1])
{
setcolor(CYAN); line(390,150,220,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='6' && flag==0&& mat[2][3]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(370,215,"X"); flag=1; matrix[2][3]=1,mat[2][3]=1;
if(matrix[1][3]==matrix[2][3] && matrix[2][3]==matrix[3][3])
{
setcolor(CYAN); line(375,150,375,300); flag=Refresh(flag);
}
else if(matrix[2][1]==matrix[2][2] && matrix[2][2]==matrix[2][3])
{
setcolor(CYAN); line(235,215,400,215); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='6' && flag==1&& mat[2][3]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(370,215,"O"); flag=0; matrix[2][3]=2,mat[2][3]=1;
if(matrix[1][3]==matrix[2][3] && matrix[2][3]==matrix[3][3])
{
setcolor(CYAN); line(375,150,375,300); flag=Refresh(flag);
}
else if(matrix[2][1]==matrix[2][2] && matrix[2][2]==matrix[2][3])
{
setcolor(CYAN); line(235,215,400,215); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='1' && flag==0&& mat[3][1]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(240,270,"X"); flag=1; matrix[3][1]=1,mat[3][1]=1;
if(matrix[1][1]==matrix[2][1] && matrix[2][1]==matrix[3][1])
{
setcolor(CYAN); line(245,150,245,300); flag=Refresh(flag);
}
else if(matrix[1][3]==matrix[2][2] && matrix[2][2]==matrix[3][1])
{
setcolor(CYAN); line(390,150,220,300); flag=Refresh(flag);
}
else if(matrix[3][1]==matrix[3][2] && matrix[3][2]==matrix[3][3])
{
setcolor(CYAN); line(235,275,400,275); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='1' && flag==1&& mat[3][1]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(240,270,"O"); flag=0; matrix[3][1]=2,mat[3][1]=1;
if(matrix[1][1]==matrix[2][1] && matrix[2][1]==matrix[3][1])
{
setcolor(CYAN); line(245,150,245,300); flag=Refresh(flag);
}
else if(matrix[1][3]==matrix[2][2] && matrix[2][2]==matrix[3][1])
{
setcolor(CYAN); line(390,150,220,300); flag=Refresh(flag);
}
else if(matrix[3][1]==matrix[3][2] && matrix[3][2]==matrix[3][3])
{
setcolor(CYAN); line(235,275,400,275); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='2' && flag==0&& mat[3][2]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(305,270,"X"); flag=1; matrix[3][2]=1,mat[3][2]=1;
if(matrix[3][1]==matrix[3][2] && matrix[3][2]==matrix[3][3])
{
setcolor(CYAN); line(235,275,400,275); flag=Refresh(flag);
}
else if(matrix[1][2]==matrix[2][2] && matrix[2][2]==matrix[3][2])
{
setcolor(CYAN); line(315,150,315,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='2' && flag==1&& mat[3][2]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(305,270,"O"); flag=0; matrix[3][2]=2,mat[3][2]=1;
if(matrix[3][1]==matrix[3][2] && matrix[3][2]==matrix[3][3])
{
setcolor(CYAN); line(235,275,400,275); flag=Refresh(flag);
}
else if(matrix[1][2]==matrix[2][2] && matrix[2][2]==matrix[3][2])
{
setcolor(CYAN); line(315,150,315,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='3' && flag==0&& mat[3][3]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(370,270,"X"); flag=1; matrix[3][3]=1,mat[3][3]=1;
if(matrix[3][1]==matrix[3][2] && matrix[3][2]==matrix[3][3])
{
setcolor(CYAN); line(235,275,400,275); flag=Refresh(flag);
}
else if(matrix[1][3]==matrix[2][3] && matrix[2][3]==matrix[3][3])
{
setcolor(CYAN); line(375,150,375,300); flag=Refresh(flag);
}
else if(matrix[1][1]==matrix[2][2] && matrix[2][2]==matrix[3][3])
{
setcolor(CYAN); line(235,150,410,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='3' && flag==1&& mat[3][3]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(370,270,"O"); flag=0; matrix[3][3]=2,mat[3][3]=1;
if(matrix[3][1]==matrix[3][2] && matrix[3][2]==matrix[3][3])
{
setcolor(CYAN); line(235,275,400,275); flag=Refresh(flag);
}
else if(matrix[1][3]==matrix[2][3] && matrix[2][3]==matrix[3][3])
{
setcolor(CYAN); line(375,150,375,300); flag=Refresh(flag);
}
else if(matrix[1][1]==matrix[2][2] && matrix[2][2]==matrix[3][3])
{
setcolor(CYAN); line(235,150,410,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='R'||choice=='r')
{
a=1;
for(i=1;i<=3;i++){for(j=1;j<=3;j++){matrix[i][j]=a;a++;}}
flag=0;Swindow();
for(i=1;i<=3;i++){for(j=1;j<=3;j++){mat[i][j]=0;}}
graf();
flag=Clear(flag); goto input;
}
else
{
sound(2589); delay(150);nosound();setcolor(GREEN);
settextstyle(DEFAULT_FONT,HORIZ_DIR,1);outtextxy(300,400,"Invalid key press"); goto input;
}
stop : closegraph(); _exit(0);
}
void Swindow(void)
{
cleardevice();
setcolor(RED); settextstyle(DEFAULT_FONT,HORIZ_DIR,3);
outtextxy(30,50,"CROSS PUZZLE MIXING GAME");
setcolor(WHITE);
line(225,190,400,190); line(225,250,400,250);
line(275,150,275,300); line(350,150,350,300);
setcolor(YELLOW); settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
outtextxy(25,450,"press `Esc' to Help. press `0'(zero) to exit. press `R' to restart.");
outtextxy(25,470,"Press `S' To Show the Winer List");
setcolor(GREEN); outtextxy(50,400,"ENTER VALUE :");
}
int Refresh(int flag)
{
int i,j,a=5;
for(i=1;i<=3;i++){for(j=1;j<=3;j++){matrix[i][j]=a;a++;}}
while(!kbhit())
{
if(flag==0)
{
sound(200);
gotoxy(50,24); printf("SECOND PLAYER IS WINER");
delay(1000);nosound();
}
else
{
sound(200);
gotoxy(50,24); printf("FIRST PLAYER IS WINER");
delay(1000);nosound();
}
gotoxy(50,24); printf(" ");
delay(500);
}
winbox();
flag=0;sub_REFRESH(getch());graf();Swindow();
for(i=1;i<=3;i++){for(j=1;j<=3;j++){mat[i][j]=0;}}
return flag;
}
int Clear(int flag)
{
int i,j,a=5;
for(i=1;i<=3;i++){for(j=1;j<=3;j++){matrix[i][j]=a;a++;}}
flag=0; Swindow(); return flag;
}
void HELP(void)
{
int i=50;
cleardevice();
setfillstyle(SOLID_FILL,LIGHTGRAY);
bar(0,0,getmaxx(),getmaxy()); setcolor(YELLOW);
settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(50,25,"THE INSTRUCTIONS TO PLAY THE GAME");
setcolor(MAGENTA); outtextxy(380,100,"X");
outtextxy(387,118,"O"); setcolor(BLUE);
outtextxy(220,185,"7 8 9"); outtextxy(220,225,"4 5 6");
outtextxy(220,275,"1 2 3");settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
setcolor(BLACK);
outtextxy(50,90,"[*] Two players must need to play this game.");
outtextxy(50,105,"[*] First player holds the simbol of .");
outtextxy(50,120,"[*] Second player holds the simbol of .");
outtextxy(50,320,"[*] Which player creats a straight line into the box, he is the winer.");
outtextxy(50,335,"[*] To restart the game as fresh, press `R'.");
outtextxy(50,350,"[*] press `0' (zero) to exit the game.");
outtextxy(330,460,"press any key to return back into game");
line(250,170,250,300);line(320,170,320,300);
line(200,210,375,210);line(200,260,375,260);
setcolor(RED);
outtextxy(150,150,"The Keywords which contains the value of puzzle box");
setcolor(LIGHTGREEN);settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
while(!kbhit())
{
while(!kbhit())
{
outtextxy(125,400,"Made By - Subroto Mondal");
sound(i);delay(500);bar(123,398,520,435); delay(500);i=i+15;
}
nosound();
}
Swindow();subshow();
}
void graf(void)
{
int X=160,i=0;
cleardevice();setfillstyle(SOLID_FILL,BLUE);
bar(150,220,465,235);setfillstyle(SOLID_FILL,LIGHTGREEN);
bar(155,215,470,230);delay(500);
while(i<24)
{
setfillstyle(INTERLEAVE_FILL,RED);
bar(X,218,X+10,228);i++;X=X+13;
delay(50);
}
setfillstyle(SOLID_FILL,DARKGRAY);
bar(180,185,460,200);
}
char sub_REFRESH(char ch)
{
int i,j,flag,a=5;
if (ch=='R'||ch=='r')
{
a=5;
for(i=1;i<=3;i++){for(j=1;j<=3;j++){matrix[i][j]=a;a++;}}
flag=0; Swindow();
for(i=1;i<=3;i++){for(j=1;j<=3;j++){mat[i][j]=0;}}
flag=Clear(flag);
}
else if(ch=='0')
{
a=5;
for(i=1;i<=3;i++){for(j=1;j<=3;j++){matrix[i][j]=a;a++;}}
for(i=1;i<=3;i++){for(j=1;j<=3;j++){mat[i][j]=0;}}
msgbox();
}
else
{
sound(2589);delay(150); nosound(); setcolor(GREEN);
settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
outtextxy(300,400,"Invalid key press");
}
return 0;
}
void animation(void)
{
int x=120,y=55,i,x1=500,y1=55,x2=320,y2=40,x3=130,y3=230;
setfillstyle(SOLID_FILL,WHITE);bar(0,0,getmaxx(),getmaxy());
delay(1000);
while(!kbhit())
{
setcolor(BLACK);circle(x,y,50);circle(x1,y1,50);
x=x+1,y=y+1,x1=x1-1,y1=y1+1; delay(9);
if(y==430)
{
setcolor(LIGHTBLUE);settextstyle(TRIPLEX_FONT,HORIZ_DIR,3);
for(i=1;i<=3;i++)
{
bar(90,235,700,265);delay(200);
outtextxy(90,235,"Wel Come To Cross Pazzel Mixing Game");
delay(1000);
}
delay(500);bar(0,0,getmaxx(),getmaxy());
setcolor(RED);
while(!kbhit())
{
circle(x2,y2,50);circle(x3,y3,50);
y2=y2+2,x3=x3+2;delay(20);
if(y2==430)
{
setcolor(BLACK);settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
outtextxy(385,6,"Compiled With :Terbo C++");
outtextxy(385,20,"Graphics :Borland Graphics C++");
delay(1000);
goto point;
}
}
}
}
point:
submain();
}
void subshow(void)
{
if(matrix[1][1]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(240,160,"X");}
if(matrix[1][1]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(240,160,"O");}
if(matrix[1][2]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(305,160,"X");}
if(matrix[1][2]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(305,160,"O");}
if(matrix[1][3]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(370,160,"X");}
if(matrix[1][3]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(370,160,"O");}
if(matrix[2][1]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(240,215,"X");}
if(matrix[2][1]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(240,215,"O");}
if(matrix[2][2]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(305,215,"X");}
if(matrix[2][2]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(305,215,"O");}
if(matrix[2][3]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(370,215,"X");}
if(matrix[2][3]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(370,215,"O");}
if(matrix[3][1]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(240,270,"X");}
if(matrix[3][1]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(240,270,"O");}
if(matrix[3][2]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(305,270,"X");}
if(matrix[3][2]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(305,270,"O");}
if(matrix[3][3]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(370,270,"X");}
if(matrix[3][3]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(370,270,"O");}
}
void result (void)
{
int a,i,j,flag;
if(mat[1][1]==1&&mat[1][2]==1&&mat[1][3]==1&&mat[2][1]==1&&mat[2][2]==1&&mat[2][3]==1&&mat[3][1]==1&&mat[3][2]==1&&mat[3][3]==1)
{
sound(2589); delay(150);nosound();setcolor(GREEN);
while(!kbhit())
{
settextstyle(DEFAULT_FONT,HORIZ_DIR,1);outtextxy(250,400,"Incomplite game press any key to reset the game");
delay(500);
bar(240,390,900,410);
delay(100);
}
graf();
a=5;
for(i=1;i<=3;i++){for(j=1;j<=3;j++){matrix[i][j]=a;a++;}}
flag=0;for(i=1;i<=3;i++){for(j=1;j<=3;j++){mat[i][j]=0;}}
flag=Clear(flag);submain();
}
}
void msgbox(void)
{
int CHOICE,i,j,a,flag;
setfillstyle(INTERLEAVE_FILL,BROWN);bar(130,200,495,350);
setfillstyle(SOLID_FILL,DARKGRAY); bar(140,210,485,340);
setfillstyle(SOLID_FILL,LIGHTCYAN);bar(142,212,483,223);
setcolor(BLACK); settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
outtextxy(433,214,"_ [] X");outtextxy(145,214,"Meassage Box");
setcolor(WHITE);outtextxy(180,250,"Are You Want To Sure Quit Game?");
outtextxy(210,310,"Press TAB To Select Option.");
outtextxy(210,325,"Press Enter To Select Choice.");CHOICE=optionYN();
if(CHOICE==1){closegraph();exit(0);}else{submain();}
}
int optionYN(void)
{
int CHOICE,ch;
input:
CHOICE=0;
settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
setfillstyle(SOLID_FILL,DARKGRAY);bar(320,280,370,300);
setfillstyle(SOLID_FILL,BLACK); bar(395,280,445,300);
setfillstyle(SOLID_FILL,WHITE); bar(325,275,375,295);
bar(400,275,450,295);setcolor(GREEN);
outtextxy(340,282,"YES");settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(410,278,"NO"); fflush(stdin);
ch=getch();
if(ch==TAB||ch==LEFT)
{
settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
setfillstyle(SOLID_FILL,BLACK);bar(320,280,370,300);
setfillstyle(SOLID_FILL,DARKGRAY);bar(395,280,445,300);
setfillstyle(SOLID_FILL,WHITE);bar(325,275,375,295);
bar(400,275,450,295);setcolor(GREEN);
outtextxy(420,282,"NO");settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(328,278,"YES");CHOICE=1;
if(getch()==ENT){return CHOICE;}else{goto input;}
}
if(ch==ENT){return CHOICE; }else{ goto input; }
}
void winbox(void)
{
wk w;
char ch;
int CHOICE,i,j,a,flag;
setfillstyle(INTERLEAVE_FILL,BROWN);bar(130,200,495,350);
setfillstyle(SOLID_FILL,DARKGRAY); bar(140,210,485,340);
setfillstyle(SOLID_FILL,LIGHTCYAN);bar(142,212,483,223);
setcolor(BLACK); settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
outtextxy(433,214,"_ [] X");outtextxy(145,214,"Meassage Box");
setcolor(WHITE);outtextxy(160,250,"ENTER WINER NAME :-");
outtextxy(160,280,"ENTER LOOSER NAME :-");
outtextxy(210,325,"Press Enter To Save This Record.");
setcolor(WHITE);
outtextxy(140,230," Press 'Y'to enter winer and losser name..");
getch();
ch=getch();
if(ch=='y'||ch=='Y')
{
gotoxy(41,16); fflush(stdin);
gets(w.win); gotoxy(41,18);
fflush(stdin); gets(w.loss);
fs=fopen("c:\\WINDOWS/CROSSGAM/DATA.DAT","ab");
fwrite(&w,SIZE,1,fs); fclose(fs);
}
else
{
setfillstyle(SOLID_FILL,DARKGRAY); bar(200,320,485,340);
outtextxy(210,325,"The record is not save..");
}
}
void winlist(void)
{ int x=24,y=11,x1=45,x2=40,c=1,count=0,count1=0,ch;
wk w;
winbox1();
fs=fopen("c:\\WINDOWS/CROSSGAM/DATA.DAT","r");
if(fs==NULL)
{
outtextxy(225,230,"NO DATA FILE WAS FOUND");
}
else
{
while (fread(&w,SIZE,1,fs)==1)
{
count++;
if(count==0)
outtextxy(225,230,"NO RECORD WAS FOUND");
}
fclose(fs);
fs=fopen("c:\\WINDOWS/CROSSGAM/DATA.DAT","r");
while(fread(&w,SIZE,1,fs)==1)
{
gotoxy(x-5,y);printf("%d.)",c);
gotoxy(x,y);puts(w.win);
gotoxy(x2,y);printf("Vs");
gotoxy(x1,y);puts(w.loss);
y=y+1; c++; count1++;
if(count1==10)
{
gotoxy(19,23);
printf("Press enter key to continue & `E' to exit ");
ch=getch();if(ch=='e'||ch=='E'){ break;}
count1=0; y=11; count1=0; winbox1();
}
}
}setcolor(WHITE);outtextxy(210,325,"Press any key to back."); setcolor(WHITE);
getch(); submain(); Swindow(); subshow();
}
void winbox1(void)
{
setfillstyle(INTERLEAVE_FILL,BROWN);bar(130,100,495,380);
setfillstyle(SOLID_FILL,DARKGRAY); bar(140,110,485,370);
setfillstyle(SOLID_FILL,LIGHTCYAN);bar(142,112,483,123);
setcolor(BLACK); settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
outtextxy(433,114,"_ [] X");outtextxy(145,114,"WINER LIST BOX");
setcolor(WHITE);outtextxy(160,130,"WINER NAME");
outtextxy(380,130,"LOOSER NAME ");setcolor(BLACK);
line(150,147,477,147);setcolor(RED);
}
#include<stdio.h>
#include<conio.h>
#include<graphics.h>
#include<process.h>
#include<dos.h>
#define ESC 0x1b
#define ENT 13
#define TAB 9
#define LEFT 75
#define RIGHT 77
FILE *fs;
struct winlist
{
char win[60];
char loss[60];
};
typedef struct winlist wk;
long int SIZE =sizeof(wk);
void Swindow(void);
void HELP(void);
void graf(void);
int Clear(int );
int Refresh(int );
char sub_REFRESH();
void animation(void);
void submain(void);
void subshow(void);
void result(void);
void msgbox(void);
int optionYN(void);
void winbox(void);
void winlist(void);
void winbox1(void);
int matrix[3][3];
int mat[3][3];
void main(void)
{
int i,j,a,gdriver = DETECT, gmode;
char choice;
initgraph(&gdriver, &gmode, "c:\\WINDOWS/Crossgam/"); // Change Driver Path as per your turbo C Graphics EGAVGA.BGI file
animation();
exit(0);
}
void submain(void)
{
int flag=0,i,j,a;
char choice;
Swindow();
subshow();
input:
fflush(stdin);
choice=getch();
setfillstyle(SOLID_FILL,BLACK);
bar(300,400,600,430);
if(choice==ESC){ HELP(); goto input; }
if(choice=='0'){msgbox();}
if(choice=='s'||choice=='S'){winbox1();winlist();}
if(choice=='7' && flag==0 && mat[1][1]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(240,160,"X"); flag=1; matrix[1][1]=1,mat[1][1]=1;
if(matrix[1][1]==matrix[1][2] && matrix[1][2]==matrix[1][3])
{
setcolor(CYAN); line(220,170,410,170); flag=Refresh(flag);
}
else if(matrix[1][1]==matrix[2][1] && matrix[2][1]==matrix[3][1])
{
setcolor(CYAN); line(245,150,245,300); flag=Refresh(flag);
}
else if(matrix[1][1]==matrix[2][2] && matrix[2][2]==matrix[3][3])
{
setcolor(CYAN); line(235,150,410,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='7' && flag==1&& mat[1][1]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(240,160,"O"); flag=0; matrix[1][1]=2,mat[1][1]=1;
if(matrix[1][1]==matrix[1][2] && matrix[1][2]==matrix[1][3])
{
setcolor(CYAN); line(220,170,410,170); flag=Refresh(flag);
}
else if(matrix[1][1]==matrix[2][1] && matrix[2][1]==matrix[3][1])
{
setcolor(CYAN); line(245,150,245,300); flag=Refresh(flag);
}
else if(matrix[1][1]==matrix[2][2] && matrix[2][2]==matrix[3][3])
{
setcolor(CYAN); line(235,150,410,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='8' && flag==0&& mat[1][2]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(305,160,"X"); flag=1; matrix[1][2]=1,mat[1][2]=1;
if(matrix[1][1]==matrix[1][2] && matrix[1][2]==matrix[1][3])
{
setcolor(CYAN); line(220,170,410,170); flag=Refresh(flag);
}
else if(matrix[1][2]==matrix[2][2] && matrix[2][2]==matrix[3][2])
{
setcolor(CYAN); line(315,150,315,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='8' && flag==1&& mat[1][2]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(305,160,"O"); flag=0; matrix[1][2]=2,mat[1][2]=1;
if(matrix[1][1]==matrix[1][2] && matrix[1][2]==matrix[1][3])
{
setcolor(CYAN); line(220,170,410,170); flag=Refresh(flag);
}
else if(matrix[1][2]==matrix[2][2] && matrix[2][2]==matrix[3][2])
{
setcolor(CYAN); line(315,150,315,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='9' && flag==0&& mat[1][3]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(370,160,"X"); flag=1; matrix[1][3]=1,mat[1][3]=1;
if(matrix[1][1]==matrix[1][2] && matrix[1][2]==matrix[1][3])
{
setcolor(CYAN); line(220,170,410,170); flag=Refresh(flag);
}
else if(matrix[1][3]==matrix[2][3] && matrix[2][3]==matrix[3][3])
{
setcolor(CYAN); line(375,150,375,300); flag=Refresh(flag);
}
else if(matrix[1][3]==matrix[2][2] && matrix[2][2]==matrix[3][1])
{
setcolor(CYAN); line(390,150,220,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='9' && flag==1&& mat[1][3]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(370,160,"O"); flag=0; matrix[1][3]=2,mat[1][3]=1;
if(matrix[1][1]==matrix[1][2] && matrix[1][2]==matrix[1][3])
{
setcolor(CYAN); line(220,170,410,170); flag=Refresh(flag);
}
else if(matrix[1][3]==matrix[2][3] && matrix[2][3]==matrix[3][3])
{
setcolor(CYAN); line(375,150,375,300); flag=Refresh(flag);
}
else if(matrix[1][3]==matrix[2][2] && matrix[2][2]==matrix[3][1])
{
setcolor(CYAN); line(390,150,220,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='4' && flag==0&& mat[2][1]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(240,215,"X"); flag=1; matrix[2][1]=1,mat[2][1]=1;
if(matrix[1][1]==matrix[2][1] && matrix[2][1]==matrix[3][1])
{
setcolor(CYAN); line(245,150,245,300);flag=Refresh(flag);
}
else if(matrix[2][1]==matrix[2][2] && matrix[2][2]==matrix[2][3])
{
setcolor(CYAN); line(235,215,400,215); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='4' && flag==1&& mat[2][1]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(240,215,"O"); flag=0; matrix[2][1]=2,mat[2][1]=1;
if(matrix[1][1]==matrix[2][1] && matrix[2][1]==matrix[3][1])
{
setcolor(CYAN); line(245,150,245,300); flag=Refresh(flag);
}
else if(matrix[2][1]==matrix[2][2] && matrix[2][2]==matrix[2][3])
{
setcolor(CYAN); line(235,215,400,215); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='5' && flag==0&& mat[2][2]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(305,215,"X"); flag=1; matrix[2][2]=1,mat[2][2]=1;
if(matrix[1][2]==matrix[2][2] && matrix[2][2]==matrix[3][2])
{
setcolor(CYAN); line(315,150,315,300); flag=Refresh(flag);
}
else if(matrix[2][1]==matrix[2][2] && matrix[2][2]==matrix[2][3])
{
setcolor(CYAN); line(235,215,400,215); flag=Refresh(flag);
}
else if(matrix[1][1]==matrix[2][2] && matrix[2][2]==matrix[3][3])
{
setcolor(CYAN); line(235,150,410,300); flag=Refresh(flag);
}
else if(matrix[1][3]==matrix[2][2] && matrix[2][2]==matrix[3][1])
{
setcolor(CYAN); line(390,150,220,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='5' && flag==1&& mat[2][2]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(305,215,"O"); flag=0; matrix[2][2]=2,mat[2][2]=1;
if(matrix[1][2]==matrix[2][2] && matrix[2][2]==matrix[3][2])
{
setcolor(CYAN); line(315,150,315,300); flag=Refresh(flag);
}
else if(matrix[2][1]==matrix[2][2] && matrix[2][2]==matrix[2][3])
{
setcolor(CYAN); line(235,215,400,215); flag=Refresh(flag);
}
else if(matrix[1][1]==matrix[2][2] && matrix[2][2]==matrix[3][3])
{
setcolor(CYAN); line(235,150,410,300); flag=Refresh(flag);
}
else if(matrix[1][3]==matrix[2][2] && matrix[2][2]==matrix[3][1])
{
setcolor(CYAN); line(390,150,220,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='6' && flag==0&& mat[2][3]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(370,215,"X"); flag=1; matrix[2][3]=1,mat[2][3]=1;
if(matrix[1][3]==matrix[2][3] && matrix[2][3]==matrix[3][3])
{
setcolor(CYAN); line(375,150,375,300); flag=Refresh(flag);
}
else if(matrix[2][1]==matrix[2][2] && matrix[2][2]==matrix[2][3])
{
setcolor(CYAN); line(235,215,400,215); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='6' && flag==1&& mat[2][3]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(370,215,"O"); flag=0; matrix[2][3]=2,mat[2][3]=1;
if(matrix[1][3]==matrix[2][3] && matrix[2][3]==matrix[3][3])
{
setcolor(CYAN); line(375,150,375,300); flag=Refresh(flag);
}
else if(matrix[2][1]==matrix[2][2] && matrix[2][2]==matrix[2][3])
{
setcolor(CYAN); line(235,215,400,215); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='1' && flag==0&& mat[3][1]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(240,270,"X"); flag=1; matrix[3][1]=1,mat[3][1]=1;
if(matrix[1][1]==matrix[2][1] && matrix[2][1]==matrix[3][1])
{
setcolor(CYAN); line(245,150,245,300); flag=Refresh(flag);
}
else if(matrix[1][3]==matrix[2][2] && matrix[2][2]==matrix[3][1])
{
setcolor(CYAN); line(390,150,220,300); flag=Refresh(flag);
}
else if(matrix[3][1]==matrix[3][2] && matrix[3][2]==matrix[3][3])
{
setcolor(CYAN); line(235,275,400,275); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='1' && flag==1&& mat[3][1]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(240,270,"O"); flag=0; matrix[3][1]=2,mat[3][1]=1;
if(matrix[1][1]==matrix[2][1] && matrix[2][1]==matrix[3][1])
{
setcolor(CYAN); line(245,150,245,300); flag=Refresh(flag);
}
else if(matrix[1][3]==matrix[2][2] && matrix[2][2]==matrix[3][1])
{
setcolor(CYAN); line(390,150,220,300); flag=Refresh(flag);
}
else if(matrix[3][1]==matrix[3][2] && matrix[3][2]==matrix[3][3])
{
setcolor(CYAN); line(235,275,400,275); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='2' && flag==0&& mat[3][2]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(305,270,"X"); flag=1; matrix[3][2]=1,mat[3][2]=1;
if(matrix[3][1]==matrix[3][2] && matrix[3][2]==matrix[3][3])
{
setcolor(CYAN); line(235,275,400,275); flag=Refresh(flag);
}
else if(matrix[1][2]==matrix[2][2] && matrix[2][2]==matrix[3][2])
{
setcolor(CYAN); line(315,150,315,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='2' && flag==1&& mat[3][2]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(305,270,"O"); flag=0; matrix[3][2]=2,mat[3][2]=1;
if(matrix[3][1]==matrix[3][2] && matrix[3][2]==matrix[3][3])
{
setcolor(CYAN); line(235,275,400,275); flag=Refresh(flag);
}
else if(matrix[1][2]==matrix[2][2] && matrix[2][2]==matrix[3][2])
{
setcolor(CYAN); line(315,150,315,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='3' && flag==0&& mat[3][3]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(370,270,"X"); flag=1; matrix[3][3]=1,mat[3][3]=1;
if(matrix[3][1]==matrix[3][2] && matrix[3][2]==matrix[3][3])
{
setcolor(CYAN); line(235,275,400,275); flag=Refresh(flag);
}
else if(matrix[1][3]==matrix[2][3] && matrix[2][3]==matrix[3][3])
{
setcolor(CYAN); line(375,150,375,300); flag=Refresh(flag);
}
else if(matrix[1][1]==matrix[2][2] && matrix[2][2]==matrix[3][3])
{
setcolor(CYAN); line(235,150,410,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='3' && flag==1&& mat[3][3]==0)
{
setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(370,270,"O"); flag=0; matrix[3][3]=2,mat[3][3]=1;
if(matrix[3][1]==matrix[3][2] && matrix[3][2]==matrix[3][3])
{
setcolor(CYAN); line(235,275,400,275); flag=Refresh(flag);
}
else if(matrix[1][3]==matrix[2][3] && matrix[2][3]==matrix[3][3])
{
setcolor(CYAN); line(375,150,375,300); flag=Refresh(flag);
}
else if(matrix[1][1]==matrix[2][2] && matrix[2][2]==matrix[3][3])
{
setcolor(CYAN); line(235,150,410,300); flag=Refresh(flag);
}
else
result();
goto input;
}
else if(choice=='R'||choice=='r')
{
a=1;
for(i=1;i<=3;i++){for(j=1;j<=3;j++){matrix[i][j]=a;a++;}}
flag=0;Swindow();
for(i=1;i<=3;i++){for(j=1;j<=3;j++){mat[i][j]=0;}}
graf();
flag=Clear(flag); goto input;
}
else
{
sound(2589); delay(150);nosound();setcolor(GREEN);
settextstyle(DEFAULT_FONT,HORIZ_DIR,1);outtextxy(300,400,"Invalid key press"); goto input;
}
stop : closegraph(); _exit(0);
}
void Swindow(void)
{
cleardevice();
setcolor(RED); settextstyle(DEFAULT_FONT,HORIZ_DIR,3);
outtextxy(30,50,"CROSS PUZZLE MIXING GAME");
setcolor(WHITE);
line(225,190,400,190); line(225,250,400,250);
line(275,150,275,300); line(350,150,350,300);
setcolor(YELLOW); settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
outtextxy(25,450,"press `Esc' to Help. press `0'(zero) to exit. press `R' to restart.");
outtextxy(25,470,"Press `S' To Show the Winer List");
setcolor(GREEN); outtextxy(50,400,"ENTER VALUE :");
}
int Refresh(int flag)
{
int i,j,a=5;
for(i=1;i<=3;i++){for(j=1;j<=3;j++){matrix[i][j]=a;a++;}}
while(!kbhit())
{
if(flag==0)
{
sound(200);
gotoxy(50,24); printf("SECOND PLAYER IS WINER");
delay(1000);nosound();
}
else
{
sound(200);
gotoxy(50,24); printf("FIRST PLAYER IS WINER");
delay(1000);nosound();
}
gotoxy(50,24); printf(" ");
delay(500);
}
winbox();
flag=0;sub_REFRESH(getch());graf();Swindow();
for(i=1;i<=3;i++){for(j=1;j<=3;j++){mat[i][j]=0;}}
return flag;
}
int Clear(int flag)
{
int i,j,a=5;
for(i=1;i<=3;i++){for(j=1;j<=3;j++){matrix[i][j]=a;a++;}}
flag=0; Swindow(); return flag;
}
void HELP(void)
{
int i=50;
cleardevice();
setfillstyle(SOLID_FILL,LIGHTGRAY);
bar(0,0,getmaxx(),getmaxy()); setcolor(YELLOW);
settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(50,25,"THE INSTRUCTIONS TO PLAY THE GAME");
setcolor(MAGENTA); outtextxy(380,100,"X");
outtextxy(387,118,"O"); setcolor(BLUE);
outtextxy(220,185,"7 8 9"); outtextxy(220,225,"4 5 6");
outtextxy(220,275,"1 2 3");settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
setcolor(BLACK);
outtextxy(50,90,"[*] Two players must need to play this game.");
outtextxy(50,105,"[*] First player holds the simbol of .");
outtextxy(50,120,"[*] Second player holds the simbol of .");
outtextxy(50,320,"[*] Which player creats a straight line into the box, he is the winer.");
outtextxy(50,335,"[*] To restart the game as fresh, press `R'.");
outtextxy(50,350,"[*] press `0' (zero) to exit the game.");
outtextxy(330,460,"press any key to return back into game");
line(250,170,250,300);line(320,170,320,300);
line(200,210,375,210);line(200,260,375,260);
setcolor(RED);
outtextxy(150,150,"The Keywords which contains the value of puzzle box");
setcolor(LIGHTGREEN);settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
while(!kbhit())
{
while(!kbhit())
{
outtextxy(125,400,"Made By - Subroto Mondal");
sound(i);delay(500);bar(123,398,520,435); delay(500);i=i+15;
}
nosound();
}
Swindow();subshow();
}
void graf(void)
{
int X=160,i=0;
cleardevice();setfillstyle(SOLID_FILL,BLUE);
bar(150,220,465,235);setfillstyle(SOLID_FILL,LIGHTGREEN);
bar(155,215,470,230);delay(500);
while(i<24)
{
setfillstyle(INTERLEAVE_FILL,RED);
bar(X,218,X+10,228);i++;X=X+13;
delay(50);
}
setfillstyle(SOLID_FILL,DARKGRAY);
bar(180,185,460,200);
}
char sub_REFRESH(char ch)
{
int i,j,flag,a=5;
if (ch=='R'||ch=='r')
{
a=5;
for(i=1;i<=3;i++){for(j=1;j<=3;j++){matrix[i][j]=a;a++;}}
flag=0; Swindow();
for(i=1;i<=3;i++){for(j=1;j<=3;j++){mat[i][j]=0;}}
flag=Clear(flag);
}
else if(ch=='0')
{
a=5;
for(i=1;i<=3;i++){for(j=1;j<=3;j++){matrix[i][j]=a;a++;}}
for(i=1;i<=3;i++){for(j=1;j<=3;j++){mat[i][j]=0;}}
msgbox();
}
else
{
sound(2589);delay(150); nosound(); setcolor(GREEN);
settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
outtextxy(300,400,"Invalid key press");
}
return 0;
}
void animation(void)
{
int x=120,y=55,i,x1=500,y1=55,x2=320,y2=40,x3=130,y3=230;
setfillstyle(SOLID_FILL,WHITE);bar(0,0,getmaxx(),getmaxy());
delay(1000);
while(!kbhit())
{
setcolor(BLACK);circle(x,y,50);circle(x1,y1,50);
x=x+1,y=y+1,x1=x1-1,y1=y1+1; delay(9);
if(y==430)
{
setcolor(LIGHTBLUE);settextstyle(TRIPLEX_FONT,HORIZ_DIR,3);
for(i=1;i<=3;i++)
{
bar(90,235,700,265);delay(200);
outtextxy(90,235,"Wel Come To Cross Pazzel Mixing Game");
delay(1000);
}
delay(500);bar(0,0,getmaxx(),getmaxy());
setcolor(RED);
while(!kbhit())
{
circle(x2,y2,50);circle(x3,y3,50);
y2=y2+2,x3=x3+2;delay(20);
if(y2==430)
{
setcolor(BLACK);settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
outtextxy(385,6,"Compiled With :Terbo C++");
outtextxy(385,20,"Graphics :Borland Graphics C++");
delay(1000);
goto point;
}
}
}
}
point:
submain();
}
void subshow(void)
{
if(matrix[1][1]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(240,160,"X");}
if(matrix[1][1]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(240,160,"O");}
if(matrix[1][2]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(305,160,"X");}
if(matrix[1][2]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(305,160,"O");}
if(matrix[1][3]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(370,160,"X");}
if(matrix[1][3]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(370,160,"O");}
if(matrix[2][1]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(240,215,"X");}
if(matrix[2][1]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(240,215,"O");}
if(matrix[2][2]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(305,215,"X");}
if(matrix[2][2]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(305,215,"O");}
if(matrix[2][3]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(370,215,"X");}
if(matrix[2][3]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(370,215,"O");}
if(matrix[3][1]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(240,270,"X");}
if(matrix[3][1]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(240,270,"O");}
if(matrix[3][2]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(305,270,"X");}
if(matrix[3][2]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(305,270,"O");}
if(matrix[3][3]==1){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(370,270,"X");}
if(matrix[3][3]==2){setcolor(MAGENTA); settextstyle(DEFAULT_FONT,HORIZ_DIR,2);outtextxy(370,270,"O");}
}
void result (void)
{
int a,i,j,flag;
if(mat[1][1]==1&&mat[1][2]==1&&mat[1][3]==1&&mat[2][1]==1&&mat[2][2]==1&&mat[2][3]==1&&mat[3][1]==1&&mat[3][2]==1&&mat[3][3]==1)
{
sound(2589); delay(150);nosound();setcolor(GREEN);
while(!kbhit())
{
settextstyle(DEFAULT_FONT,HORIZ_DIR,1);outtextxy(250,400,"Incomplite game press any key to reset the game");
delay(500);
bar(240,390,900,410);
delay(100);
}
graf();
a=5;
for(i=1;i<=3;i++){for(j=1;j<=3;j++){matrix[i][j]=a;a++;}}
flag=0;for(i=1;i<=3;i++){for(j=1;j<=3;j++){mat[i][j]=0;}}
flag=Clear(flag);submain();
}
}
void msgbox(void)
{
int CHOICE,i,j,a,flag;
setfillstyle(INTERLEAVE_FILL,BROWN);bar(130,200,495,350);
setfillstyle(SOLID_FILL,DARKGRAY); bar(140,210,485,340);
setfillstyle(SOLID_FILL,LIGHTCYAN);bar(142,212,483,223);
setcolor(BLACK); settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
outtextxy(433,214,"_ [] X");outtextxy(145,214,"Meassage Box");
setcolor(WHITE);outtextxy(180,250,"Are You Want To Sure Quit Game?");
outtextxy(210,310,"Press TAB To Select Option.");
outtextxy(210,325,"Press Enter To Select Choice.");CHOICE=optionYN();
if(CHOICE==1){closegraph();exit(0);}else{submain();}
}
int optionYN(void)
{
int CHOICE,ch;
input:
CHOICE=0;
settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
setfillstyle(SOLID_FILL,DARKGRAY);bar(320,280,370,300);
setfillstyle(SOLID_FILL,BLACK); bar(395,280,445,300);
setfillstyle(SOLID_FILL,WHITE); bar(325,275,375,295);
bar(400,275,450,295);setcolor(GREEN);
outtextxy(340,282,"YES");settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(410,278,"NO"); fflush(stdin);
ch=getch();
if(ch==TAB||ch==LEFT)
{
settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
setfillstyle(SOLID_FILL,BLACK);bar(320,280,370,300);
setfillstyle(SOLID_FILL,DARKGRAY);bar(395,280,445,300);
setfillstyle(SOLID_FILL,WHITE);bar(325,275,375,295);
bar(400,275,450,295);setcolor(GREEN);
outtextxy(420,282,"NO");settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(328,278,"YES");CHOICE=1;
if(getch()==ENT){return CHOICE;}else{goto input;}
}
if(ch==ENT){return CHOICE; }else{ goto input; }
}
void winbox(void)
{
wk w;
char ch;
int CHOICE,i,j,a,flag;
setfillstyle(INTERLEAVE_FILL,BROWN);bar(130,200,495,350);
setfillstyle(SOLID_FILL,DARKGRAY); bar(140,210,485,340);
setfillstyle(SOLID_FILL,LIGHTCYAN);bar(142,212,483,223);
setcolor(BLACK); settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
outtextxy(433,214,"_ [] X");outtextxy(145,214,"Meassage Box");
setcolor(WHITE);outtextxy(160,250,"ENTER WINER NAME :-");
outtextxy(160,280,"ENTER LOOSER NAME :-");
outtextxy(210,325,"Press Enter To Save This Record.");
setcolor(WHITE);
outtextxy(140,230," Press 'Y'to enter winer and losser name..");
getch();
ch=getch();
if(ch=='y'||ch=='Y')
{
gotoxy(41,16); fflush(stdin);
gets(w.win); gotoxy(41,18);
fflush(stdin); gets(w.loss);
fs=fopen("c:\\WINDOWS/CROSSGAM/DATA.DAT","ab");
fwrite(&w,SIZE,1,fs); fclose(fs);
}
else
{
setfillstyle(SOLID_FILL,DARKGRAY); bar(200,320,485,340);
outtextxy(210,325,"The record is not save..");
}
}
void winlist(void)
{ int x=24,y=11,x1=45,x2=40,c=1,count=0,count1=0,ch;
wk w;
winbox1();
fs=fopen("c:\\WINDOWS/CROSSGAM/DATA.DAT","r");
if(fs==NULL)
{
outtextxy(225,230,"NO DATA FILE WAS FOUND");
}
else
{
while (fread(&w,SIZE,1,fs)==1)
{
count++;
if(count==0)
outtextxy(225,230,"NO RECORD WAS FOUND");
}
fclose(fs);
fs=fopen("c:\\WINDOWS/CROSSGAM/DATA.DAT","r");
while(fread(&w,SIZE,1,fs)==1)
{
gotoxy(x-5,y);printf("%d.)",c);
gotoxy(x,y);puts(w.win);
gotoxy(x2,y);printf("Vs");
gotoxy(x1,y);puts(w.loss);
y=y+1; c++; count1++;
if(count1==10)
{
gotoxy(19,23);
printf("Press enter key to continue & `E' to exit ");
ch=getch();if(ch=='e'||ch=='E'){ break;}
count1=0; y=11; count1=0; winbox1();
}
}
}setcolor(WHITE);outtextxy(210,325,"Press any key to back."); setcolor(WHITE);
getch(); submain(); Swindow(); subshow();
}
void winbox1(void)
{
setfillstyle(INTERLEAVE_FILL,BROWN);bar(130,100,495,380);
setfillstyle(SOLID_FILL,DARKGRAY); bar(140,110,485,370);
setfillstyle(SOLID_FILL,LIGHTCYAN);bar(142,112,483,123);
setcolor(BLACK); settextstyle(DEFAULT_FONT,HORIZ_DIR,1);
outtextxy(433,114,"_ [] X");outtextxy(145,114,"WINER LIST BOX");
setcolor(WHITE);outtextxy(160,130,"WINER NAME");
outtextxy(380,130,"LOOSER NAME ");setcolor(BLACK);
line(150,147,477,147);setcolor(RED);
}
Download Entire Project and Setup File Here
Click Here to download Criss-Cross Game
The following two tabs change content below.
I like Programming and New Technologies. And work with Linux.
Related