Add to Favorites    Make Home Page 19853 Online  
 Language Categories  
 Our Services  

Home » C Home » Games and Graphics Home » CHESS FOR TWO HUMANS

A D V E R T I S E M E N T

Search Projects & Source Codes:

Title CHESS FOR TWO HUMANS
Author AKHIL MITTAL
Author Email mittalenigma [at] indiatimes.com
Description It is a nice project of chess that will definitely blow ur mind off.So just grab it and enjoy!
Category C » Games and Graphics
Hits 369284
Code Select and Copy the Code
//Header file==========// #include<stdio.h> #include<conio.h> #include<graphics.h> void blk(int,int); void display(); //enum bool{TRUE,FALSE}; /*void main() //MAIN FUNCTION { display(); getch(); } */ void display() //DISPLAY TO SHOW THE BOARD { int gd=DETECT,gm,i,j,l,m,b; char pattern[]={0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF}; int arrodd[32][2]={ {0,0},{100,0},{200,0},{300,0},{50,50},{150,50} ,{250,50},{350,50},{0,100},{100,100},{200,100},{300,100} ,{50,150},{150,150},{250,150},{350,150},{0,200},{100,200} ,{200,200},{300,200},{50,250},{150,250},{250,250},{350,250}, {0,300},{100,300},{200,300},{300,300},{50,350},{150,350}, {250,350},{350,350} }; int arrevn[33][2]={{50,0},{150,0},{250,0},{350,0},{0,50},{100,50},{200,50}, {300,50},{50,100},{150,100},{250,100},{350,100},{0,150}, {100,150},{200,150},{300,150},{50,200},{150,200},{250,200}, {350,200},{0,250},{100,250},{200,250},{300,250},{50,300}, {150,300},{250,300},{350,300},{0,350},{100,350},{200,350}, {300,350}}; clrscr(); initgraph(&gd,&gm,""); for(i=0;i<=400;i=i+50) //to draw vertical lines of the chess board. { line(i,0,i,400); } for(j=0;j<=400;j=j+50) //to draw the horizontal lines of the chess board. { line(0,j,400,j); } blk(420,0); blk(420,250); line(0,430,0,460); //to draw the display at the bottom line(0,430,400,430); line(0,460,400,460); line(400,430,400,460); settextstyle(7,HORIZ_DIR,3); outtextxy(420,210,"chess by AKHIL"); setfillpattern(&pattern,GREEN); for(b=0;b<=31;b++) { bar(arrodd[b][0],arrodd[b][1],arrodd[b][0]+50,arrodd[b][1]+50); rectangle(arrodd[b][0],arrodd[b][1],arrodd[b][0]+50,arrodd[b][1]+50); } setfillpattern(&pattern,DARKGRAY); for(m=0;m<=31;m++) { bar(arrevn[m][0],arrevn[m][1],arrevn[m][0]+50,arrevn[m][1]+50); rectangle(arrevn[m][0],arrevn[m][1],arrevn[m][0]+50,arrevn[m][1]+50); } } void blk(int q,int r) { int y,z; for(y=q;y<=(q+200);y=y+50) { line(y,r,y,r+200);} for(z=r;z<=(r+200);z=z+50) { line(q,z,q+200,z);} } //Source file// #include<akhchs.c> //we used akhchs.c as header file #include<stdio.h> #include<conio.h> #include<dos.h> char pos[8][8],color[8][8]; void assign(char*,char*); struct block{ //structure for every block int curx,cury; char clr,blkcolor; }; union REGS i,o; //for hardware interaction char getblkcolor(int,int,int,int,char); //functions prototype char chkpawnmov(struct block* selected,int x3,int y3); char chkrookmov(struct block* selected,int x3,int y3); char chkknightmov(struct block* selected,int x3,int y3); char chkbishopmov(struct block* selected,int x3,int y3); char chkqueenmov(struct block* selected,int x3,int y3); char chkkingmov(struct block* selected,int x3,int y3); void checkpwn(int,int); void main() { int i1,j1,button,x,y,x1,y1,x2,y2,x3,y3,ch,i=0,j=0,z=1,turn=0; struct block *selected,pw[8],pb[8],rookw[2],rookb[2],bishopw[2],bishopb[2]; struct block kingw,kingb,queenw,queenb,knightw[2],knightb[2]; char id,nwblkclr,move='i'; assign(pos,color); clrscr(); display(); //for showing chess board design(); setspare(); //for drawing rook etc. setposw(pw); //sets position of black and setposb(pb); //white pawns with color setposrw(rookw,bishopw,knightw,&kingw,&queenw);//sets position of whites setposrb(rookb,bishopb,knightb,&kingb,&queenb);//sete position of blacks //restrictmouseptr(0,0,400,400); //restricts pointer of mouse in the area specified there. showmouseptr(); while(z) { i=i+1; setcolor(WHITE); if(turn%2==0) //means white's turn outtextxy(100,430,"white's turn"); else if(turn%2!=0) //means black's turn outtextxy(100,430,"black's turn"); while(i) { if(kbhit()) { ch=getch(); if(ch==' ') //escape at pressing enter. exit(0); } getmousepos(&button,&x,&y); //gets click position of mouse if((button== 001)) { sound(1000); i=i-1; delay(50); nosound(); delay(500); } } x1=relposx(x)/50; y1=relposy(y)/50; gotoxy(6,28); if(x1==pw[0].curx && y1==pw[0].cury ) { selected=&pw[0]; id='p'; } else if(x1==pw[1].curx && y1==pw[1].cury ) { selected=&pw[1]; id='p'; } else if(x1==pw[2].curx && y1==pw[2].cury ) { selected=&pw[2]; id='p'; } else if(x1==pw[3].curx && y1==pw[3].cury ) { selected=&pw[3]; id='p'; } else if(x1==pw[4].curx && y1==pw[4].cury ) { selected=&pw[4]; id='p'; } else if(x1==pw[5].curx && y1==pw[5].cury ) { selected=&pw[5]; id='p'; } else if(x1==pw[6].curx && y1==pw[6].cury ) { selected=&pw[6]; id='p'; } else if(x1==pw[7].curx && y1==pw[7].cury ) { selected=&pw[7]; id='p'; } else if(x1==pb[0].curx && y1==pb[0].cury ) { selected=&pb[0]; id='p'; } else if(x1==pb[1].curx && y1==pb[1].cury ) { selected=&pb[1]; id='p'; } else if(x1==pb[2].curx && y1==pb[2].cury ) { selected=&pb[2]; id='p'; } else if(x1==pb[3].curx && y1==pb[3].cury ) { selected=&pb[3]; id='p'; } else if(x1==pb[4].curx && y1==pb[4].cury ) { selected=&pb[4]; id='p'; } else if(x1==pb[5].curx && y1==pb[5].cury ) { selected=&pb[5]; id='p'; } else if(x1==pb[6].curx && y1==pb[6].cury ) { selected=&pb[6]; id='p'; } else if(x1==pb[7].curx && y1==pb[7].cury ) { selected=&pb[7]; id='p'; } else if(x1==rookw[0].curx && y1==rookw[0].cury) { selected=&rookw[0]; id='r'; } else if(x1==rookw[1].curx && y1==rookw[1].cury) { selected=&rookw[1]; id='r'; } else if(x1==rookb[0].curx && y1==rookb[0].cury) { selected=&rookb[0]; id='r'; } else if(x1==rookb[1].curx && y1==rookb[1].cury) { selected=&rookb[1]; id='r'; } else if(x1==bishopw[0].curx && y1==bishopw[0].cury) { selected=&bishopw[0];id='b'; } else if(x1==bishopw[1].curx && y1==bishopw[1].cury) { selected=&bishopw[1];id='b'; } else if(x1==bishopb[0].curx && y1==bishopb[0].cury) { selected=&bishopb[0];id='b'; } else if(x1==bishopb[1].curx && y1==bishopb[1].cury) { selected=&bishopb[1];id='b'; } else if(x1==kingw.curx && y1==kingw.cury) { selected=&kingw; id='g'; } else if(x1==queenw.curx && y1==queenw.cury) { selected=&queenw; id='q'; } else if(x1==kingb.curx && y1==kingb.cury) { selected=&kingb; id='g'; } else if(x1==queenb.curx && y1==queenb.cury) { selected=&queenb; id='q'; } else if(x1==knightw[0].curx && y1==knightw[0].cury) { selected=&knightw[0];id='k'; } else if(x1==knightw[1].curx && y1==knightw[1].cury) { selected=&knightw[1];id='k'; } else if(x1==knightb[0].curx && y1==knightb[0].cury) { selected=&knightb[0];id='k'; } else if(x1==knightb[1].curx && y1==knightb[1].cury) { selected=&knightb[1];id='k'; } if((turn%2==0 && selected->clr=='b')||(turn%2!=0 && selected->clr=='w')) exit(); turn=turn+1; j=j+1; while(j) { if(kbhit()) { ch=getch(); if(ch==' ') //escape at pressing enter. exit(0); } getmousepos(&button,&x2,&y2); //gets click position of mouse if((button== 001)) { sound(500); j=j-1; delay(100); nosound(); delay(500); } } x3=relposx(x2)/50; //gives standard x coordinate y3=relposy(y2)/50; //gives standard y coordinate nwblkclr=getblkcolor(x1,y1,x3,y3,selected->blkcolor);//get destination block's color; gotoxy(6,28); bottom(); //clears bottom display if(id=='p') //wheteher pawn? { move= chkpawnmov(selected,x3,y3); if(move=='v') { draw(x3,y3,selected,nwblkclr,'p'); checkpwn(x3,y3); } } else if(id=='r') //whether rook? { move=chkrookmov(selected,x3,y3); if(move=='v' ) { draw(x3,y3,selected,nwblkclr,'r'); } } else if(id=='k') //whether knight? { move= chkknightmov(selected,x3,y3); if(move=='v' ) { draw(x3,y3,selected,nwblkclr,'k'); } } else if(id=='b') //whether bishop? { move=chkbishopmov(selected,x3,y3); if(move=='v') { draw(x3,y3,selected,nwblkclr,'b'); } } else if(id=='q') //whether queen? { move=chkqueenmov(selected,x3,y3); if(move=='v') draw(x3,y3,selected,nwblkclr,'q'); } else if(id=='g') //whether king? { move=chkkingmov(selected,x3,y3); if(move=='v') draw(x3,y3,selected,nwblkclr,'g'); } if(move=='i') turn=turn-1; } getch(); } getmousepos(int *button,int* x,int* y) //gets mouse position. { i.x.ax=3; int86(0x33,&i,&o); *button=o.x.bx; *x=o.x.cx; *y=o.x.dx; return; } showmouseptr() //shows pointer in graphics mode. { i.x.ax=1; int86(0x33,&i,&o); return; } void hidemouseptr() //hides pointer { i.x.ax=0; int86(0x33,&i,&o); return; } restrictmouseptr(int x1,int y1,int x2,int y2) //restrict pointer { i.x.ax=7; i.x.cx=x1; i.x.dx=x2; int86(0x33,&i,&o); i.x.ax=8; i.x.cx=y1; i.x.dx=y2; int86(0x33,&i,&o); return; } setposw(struct block* pawnw) //sete each white pawn. { int count,togl; for(count=0,togl=0;count<=7;count++,togl++) { pawnw->curx=count; pawnw->cury=6; pawnw->clr='b'; if(togl%2==0) pawnw->blkcolor='g'; else if(togl%2==1) pawnw->blkcolor='m'; pawnw++; } return; } setposb(struct block* pawnb) //sets each black pawn. { int count,togl; for(count=0,togl=0;count<=7;count++,togl++) { pawnb->curx=count; pawnb->cury=1; pawnb->clr='w'; if(togl%2==0) pawnb->blkcolor='m'; else if(togl%2==1) pawnb->blkcolor='g'; pawnb++; } return; } char chkpawnmov(struct block* selected,int x3,int y3) { char mov,id,c; //checks each pawn (black and white) move. id=pos[x3][y3]; //anybody? c=color[x3][y3]; //color? if(selected->clr=='w') //white pawn? { if(x3==selected->curx && y3==selected->cury+1 ) //move 1 { if(id=='n') //id is none when no body is there mov='v'; } else if( (x3==selected->curx+1 || x3==selected->curx-1) && y3==selected->cury+1) { if(id!='n' && c=='b') //black present? { mov='v'; send(id,c); } } } else if(selected->clr=='b') { if(x3==selected->curx && y3==selected->cury-1) //black and white both not there? { if(id=='n') mov='v'; } else if((x3==selected->curx-1 || x3==selected->curx+1) && y3==selected->cury-1) { if(id!='n' && c=='w' ) //white there { mov='v'; //valid move send(id,c); } } } else { //no action at invalid move. mov='i'; } return(mov); } setposrw(struct block* rookw,struct block* bishopw,struct block* knightw,struct block* kingw,struct block* queenw) { //it sets the white rook,knight,bishop etc. int i; rookw->curx=rookw->cury=7; rookw->clr='w'; rookw->blkcolor='m'; rookw++; rookw->curx=7;rookw->cury=7; rookw->clr='w'; rookw->blkcolor='g'; bishopw->curx=2; bishopw->cury=7; bishopw->clr='w'; bishopw->blkcolor='m'; bishopw++; bishopw->curx=5; bishopw->cury=7; bishopw->clr='w'; bishopw->blkcolor='g'; knightw->curx=1; knightw->cury=7; knightw->clr='w'; knightw->blkcolor='g'; knightw++; knightw->curx=6; knightw->cury=7; knightw->clr='w'; knightw->blkcolor='m'; kingw->curx=3;kingw->cury=7; kingw->clr='w';kingw->blkcolor='m'; queenw->curx=4;queenw->cury=7; queenw->clr='w';queenw->blkcolor='g'; return; } setposrb(struct block* rookb,struct block* bishopb,struct block* knightb,struct block* kingb,struct block* queenb) { //it sets the current coords of black rook,bishop,knight etc. int i; rookb->curx=0;rookb->cury=0; rookb->clr='b'; rookb->blkcolor='g'; rookb++; rookb->curx=7;rookb->cury=0; rookb->clr='b'; rookb->blkcolor='m'; bishopb->curx=2; bishopb->cury=0; bishopb->clr='b'; bishopb->blkcolor='g'; bishopb++; bishopb->curx=5; bishopb->cury=0; bishopb->clr='b'; bishopb->blkcolor='m'; knightb->curx=1; knightb->cury=0; knightb->clr='b'; knightb->blkcolor='m'; knightb++; knightb->curx=6; knightb->cury=0; knightb->clr='b'; knightb->blkcolor='g'; kingb->curx=3;kingb->cury=0; kingb->clr='b';kingb->blkcolor='m'; queenb->curx=4;queenb->cury=0; queenb->clr='b';queenb->blkcolor='g'; return; } draw(int x3,int y3,struct block* selected,char nwblkclr,char id1) { int nx3,ny3,ncx,ncy; nx3=x3*50; ny3=y3*50; ncx=(selected->curx)*50; ncy=(selected->cury)*50; if(nwblkclr=='g') //CLEAR NEW POSITION setfillpattern(pattern,GREEN); else if(nwblkclr=='m') setfillpattern(pattern,MAGENTA); hidemouseptr(); //necessary to avoid the effect of mouse pointer. bar(nx3,ny3,nx3+50,ny3+50); setcolor(WHITE); rectangle(nx3,ny3,nx3+50,ny3+50); if(selected->blkcolor=='g') //CLEAR PREVIOUS POSITION setfillpattern(pattern,GREEN); else if(selected->blkcolor=='m') setfillpattern(pattern,MAGENTA); //clear the previous pos. bar(ncx,ncy,ncx+50,ncy+50); setcolor(WHITE); rectangle(ncx,ncy,ncx+50,ncy+50); if(id1=='p') //if pawn was selected then draw the pawn at new position. { if(selected->clr=='w') pawndraw(nx3,ny3,0); // 0 for white. else if(selected->clr=='b') pawndraw(nx3,ny3,1); } else if(id1=='r') //if rook was selected { if(selected->clr=='w') rookdraw(nx3,ny3,0); // 0 for white. else if(selected->clr=='b') rookdraw(nx3,ny3,1); } else if(id1=='k') //if knight was selected { if(selected->clr=='w') drawknite(nx3,ny3,0); // 0 for white. else if(selected->clr=='b') drawknite(nx3,ny3,1); } else if(id1=='b') //if bishop was selected { if(selected->clr=='w') drawbishop(nx3,ny3,0); // 0 for white. else if(selected->clr=='b') drawbishop(nx3,ny3,1); } else if(id1=='g') { if(selected->clr=='w') drawking(nx3,ny3,0); // 0 for white. else if(selected->clr=='b') drawking(nx3,ny3,1); } else if(id1=='q') { if(selected->clr=='w') drawqueen(nx3,ny3,0); // 0 for white. else if(selected->clr=='b') drawqueen(nx3,ny3,1); } showmouseptr(); pos[selected->curx][selected->cury]='n'; color[selected->curx][selected->cury]='n'; //welcome back mr. pointer. selected->curx=x3; selected->cury=y3; selected->blkcolor=nwblkclr; pos[x3][y3]=id1; color[x3][y3]=selected->clr; return; } char chkrookmov(struct block* selected,int x3,int y3) { //checks rook move for black and white as both have same moves. int i; char id,c,mov='v'; if( (x3==selected->curx) || (y3==selected->cury) ) { if(x3>selected->curx && y3==selected->cury) { for(i=selected->curx+1;i<x3;i++) { id=pos[i][y3]; // c=color[i][y3]; if(id!='n') //if black or white present move is invalid { mov='i'; } } } else if(x3<selected->curx && y3==selected->cury) { for(i=selected->curx-1;i>x3;i--) { id=pos[i][y3]; // c=color[i][y3]; if(id!='n') //if black or white { mov='i'; } } } else if(x3==selected->curx && y3>selected->cury) { for(i=selected->cury+1;i<y3;i++) { id=pos[x3][i]; // c=color[x3][i]; if(id!='n') //if black or white { mov='i'; } } } else if(x3==selected->curx && y3<selected->cury) { for(i=selected->cury-1;i>y3;i--) { id=pos[x3][i]; // c=color[x3][i]; if(id!='n') //if black or white { mov='i'; } } } if(mov=='v') { id=pos[x3][y3]; c=color[x3][y3]; if(id!='n' && c=='b' && selected->clr=='w') //means black at x3,y3 { mov='v'; send(id,c); } else if(id!='n' && c=='w' && selected->clr=='b') //means white there { mov='v'; send(id,c); } else if(id=='n')//none of the white or black even at x3 & y3? mov='v'; else mov='i'; } } else mov='i'; return(mov); } char chkknightmov(struct block* selected,int x3,int y3) { //knight's moves are not affected if some entity lies in the way. //it just jumps over them.Atmost only eight moves are possible. int i,posk[8][2]; char id,c,mov='i'; posk[0][0]=selected->curx+1; posk[0][1]=selected->cury-2; posk[1][0]=selected->curx-1; posk[1][1]=selected->cury-2; posk[2][0]=selected->curx+1; posk[2][1]=selected->cury+2; posk[3][0]=selected->curx-1; posk[3][1]=selected->cury+2; posk[4][0]=selected->curx+2; posk[4][1]=selected->cury-1; posk[5][0]=selected->curx+2; posk[5][1]=selected->cury+1; posk[6][0]=selected->curx-2; posk[6][1]=selected->cury+1; posk[7][0]=selected->curx-2; posk[7][1]=selected->cury-1; for(i=0;i<=7;i++) { if(x3==posk[i][0] && y3==posk[i][1]) { id=pos[x3][y3]; c=color[x3][y3]; if(id!='n'&& c=='b' && selected->clr=='w') { mov='v'; //means black is there. send(id,c); } else if(id!='n'&&c=='w' && selected->clr=='b') { mov='v'; //means white is there. send(id,c); } else if(id=='n') mov='v'; //means it is blank. } } return(mov); } char chkbishopmov(struct block* selected,int x3,int y3) { int m,n,m1,n1,i,j; char mov,id,c; m=x3-selected->curx; n=y3-selected->cury; if(abs(m)==abs(n)) { if(m>0 && n<0)//move 1 { for(i=selected->curx+1,j=selected->cury-1;(i<x3 && j>y3);i=i++,j--) { id=pos[i][j]; // c=color[i][j]; if(id!='n') mov='i'; } } if(m>0 && n>0)//move 2 { for(i=selected->curx+1,j=selected->cury+1;(i<x3 && j<y3);i++,j++) { id=pos[i][j]; // c=color[i][j]; if(id!='n') mov='i'; } } if(m<0 && n<0)//move 3 { for(i=selected->curx-1,j=selected->cury-1;(i!=x3 && j!=y3);i--,j--) { id=pos[i][j]; // c=color[i][j]; if(id!='n') mov='i'; } } if(m<0 && n>0)//move 4 { for(i=selected->curx-1,j=selected->cury+1;(i>x3 && j<y3);i--,j++) { id=pos[i][j]; // c=color[i][j]; if(id!='n') mov='i'; } } if(mov!='i') //..that no body is in the way,now at x3 y3? { id=pos[x3][y3]; c=color[x3][y3]; if(id!='n'&& c=='b') //means black at x3,y3 { if(selected->clr=='w') { mov='v'; send(id,c); } else mov='i'; } else if(id!='n'&& c=='w') //means white there { if(selected->clr=='b') { mov='v'; send(id,c); } else { mov='i';} } else if(id=='n')//none of the white or black even at x3 & y3? mov='v'; } } //means not at the x cross. else { mov='i'; } return(mov); } char chkqueenmov(struct block* selected,int x3,int y3) { char mov1,mov2,mov3='i',id,c; mov1=chkrookmov(selected,x3,y3); mov2=chkbishopmov(selected,x3,y3); if(mov1=='v' || mov2=='v') //move is valid and color is checked already. { mov3='v'; } return(mov3); } char chkkingmov(struct block* selected,int x3,int y3) { char id,c,mov='i'; id=pos[x3][y3]; c=pos[x3][y3]; if(x3==selected->curx+1 && y3==selected->cury-1) //move 1 { if(id=='n') mov='v'; else if(selected->clr=='w' && id!='n' && c=='b')//means black there. { mov='v'; send(id,c); } else if(selected->clr=='b' && id!='n' && c=='w')//means white there. { mov='v'; send(id,c); } } else if(x3==selected->curx-1 && y3==selected->cury-1) //move 2 { if(id=='n') mov='v'; else if(selected->clr=='w' && id!='n' && c=='b')//means black there. { mov='v'; send(id,c); } else if(selected->clr=='b' && id!='n' && c=='w')//means white there. { mov='v'; send(id,c); } } else if(x3==selected->curx-1 && y3==selected->cury+1) //move 3 { if(id=='n') mov='v'; else if(selected->clr=='w' && id!='n' && c=='b')//means black there. { mov='v'; send(id,c); } else if(selected->clr=='b' && id!='n' && c=='w') //means white there. { mov='v'; send(id,c); } } else if(x3==selected->curx+1 && y3==selected->cury+1) //move 4 { if(id=='n' ) mov='v'; else if(selected->clr=='w' && id!='n' && c=='b')//means black there. { mov='v'; send(id,c); } else if(selected->clr=='b' && id!='n' && c=='w')//means white there. { mov='v'; send(id,c); } } else if(x3==selected->curx+1 && y3==selected->cury) //move 5 { if(id=='n') mov='v'; else if(selected->clr=='w' && id!='n' && c=='b')//means black there. { mov='v'; send(id,c); } else if(selected->clr=='b' && id!='n' && c=='w') //means white there. { mov='v'; send(id,c); } } else if(x3==selected->curx && y3==selected->cury-1) //move 6 { if(id=='n') mov='v'; else if(selected->clr=='w' && id!='n' && c=='b')//means black there. { mov='v'; send(id,c); } else if(selected->clr=='b' && id!='n' && c=='w')//means white there. { mov='v'; send(id,c); } } else if(x3==selected->curx-1 && y3==selected->cury) //move 7 { if(id=='n') mov='v'; else if(selected->clr=='w' && id!='n' && c=='b')//means black there. { mov='v'; send(id,c); } else if(selected->clr=='b' && id!='n' && c=='w')//means white there. { mov='v'; send(id,c); } } else if(x3==selected->curx && y3==selected->cury+1) //move 8 { if(id=='n') mov='v'; else if(selected->clr=='w' && id!='n' && c=='b')//means black there. { mov='v'; send(id,c); } else if(selected->clr=='b' && id!='n' && c=='w')//means white there. { mov='v'; send(id,c); } } else //means move is not valid { mov='i';} return(mov); } void assign(char* post,char* col) { int i; char val1[64]={"rpnnnnprkpnnnnpkbpnnnnpbgpnnnnpqqpnnnnpgbpnnnnpbkpnnnnpkrpnnnnpr"}; char val2[64]={"wwnnnnbbwwnnnnbbwwnnnnbbwwnnnnbbwwnnnnbbwwnnnnbbwwnnnnbbwwnnnnbb"}; for(i=0;i<=63;i++,post++,col++) { *post=val1[i]; *col=val2[i]; } } void checkpwn(int x3,int y3) { char a; a=color[x3][y3];//whether pawn is white or black? bottom(); setcolor(WHITE); if(a=='w' && (x3>=0 && x3<=7) && y3==7) { outtextxy(100,430,"well done white..press w"); getch(); bottom(); } else if(a=='b' && (x3>=0 && x3<=7) && y3==0) { outtextxy(100,430,"well done black..press b"); getch(); bottom(); } return; } //END // I m still working on it and mail me for the updated version or for the rules of Chess .BYE!

