123 Eng

### Engineering the engineers™

Home
Source Codes
Engineering Colleges

Training  Reports
Seminar Reports
Placement Papers

Forums

Computer Science / IT
Electronics
Electrical
Mechanical
Chemical
Civil

CAT / MBA

GMAT / Foreign MBA
Latest Jobs

Displaying  Source Code(s)

 Tic Tac Toe Game in C. -------------------------------------------------------------------------------- // main.c #include #include #include #include #include"mouse.h" int ch=0; int key; int client=0; int movec,moveu,u; int x[9]={130,190,250,130,190,250,130,190,250}; int y[9]={230,230,230,290,290,290,350,350,350}; char p[2],r[2]; int x2[9]={100,160,220,100,160,220,100,160,220}; int y2[9]={200,200,200,260,260,260,320,320,320}; int c[9]={0,0,0,0,0,0,0,0,0}; int d[9]={20273,20530,20787,19252,19509,19766,18231,18488,18745}; int x1[9]={160,220,280,160,220,280,160,220,280}; int y1[9]={260,260,260,320,320,320,380,380,380}; int b,xx,yy; char msg[31][50]={{"How to play:"},{"You can place only one"},{"symbol at a time followed"},{"by computer's turn,thinking"},{"wisely and go ahead to"},{"place your symbol or color"},{"in any stright line or"},{"stright line along the"},{"diagonal.if u succed you"},{"win,if computer succed in"},{"placing its symbol along"},{"in any stright line or"},{"diagonal then you lose."},{"If both doesn't win then"},{"it's the match"},{"-> TRY AGAIN you may win!."},{"How to play:"},{"The topleft corner of "},{"grid is 1 and bottom"},{"right ia 9.Press any"},{"number (FROM NUMPAD)"},{"suitably to place your"},{"symbol in appropriate"},{"place you like"} ,{"copyright:"},{"----------"},{"M.K.jayendranath"},{"J.izzathulla"},{"Sen d Comments to:"},{"jayendranathcse@Yahoo.com"},{"izzathcse_83@yahoo.com"}}; int f=0; int main(void) { /* request auto detection */ int gdriver = DETECT, gmode, errorcode,i; int j,g,h=0,x11,y11; char msg[35]; /* initialize graphics and local variables */ initgraph(&gdriver, &gmode, "d:\tc"); m();hidemp(); /* read result of initialization */ errorcode = graphresult(); if (errorcode != grOk) /* an error occurred */ { printf("Graphics error: %s