Related Source Codes

Script Name Author
The Game Opposite as seen on Nokia 2300 Mobile Manikanta
RECURSIVE BALANCED QUICK SORT ashish
Radix Sort ashish
Change your mouse pointer Ashim
The blinking star Shashank
Data Validation Crylittlebaby
To search a file by giving file type like mp3 or mpeg or doc Prashanth SR
Menus Demonstration B.Chidhambaram
Employee Database Project Using C. Reenku Raman Nayak
Creating a Lexical Analyzer in c fahad bader al-buhairi ¦Õ¤ ?¤Ð Ãß??ÝÐÝ
Calendar Program Omkar & Devendra
Stop double Process for start in C Cedrik Jurak
Stop double Process for start in C Cedrik Jurak
Time Scheduler Atiq Anwar
A timepass game between atmost two players Rahul Roy

A D V E R T I S E M E N T




Google Groups Subscribe to SourceCodesWorld - Techies Talk
Email:

Free eBook - Interview Questions: Get over 1,000 Interview Questions in an eBook for free when you join JobsAssist. Just click on the button below to join JobsAssist and you will immediately receive the Free eBook with thousands of Interview Questions in an ebook when you join.

New! Click here to Add your Code!


ASP Home | C Home | C++ Home | COBOL Home | Java Home | Pascal Home
Source Codes Home Page

 Advertisements  

Google Search

Google

Source Codes World.com is a part of Vyom Network.

Vyom Network : Web Hosting | Dedicated Server | Free SMS, GRE, GMAT, MBA | Online Exams | Freshers Jobs | Software Downloads | Interview Questions | Jobs, Discussions | Placement Papers | Free eBooks | Free eBooks | Free Business Info | Interview Questions | Free Tutorials | Arabic, French, German | IAS Preparation | Jokes, Songs, Fun | Free Classifieds | Free Recipes | Free Downloads | Bangalore Info | Tech Solutions | Project Outsourcing, Web Hosting | GATE Preparation | MBA Preparation | SAP Info | Software Testing | Google Logo Maker | Freshers Jobs

Sitemap | Privacy Policy | Terms and Conditions | Important Websites
Copyright ©2003-2024 SourceCodesWorld.com, All Rights Reserved.
Page URL: http://www.sourcecodesworld.com/source/show.asp?ScriptID=681


Download Yahoo Messenger | Placement Papers | Free SMS | C Interview Questions | C++ Interview Questions | Quick2Host Review