, grapherrormsg(errorcode)); printf("Press any key to halt:"); getch(); exit(1); /* terminate with an error code */ } yy: for(i=0;i<9;i++) c[i]=0; setfillstyle(1,0); bar(0,0,600,480); setcolor(15); rectangle(100,200,280,380); line(160,200,160,380); line(220,200,220,380); line(100,260,280,260); line(100,320,280,320); settextstyle(0,0,1); outtextxy(108,208,"1"); outtextxy(168,208,"2"); outtextxy(228,208,"3"); outtextxy(108,268,"4"); outtextxy(168,268,"5"); outtextxy(228,268,"6"); outtextxy(108,328,"7"); outtextxy(168,328,"8"); outtextxy(228,328,"9"); settextstyle(4,0,0); outtextxy(50,50,"Welcome to the Bonsiv game"); settextstyle(3,0,1); setcolor(RED); outtextxy(50,110,"Enter position :"); settextstyle(1,0,1); setcolor(BLUE); outtextxy(50,90,"Who starts (c ->computer u -> user) :"); outtextxy(50,420,"Help"); setcolor(YELLOW); outtextxy(50,420,"H"); //setcolor(BLUE); //outtextxy(50,440,"Restart"); //setcolor(YELLOW); //outtextxy(50,440,"R"); setcolor(BLUE); outtextxy(50,460,"Exit"); setcolor(YELLOW); outtextxy(50,460,"E"); showmp(); bb: showmp(); while(bioskey(1)==0) { getmstat(&b,&xx,&yy); while(xx>50 && xx<84 && yy>465 && yy<480) { hidemp(); setcolor(YELLOW); outtextxy(50,460,"Exit"); setcolor(BLUE); outtextxy(50,460,"E"); showmp(); getmstat(&b,&xx,&yy); while(xx>50 && xx<84 && yy>465 && yy<480) { getmstat(&b,&xx,&yy); if(b==1) exitit(); } hidemp(); setcolor(BLUE); outtextxy(50,460,"Exit"); setcolor(YELLOW); outtextxy(50,460,"E"); showmp(); } while(xx>50 && xx<84 && yy>425 && yy<440) { hidemp(); setcolor(YELLOW); outtextxy(50,420,"Help"); setcolor(BLUE); outtextxy(50,420,"H"); showmp(); //delay(100); getmstat(&b,&xx,&yy); while(xx>50 && xx<84 && yy>425 && yy<440) { getmstat(&b,&xx,&yy); if(b==1) { help(); } } hidemp(); setcolor(BLUE); outtextxy(50,420,"Help"); setcolor(YELLOW); outtextxy(50,420,"H"); showmp(); } /*while(xx>50 && xx<95 && yy>445 && yy<460) { hidemp(); setcolor(YELLOW); outtextxy(50,440,"Restart"); setcolor(BLUE); outtextxy(50,440,"R"); showmp(); getmstat(&b,&xx,&yy); while(xx>50 && xx<95 && yy>445 && yy<460) { getmstat(&b,&xx,&yy); if(b==1) goto yy; } hidemp(); setcolor(BLUE); outtextxy(50,440,"Restart"); setcolor(YELLOW); outtextxy(50,440,"R"); showmp(); } */ while(xx>165 && xx<300 && yy>95 && yy<110) { hidemp(); setcolor(YELLOW); outtextxy(50,90," (c ->computer "); showmp(); getmstat(&b,&xx,&yy); while(xx>165 && xx<300 && yy>95 && yy<110) { getmstat(&b,&xx,&yy); if(b==1) goto selcomputer; } hidemp(); setcolor(BLUE); outtextxy(50,90," (c ->computer "); showmp(); } while(xx>305 && xx<400 && yy>95 && yy<110) { hidemp(); setcolor(YELLOW); outtextxy(50,90," u -> user) :"); showmp(); getmstat(&b,&xx,&yy); while(xx>305 && xx<400 && yy>95 && yy<110) { getmstat(&b,&xx,&yy); if(b==1) goto seluser; } hidemp(); setcolor(BLUE); outtextxy(50,90," u -> user) :"); showmp(); } } key=bioskey(0); if(key==11875 || key==11843) { selcomputer: setcolor(CYAN); hidemp(); outtextxy(450,90,"Computer"); showmp(); rr: if( draw()==0) goto rr; else goto dd; }else if(key==5749 || key==5717) {setcolor(CYAN); seluser: hidemp(); outtextxy(450,90,"User"); client=1; showmp(); }else if(key==4978) goto yy; else if (key==4709 || key==4677) { exitit();exit(0);} else if(key==9064||key==9032) helpbox: help(); else goto bb; dd: showmp(); setcolor(BLUE); outtextxy(50,440,"Restart"); setcolor(YELLOW); outtextxy(50,440,"R"); while(bioskey(1)==0) { getmstat(&b,&xx,&yy); while(xx>50 && xx<84 && yy>465 && yy<480) { hidemp(); setcolor(YELLOW); outtextxy(50,460,"Exit"); setcolor(BLUE); outtextxy(50,460,"E"); showmp(); getmstat(&b,&xx,&yy); while(xx>50 && xx<84 && yy>465 && yy<480) { getmstat(&b,&xx,&yy); if(b==1) exitit(); } hidemp(); setcolor(BLUE); outtextxy(50,460,"Exit"); setcolor(YELLOW); outtextxy(50,460,"E"); showmp(); } while(xx>50 && xx<84 && yy>425 && yy<440) { hidemp(); setcolor(YELLOW); outtextxy(50,420,"Help"); setcolor(BLUE); outtextxy(50,420,"H"); showmp(); getmstat(&b,&xx,&yy); while(xx>50 && xx<84 && yy>425 && yy<440) { getmstat(&b,&xx,&yy); if(b==1) { help(); goto out; } } hidemp(); setcolor(BLUE); outtextxy(50,420,"Help"); setcolor(YELLOW); outtextxy(50,420,"H"); showmp(); } while(xx>50 && xx<95 && yy>445 && yy<460) { hidemp(); setcolor(YELLOW); outtextxy(50,440,"Restart"); setcolor(BLUE); outtextxy(50,440,"R"); showmp(); getmstat(&b,&xx,&yy); while(xx>50 && xx<95 && yy>445 && yy<460) { getmstat(&b,&xx,&yy); if(b==1) { setfillstyle(1,BLACK); hidemp(); bar(50,440,250,460); goto yy; } } hidemp(); setcolor(BLUE); outtextxy(50,440,"Restart"); setcolor(YELLOW); outtextxy(50,440,"R"); showmp(); } if(xx>100 && xx<160 && yy>200 && yy<260 && b==1) { key=d[0]; goto jj; } if(xx>160 && xx<220 && yy>200 && yy<260 && b==1) { key=d[1]; goto jj; } if(xx>220 && xx<280 && yy>200 && yy<260 && b==1) { key=d[2]; goto jj; } if(xx>100 && xx<160 && yy>260 && yy<320 && b==1) { key=d[3]; goto jj; } if(xx>160 && xx<220 && yy>260 && yy<320 && b==1) { key=d[4]; goto jj; } if(xx>220 && xx<280 && yy>260 && yy<320 && b==1) { key=d[5]; goto jj; } if(xx>100 && xx<160 && yy>320 && yy<380 && b==1) { key=d[6]; goto jj; } if(xx>160 && xx<220 && yy>320 && yy<380 && b==1) { key=d[7]; goto jj; } if(xx>220 && xx<280 && yy>320 && yy<380 && b==1) { key=d[8]; goto jj; } } out: key=bioskey(0); jj: while(ch==1) { getmstat(&b,&xx,&yy); while(xx>50 && xx<84 && yy>465 && yy<480) { hidemp(); setcolor(YELLOW); outtextxy(50,460,"Exit"); setcolor(BLUE); outtextxy(50,460,"E"); showmp(); getmstat(&b,&xx,&yy); while(xx>50 && xx<84 && yy>465 && yy<480) { getmstat(&b,&xx,&yy); if(b==1) exitit(); } hidemp(); setcolor(BLUE); outtextxy(50,460,"Exit"); setcolor(YELLOW); outtextxy(50,460,"E"); showmp(); } while(xx>50 && xx<95 && yy>445 && yy<460) { hidemp(); setcolor(YELLOW); outtextxy(50,440,"Restart"); setcolor(BLUE); outtextxy(50,440,"R"); showmp(); getmstat(&b,&xx,&yy); while(xx>50 && xx<95 && yy>445 && yy<460) { getmstat(&b,&xx,&yy); if(b==1) { ch=0; goto yy; } } hidemp(); setcolor(BLUE); outtextxy(50,440,"Restart"); setcolor(YELLOW); outtextxy(50,440,"R"); showmp(); } if(key==4978) { ch=0; goto yy; } if (key==4709 || key==4677) { ch=0; exitit(); } while(bioskey(1)!=0) { key=bioskey(0); } } if(key==4978) { goto yy; } if(key==7181) { if (cheet()==3) ch=1; } if (key==4709 || key==4677) { exitit(); } if(key==5749 || key==5717) { hidemp(); setfillstyle(1,0); bar(x2[movec]+2,y2[movec]+2,x1[movec]-2,y1[movec]-2); bar(x2[moveu]+2,y2[moveu]+2,x1[moveu]-2,y1[moveu]-2); c[movec]=0; c[moveu]=0; sprintf(p,"%d",movec+1); sprintf(r,"%d",moveu+1); settextstyle(0,0,1); outtextxy(x2[movec]+8,y2[movec]+8,p); outtextxy(x2[moveu]+8,y2[moveu]+8,r); settextstyle(1,0,1); showmp(); goto dd; } if(check(key)==1) {ch=1; goto dd; } if(result1()==1) { ch=1; goto dd; } goto dd; getch(); closegraph(); return 0; } drawbut(int a) { int i; if(c[a]==0) { setfillstyle(1,GREEN); fillellipse(x[a],y[a],20,20); c[a]=2; movec=a; return 1; } else { /* for(i=0;i<9;i++) if(c[i]==0) { drawbut(i); return; }*/ return 0; } } check(int key) { int i,j,g,h=0; for(i=0;i<9;i++) { if(key==d[i] && c[i]!=0) { return 0; } } for(i=0;i<9;i++) { if(key==d[i]) { if(c[i]==0) { setfillstyle(1,RED); hidemp(); fillellipse(x[i],y[i],20,20); showmp(); c[i]=1; moveu=i; } } } if(client==1) { client=0; if(drawbut(4)==1) { c[4]=2; return 0; } } if(result()==1) { return 1; } for(j=0;j<9;j=j+3) { g=0; if(c[j]==2) g++; else h=j; if(c[j+1]==2) g++; else h=j+1; if(c[j+2]==2) g++; else h=j+2; if(g==2 ) { if(drawbut(h)==1) return 0; } } for(j=0;j<3;j++) { g=0; if(c[j]==2) g++; else h=j; if(c[j+3]==2) g++; else h=j+3; if(c[j+6]==2) g++; else h=j+6; if(g==2) { if(drawbut(h)==1) return 0; } } g=0; if(c[0]==2) g++; else h=0; if(c[4]==2) g++; else h=4; if(c[8]==2) g++; else h=8; if(g==2) { if(drawbut(h)==1) return 0; } g=0; if(c[2]==2) g++; else h=2; if(c[4]==2) g++; else h=4; if(c[6]==2) g++; else h=6; if(g==2) { if(drawbut(h)==1) return 0; } for(j=0;j<9;j=j+3) { g=0; if(c[j]==1) g++; else h=j; if(c[j+1]==1) g++; else h=j+1; if(c[j+2]==1) g++; else h=j+2; if(g==2 ) { if(drawbut(h)==1) return 0; } } for(j=0;j<3;j++) { g=0; if(c[j]==1) g++; else h=j; if(c[j+3]==1) g++; else h=j+3; if(c[j+6]==1) g++; else h=j+6; if(g==2) { if(drawbut(h)==1) return 0; } } g=0; if(c[0]==1) g++; else h=0; if(c[4]==1) g++; else h=4; if(c[8]==1) g++; else h=8; if(g==2) { if(drawbut(h)==1) return 0; } g=0; if(c[2]==1) g++; else h=2; if(c[4]==1) g++; else h=4; if(c[6]==1) g++; else h=6; if(g==2) { if(drawbut(h)==1) return 0; } if(c[0]==1) {if(drawbut(8)==1) return 0;} if(c[8]==1) {if(drawbut(0)==1) return 0;} if(c[6]==1) {if(drawbut(2)==1) return 0;} if(c[2]==1) {if(drawbut(6)==1) return 0;} if(drawbut(4)==1) return 0; else for(i=0;i<9;i++) { if(c[i]==0) { if(drawbut(i)==1) return 0; } } } draw() { int y; //y=random(8); //if(c[y]==0) //{ if(drawbut(4)==1) return 1; // } else { return 0; } } int result() { if((c[0]==1 && c[1]==1 && c[2]==1) ||(c[3]==1 && c[4]==1 && c[5]==1) ||(c[6]==1 && c[7]==1 && c[8]==1) ||(c[0]==1 && c[3]==1 && c[6]==1) ||(c[1]==1 && c[4]==1 && c[7]==1) ||(c[2]==1 && c[5]==1 && c[8]==1)||(c[0]==1 && c[4]==1 && c[8]==1) || (c[2]==1 && c[4]==1 && c[6]==1) ) { outtextxy(400,300,"You win!!"); return 1; } } int result1() { if((c[0]==2 && c[1]==2 && c[2]==2) ||(c[3]==2 && c[4]==2 && c[5]==2) ||(c[6]==2 && c[7]==2 && c[8]==2) ||(c[0]==2 && c[3]==2 && c[6]==2) ||(c[1]==2 && c[4]==2 && c[7]==2) ||(c[2]==2 && c[5]==2 && c[8]==2)||(c[0]==2 && c[4]==2 && c[8]==2) || (c[2]==2 && c[4]==2 && c[6]==2) ) { outtextxy(400,300,"Computer win!!"); return 1; } } help() {//setfillstyle(1,BLUE); //bar( 320,190,540,390); int i; f=0; setfillstyle(1,7); bar( 330,120,600,380); setlinestyle(0,0,1); setcolor(15); line(330,120,600,120); line(330,120,330,380); setcolor(0); line(600,120,600,380); line(330,380,600,380); setfillstyle(1,15); bar( 340,150,590,370); setfillstyle(1,8); bar(590,370,575,150); setcolor(15); line(590,370,590,150); line(340,370,589,370); setcolor(0); line(340,150,340,370); line(590,150,340,150); setfillstyle(1,BLUE); bar( 332,122,597,137); setcolor(15); settextstyle(0,0,0); outtextxy(337,126,"Help"); setfillstyle(1,7); bar(595,135,584,124); setcolor(15); line(584,124,595,124); line(584,124,584,135); setcolor(0); line(595,124,595,135); line(595,135,584,135); settextstyle(0,0,0); outtextxy(586,127,"X"); scroll(); setlinestyle(0,0,2); setcolor(8); line(594,379,599,374); line(587,379,599,367); setcolor(15); line(592,379,599,372); line(585,379,599,365); //setlinestyle(0,0,0); setcolor(0); settextstyle(0,0,0); for(i=0;i<26;i=i+2) outtextxy(345,155+(i*8),msg[(i/2)]); rop: while(bioskey(1)!=0){ key=bioskey(0);} getmstat(&b,&xx,&yy); if(xx>576 && xx<589 && yy>151+(f*5.5) && yy<173+(f*5.5) && b==1) { getmstat(&b,&xx,&yy); u=yy; while(xx>576 && xx<589 && yy>151+(f*5.5) && yy<173+(f*5.5) && b==1) { getmstat(&b,&xx,&yy); if(f<36) {hidemp(); f=f+((((yy+11)-(151+(f*5.5)))/11)*2); refresh(); showmp(); } } } if(xx>584 && xx<595 && yy>124 && yy<135 && b==1) { redrawbut(); while(xx>584 && xx<595 && yy>124 && yy<135 ) { getmstat(&b,&xx,&yy); if(b==0) {hidemp(); setfillstyle(1,0); bar( 320,120,610,390); showmp(); return; } } hidemp(); setfillstyle(1,7); bar(595,135,584,124); setcolor(15); line(584,124,595,124); line(584,124,584,135); setcolor(0); line(595,124,595,135); line(595,135,584,135); settextstyle(0,0,0); outtextxy(586,127,"X"); settextstyle(1,0,1); showmp(); } if(key==0x11b) { setfillstyle(1,0); bar( 320,120,610,390); return; } if(key==0x4800) {if(f>0) { f=f-2; refresh(); redo(); } key=0; } if(key==0x5000) { if(f<36) { f=f+2; refresh(); } key=0; } goto rop; } refresh() {int i,j; settextstyle(0,0,0); setfillstyle(1,15); bar( 341,151,574,369); for(j=0,i=f;i<26+f;i=i+2,j=j+2) { if(i>=48 && i<57) setcolor(BLUE); else if(i>=58) setcolor(RED); else setcolor(0); if(i==50) outtextxy(345,155+((j-1)*8),msg[(i/2)]); else outtextxy(345,155+(j*8),msg[(i/2)]); } scroll(); } scroll() { int g=0; if(f==36) g=2; if(f==0) { setfillstyle(1,7); bar(589,173,576,151); setcolor(WHITE); line(576,151,576,173); line(576,151,589,151); setcolor(0); line(589,151,589,173); line(589,173,576,173); } else { setfillstyle(1,8); bar(589,173+((f-1)* 5.5),576,151); setfillstyle(1,7); bar(589,173-g+(f*5.5),576,151+(f*5.5)); setcolor(WHITE); line(576,151+(f*5.5),576,173-g+(f*5.5)); line(576,151+(f*5.5),589,151+(f*5.5)); setcolor(0); line(589,151+(f*5.5),589,173-g+(f*5.5)); line(589,173-g+(f*5.5),576,173-g+(f*5.5)); } } redo() {setfillstyle(1,8); bar(576,369-((36-f)*5.5),589,369); } redrawbut() { hidemp(); setfillstyle(1,7); bar(595,135,584,124); setcolor(0); line(584,124,595,124); line(584,124,584,135); setcolor(15); line(595,125,595,135); line(595,135,585,135); settextstyle(0,0,0); setcolor(0); outtextxy(587,128,"X"); settextstyle(1,0,1); showmp(); } int exitit() { unsigned imgsize; void far *img; hidemp(); imgsize=imagesize(190,190,460,310); if((img=malloc(imgsize))==NULL) { printf("Error"); exit(0); } getimage(190,190,460,310,img); setfillstyle(1,7); bar(200,200,450,300); setlinestyle(0,0,1); setcolor(15); line(200,200,200,300); line(200,200,450,200); setcolor(0); line(450,300,200,300); line(450,300,450,200); setcolor(8); line(199,199,199,301); line(199,199,451,199); line(451,301,199,301); line(451,301,451,199); setfillstyle(1,BLUE); bar(202,202,448,214); setcolor(15); settextstyle(0,0,0); outtextxy(204,206,"Exit"); setcolor(0); settextstyle(2,0,0); outtextxy(240,230,"Are you sure want to quit ?"); but(240,260,300,280,"Yes"); sel(240,260,300,280); but(340,260,400,280,"No"); checkmp(img); showmp(); return 0; } but(int x1,int y1,int x2,int y2,char ap[]) { hidemp(); setfillstyle(1,7); bar(x1,y1,x2,y2); setlinestyle(0,0,0); setcolor(0); line(x2,y2,x2,y1); line(x2,y2,x1,y2); setcolor(15); line(x1,y1,x2,y1); line(x1,y1,x1,y2); setcolor(0); settextstyle(2,0,0); if(strcmp(ap,"Yes")==0) outtextxy(x1+22,y1+4,ap); if(strcmp(ap,"No")==0) outtextxy(x1+26,y1+4,ap); showmp(); return 0; } checkmp(void far *img) { int b,xx,yy;int mo=0;int no=0,yes=1,nosel=0,ysel=0; int key; ddd: while(bioskey(1)!=0) { key=bioskey(0); } if(key==3849) { if(no==0) { no=1; hidemp(); sel(340,260,400,280); but(240,260,300,280,"Yes"); showmp(); yes=0; key=0; goto jjj; } if(yes==0) { no=0; hidemp(); sel(240,260,300,280); but(340,260,400,280,"No"); showmp(); yes=1; key=0; goto jjj; } } jjj: if(key==7181) { while(key==7181) { if(yes==1) { press(240,260,300,280,"Yes"); exit(0); } if(no==1 && nosel==0) { nosel=1; press(340,260,400,280,"No"); hidemp(); putimage(190,190,img,COPY_PUT); free(img); showmp(); settextstyle(1,0,1); return; } while(bioskey(1)!=0) key=bioskey(0); } if(nosel==1) { but(340,260,400,280,"No"); } } showmp(); getmstat(&b,&xx,&yy); if(xx>240 && yy>260 && xx< 300 && yy<280) { sel(240,260,300,280); while(xx>240 && yy>260 && xx< 300 && yy<280) { if(b==1 && mo==0) { mo=1; press(240,260,300,280,"Yes"); } if(b==0 && mo==1) { mo=0;exit(0); } getmstat(&b,&xx,&yy); } mo=0; but(240,260,300,280,"Yes"); } if(xx>340 && yy>260 && xx< 400 && yy<280) { sel(340,260,400,280); while(xx>340 && yy>260 && xx< 400 && yy<280) { if(b==1 && mo==0) { mo=1; press(340,260,400,280,"No"); } if(b==0 && mo==1) { mo=0; hidemp(); putimage(190,190,img,COPY_PUT); free(img); showmp(); settextstyle(1,0,1); return; } getmstat(&b,&xx,&yy); } mo=0; but(340,260,400,280,"No"); } goto ddd; //but(340,260,400,280,"No"); return 0; } press(int x1,int y1,int x2,int y2,char msg[]) { hidemp(); setfillstyle(1,7); bar(x1,y1,x2,y2); setlinestyle(0,0,0); setcolor(15); line(x2,y2,x2,y1); line(x2,y2,x1,y2); setcolor(0); line(x1,y1,x2,y1); line(x1,y1,x1,y2); setcolor(0); settextstyle(2,0,0); if(strcmp(msg,"Yes")==0) outtextxy(x1+22,y1+5,msg); if(strcmp(msg,"No")==0) outtextxy(x1+26,y1+5,msg); showmp(); return 0; } sel(int x1,int y1,int x2,int y2 ) { hidemp(); setcolor(0); setlinestyle(1,1,0); line(x1+5,y1+3,x2-5,y1+3); line(x1+5,y1+3,x1+5,y2-3); line(x1+5,y2-3,x2-5,y2-3); line(x2-5,y1+3,x2-5,y2-3); showmp(); return 0; } int cheet() { char *a; scanf("%s",a); if(strcmp(a,"win")==0) { hidemp(); outtextxy(400,300,"You Win!"); showmp(); return 3; } return 0; } //mouse.h #ifndef __mouse_h__ #define __mouse_h__ #include #include int ox,oy; m() { union REGS i,o; i.x.ax=0; int86(51,&i,&o); return(o.h.al); } showmp() { union REGS i,o; i.x.ax=1; int86(51,&i,&o); return 0; } hidemp() { union REGS i,o; i.x.ax=2; int86(51,&i,&o); return 0; } restrictm(int x1,int y1,int x2,int y2) { union REGS i,o; i.x.ax=7; i.x.cx=x1; i.x.dx=x2; int86(51,&i,&o); i.x.ax=8; i.x.cx=y1; i.x.dx=y2; int86(51,&i,&o); return 0; } getmstat(int *b,int *xx,int *yy) { union REGS i,o; char msg[10]; i.x.ax=3; int86(51,&i,&o); *b=o.x.bx; *xx=o.x.cx; *yy=o.x.dx; if(*xx!=ox || *yy!=oy) { setfillstyle(0,0); bar(540,440,630,460); setcolor(WHITE); ox=*xx; oy=*yy; settextstyle(0,0,1); sprintf(msg,"(%3d,%3d)",*xx,*yy); outtextxy(550,450,msg); settextstyle(1,0,1); } return 0; } int rclick(void) { int b,xx,yy; getmstat(&b,&xx,&yy); if(b==2) return 0; else return 1; } int lclick(void) { int b,xx,yy; getmstat(&b,&xx,&yy); if(b==1) return 0; else return 1; } int mclick(void) { int b,xx,yy; getmstat(&b,&xx,&yy); if(b==3) return 0; else return 1; } void setmpt(int x,int y) { union REGS i,o; i.x.ax=4; i.x.cx=x; i.x.dx=y; int86(51,&i,&o); return; } #endif

Contribute content or training reports / feedback / Comments
job placement papers