SlideShare a Scribd company logo
#include<iostream.h>
#include<conio.h>
#include<string.h>
#include<graphics.h>
#include<process.h>
#include<dos.h>
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
//structure declaration
struct scorechart
{
char player[45];
int scor;
};
struct scorechart s1[5];
//global variables
union REGS i,o;
char buff[80];
int hit=0,life=1;
int m1=1,m2=1,m3=1,m4=1,m5=1,gover=0;
int level1=1,check=0,score=0,mid,flag=0;
char buffer1[80],buffer[80];
int count=0,ascii,z1=625,scan,m=60,n=70,p=80,q=50,r;
int left=10,top=285,right=63,bottom=285;
unsigned int size,size1,size2,size3,size4,globalsize,handsize,eyesize;
void *pball,*pball1,*pball2,*pball3,*pball4,*handimage,*peye;
void *iball,*iball1,*iball2,*iball3;
//function declaration
void image1();
void image();
void hand();
void arrow(int);
int shoot(int);
void game();
void ball();
void eyelevel();
void balllevel2();
void gethighscores();
void displaytopscore();
void updatehighscore();
void writehighscorestodisk();
//function defintion
void hand()
{
setcolor(8);
setlinestyle(0,1,3);
setfillstyle(1,8);
bar(14,197,19,215);
line(19,198,23,198);
line(22,200,29,192);
line(29,192,38,192);
line(37,192,37,197);
line(32,197,54,197);
line(54,197,54,202);
line(32,202,54,202);
line(32,207,42,207);
line(32,212,42,212);
line(42,212,42,202);
line(38,212,38,217);
line(38,217,14,217);
handsize= imagesize(14,190,56,220);
/* allocate memory to hold the image */
handimage= malloc(handsize);
/* grab the image */
getimage(14,190, 56,220, handimage);
cleardevice();
}
void image1()
{
unsigned int s,s1,s2,s3;
setlinestyle(0,1,3);
setcolor(RED);
circle(500,60,20);
setfillstyle(1,12);
floodfill(500,60,RED);
circle(430,70,20);
setfillstyle(1,YELLOW);
floodfill(430,70,RED);
circle(360,80,20);
setfillstyle(1,9);
floodfill(360,80,RED);
setcolor(RED);
circle(290,50,20);
setfillstyle(1,6);
floodfill(290,50,RED);
s = imagesize(470,35,530,85); //k
s1= imagesize(400,45,460,95); //l
s3= imagesize(330,55,390,105);//e
s2= imagesize(260,25,320,75); //f
/* allocate memory to hold the image */
iball= malloc(s);
iball1=malloc(s1);
iball2=malloc(s2);
iball3=malloc(s3);
/* grab the image */
getimage(470,35, 530, 85, iball);
getimage(400,45,460,95,iball1);
getimage(330,55,390,105,iball2);
getimage(260,25,320,75,iball3);
putimage(470,35,iball,XOR_PUT);
putimage(400,45,iball1,XOR_PUT);
putimage(330,55,iball2,XOR_PUT);
putimage(260,25,iball3,XOR_PUT);
}
void conveximage()
{
setlinestyle(0,1,3);
setcolor(4);
ellipse(500, 55, 0,360,13,35);
setfillstyle(1,9);
fillellipse(500,55,13,35);
setcolor(0);
putpixel(500,55,4);
setlinestyle(0,1,1);
ellipse(500, 55, 0,360,10.5,4.5);
circle(500,55,4);
eyesize=imagesize(480,15,520,95);
peye=malloc(size);
getimage(480,15,520,95,peye);
putimage(480,15,peye,XOR_PUT);
}
void image()
{
setlinestyle(0,1,3);
setcolor(RED);
circle(460,420,25);
setfillstyle(1,YELLOW);
floodfill(460,420,4);
circle(470,330,25);
setfillstyle(1,11);
floodfill(470,330,RED);
circle(480,240,25);
setfillstyle(1,9);
floodfill(480,240,RED);
circle(490,150,25);
setfillstyle(1,3);
floodfill(490,150,RED);
circle(500,60,25);
setfillstyle(1,10);
floodfill(500,60,RED);
settextstyle(0,0,5);
sprintf(buffer,"%c",1);
outtextxy(440,400,buffer);
outtextxy(450,310,buffer);
outtextxy(460,220,buffer);
outtextxy(470,130,buffer);
outtextxy(480,40,buffer);
size = imagesize(470,30,530,90); //k
size1= imagesize(460,120,520,180); //l
size2= imagesize(450,210,510,270); //e
size3= imagesize(440,300,500,360);//f
size4= imagesize(430,390,490,450);
/* allocate memory to hold the image */
pball= malloc(size);
pball1=malloc(size1);
pball2=malloc(size2);
pball3=malloc(size3);
pball4=malloc(size4);
/* grab the image */
getimage(470,30, 530, 90, pball);
getimage(460,120,520,180,pball1);
getimage(450,210,510,270,pball2);
getimage(440,300,500,360,pball3);
getimage(430,390,490,450,pball4);
putimage(470,30,pball,XOR_PUT);
putimage(460,120,pball1,XOR_PUT);
putimage(450,210,pball2,XOR_PUT);
putimage(440,300,pball3,XOR_PUT);
putimage(430,390,pball4,XOR_PUT);
}
void getkey()
{
i.h.ah=0x00;
int86(0x16,&i,&o);
ascii=o.h.al;
scan=o.h.ah;
}
void rules()
{
char buffer[80];
cleardevice();
setbkcolor(0);
setcolor(4);
setlinestyle(0,1,3);
rectangle(0,0,640,480);
setfillstyle(1,11);
bar(3,3,637,477);
setcolor(1);
settextstyle(10,0,3);
outtextxy(245,0,"ARCHERY");
setcolor(8);
settextstyle(4,0,3);
outtextxy(15,60,"Rules To Be Followed : ");
settextstyle(0,0,0);
outtextxy(15,85,"_______________________________");
outtextxy(60,120, " Rule # 1 ð> Only One Player Can Play The Game At A Time.");
outtextxy(60,150," Rule # 2 ð> There Are Three Levels Of The game.");
outtextxy(60,180," Rule # 3 ð> Arrow Shooter Is Positioned By The ");
sprintf(buffer," UP(%c) AND DOWN(%c) KEY.",24,25);
outtextxy(444,180,buffer);
outtextxy(60,210," Rule # 4 ð> Only One Arrow Can Be Shooted At A Time.");
outtextxy(60,240," Rule # 5 ð> SpaceBar Is Used To Shoot The Arrow.");
outtextxy(60,270," Rule # 6 ð> Enter Key Is Used To Select any Option.");
outtextxy(60,300," Rule # 7 ð> Five(5) Points Is Rewarded To Each Hit One
Makes.");
outtextxy(60,330," Rule # 8 ð> One Can Go To Another Level ,Crossing The
Previous Level.");
outtextxy(60,360," Rule # 9 ð> Esc Key From The Main Will Terminate The Game.");
outtextxy(60,390," Rule # 10 ð> Exit Option Will Terminate The Game.");
outtextxy(340,465,"Press Any Key To Resume The game....");
getch();
cleardevice();
}
void level()
{
char buffer[80];
cleardevice();
setbkcolor(0);
setcolor(4);
setlinestyle(0,1,3);
rectangle(0,0,640,480);
setfillstyle(1,14);
bar(3,3,637,477);
setcolor(4);
settextstyle(10,0,3);
outtextxy(245,0,"ARCHERY");
setcolor(8);
settextstyle(4,0,3);
outtextxy(15,45,"Different Levels Of The Game : ");
settextstyle(0,0,1);
outtextxy(15,70,"_________________________________________");
outtextxy(50,100,"LEVEL # 1 ð> Four balloons will be moving vertically and the
player has");
outtextxy(55,118," to shoot the balloon. Each hit is rewarded by 5
points.Once");
outtextxy(55,136," the score becomes 100,The player moves to another
Level.The");
outtextxy(55,154," player cannot skip or jump any level.");
outtextxy(50,184,"LEVEL # 2 ð> Five monsters will be moving horizontally,the
player has");
outtextxy(55,202," to shoot the ball. Each hit is rewarded by 10 points. Once");
outtextxy(55,220," the score becomes 200 , The player moves to another level.");
outtextxy(55,238," If The Ball Touches The Shooter,particular game ends then");
outtextxy(55,256," and there.");
outtextxy(50,286,"LEVEL # 3 ð> One Eye will be Enclosed in convex object moving
vertically");
outtextxy(55,302," the player has to target and shoot the eye. The hit which is
");
outtextxy(55,320," closest to the eye will be rewarded accordingly. Once the ");
outtextxy(55,338," player hits the eye exactly, the player is awarded with 500
");
outtextxy(55,356," points. Only ten arrows are provided for this level. If the
");
outtextxy(55,374," player succeeds ,the game comes to an end, else the player's
");
outtextxy(55,392," game comes to an end.");
outtextxy(340,431,"Press any key to resume the game.......");
getch();
cleardevice();
}
void updatehighscore()
{
FILE *p;
int i=0,t;
struct scorechart s;
clearviewport();
setcolor(2);
setcolor(2);
setlinestyle(0,1,3);
rectangle(0,0,550,478);
setlinestyle(0,1,3);
ellipse(280,80,0,320,133,50);
setcolor(9);
setfillstyle(1,9);
fillellipse(280,80,133,50);
setcolor(14);
settextstyle(1,0,6);
outtextxy(160,40,"ARCHERY");
settextstyle(1,0,1);
outtextxy(230,170,"SCORE CARD");
setcolor(14);
settextstyle(1,0,1);
outtextxy(120,235,"Enter Your Name : ");
for(i=0;i<=13;i++)
{
setcolor(i);
settextstyle(1,0,1);
outtextxy(250,440,"CONGRATULATIONS!!!!!!!");
delay(100);
if(i>=13)i=0;
if(kbhit())break;
}
gotoxy(42,16);
scanf("%s",s.player);
s.scor=score;
for(i=0;i<5;i++)
{
if(s.scor>s1[i].scor){t=i;break;}
}
for(i=4;i>t;i--)
{
strcpy(s1[i].player,s1[i-1].player);
s1[i].scor=s1[i-1].scor;
}
strcpy(s1[t].player,s.player);
s1[t].scor=s.scor;
setcolor(14);
outtextxy(250,320,"Press Any Key");
getch();
}
void writehighscorestodisk()
{
int i;
FILE *p;
p=fopen("ARCHERY.TXT","w");
for(i=0;i<5;i++)
fprintf(p,"%st%dn",s1[i].player,s1[i].scor);
fclose(p);
return;
}
//main begins
void main()
{
int mid;
static int c=1;
char name[30];
int gdriver = DETECT,gmode, errorcode;
count=0; score=0;
initgraph(&gdriver, &gmode, "c:TurboC3BGI");
errorcode = graphresult();
if (errorcode != grOk)
{
printf("Graphics error: %sn", grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
exit(1); /* terminate with an error code */
}
hand();
image();
image1();
conveximage();
cleardevice();
man:
while(1)
{
cleardevice();
setcolor(WHITE);
c=1;
setbkcolor(2);
setlinestyle(2,1,3);
rectangle(4,4,635,475);
setlinestyle(0,1,3);
rectangle(0,0,640,480);
setlinestyle(0,1,3);
ellipse(320,80,0,360,133,50);
setcolor(9);
setfillstyle(1,9);
fillellipse(320, 80, 133, 50);
setcolor(14);
settextstyle(4,0,6);
outtextxy(190,40,"ARChERY");
line(322,58,322,73);
settextstyle(0,0,3);
putimage(130,175,handimage,OR_PUT);
setcolor(4);
outtextxy(180,180,"PLAY THE GAME....");
setcolor(14);
outtextxy(180,230,"INSTRUCTIONS....");
outtextxy(180,280,"HIGH SCORES....");
outtextxy(180,330,"LEVELS....");
outtextxy(180,380,"EXIT....");
gethighscores();
getkey();
if(ascii==27) //esc
exit(0);
if(ascii==13)
game();
else if(((scan==80)||(scan==72))&&(c==1))
{
b: setcolor(14);
setfillstyle(0,2);
bar(120,160,173,430);
putimage(130,175,handimage,OR_PUT);
settextstyle(0,0,3);
outtextxy(180,230,"INSTRUCTIONS....");
outtextxy(180,280,"HIGH SCORES....");
outtextxy(180,330,"LEVELS....");
outtextxy(180,380,"EXIT....");
setcolor(4);
outtextxy(180,180,"PLAY THE GAME....");
c++;
score=0;
getkey();
if(ascii==13) { game(),score=0; goto man;}
if(scan==72) { c=5; goto g;}
else if((scan==80)&&(c==2))
{
d: setcolor(14);
setfillstyle(0,2);
bar(120,160,173,430);
putimage(130,225,handimage,OR_PUT);
settextstyle(0,0,3);
outtextxy(180,180,"PLAY THE GAME....");
outtextxy(180,280,"HIGH SCORES....");
outtextxy(180,330,"LEVELS....");
outtextxy(180,380,"EXIT....");
setcolor(4);
outtextxy(180,230,"INSTRUCTIONS....");
c++;
getkey();
if(ascii==13) rules();
else if(scan==72){c-=2; goto b;}
if((scan==80)&&(c==3))
{
e: setcolor(14);
setfillstyle(0,2);
bar(120,160,173,430);
putimage(130,275,handimage,OR_PUT);
settextstyle(0,0,3);
outtextxy(180,180,"PLAY THE GAME....");
outtextxy(180,230,"INSTRUCTIONS....");
outtextxy(180,330,"LEVELS....");
outtextxy(180,380,"EXIT....");
setcolor(4);
outtextxy(180,280,"HIGH SCORES....");
c++;
getkey();
if(ascii==13) displaytopscore();
if(scan==72) { c-=2; goto d;}
if((scan==80)&&(c==4))
{
f: setcolor(14);
setfillstyle(0,2);
bar(120,160,173,430);
putimage(130,325,handimage,OR_PUT);
settextstyle(0,0,3);
outtextxy(180,180,"PLAY THE GAME....");
outtextxy(180,230,"INSTRUCTIONS....");
outtextxy(180,280,"HIGH SCORES....");
outtextxy(180,380,"EXIT....");
setcolor(4);
outtextxy(180,330,"LEVELS....");
c++;
getkey();
if(ascii==13) level();
else if(scan==72) { c-=2; goto e;}
else if((scan==80)&&(c==5))
{
g: setcolor(14);
setfillstyle(0,2);
bar(120,160,173,430);
putimage(130,375,handimage,OR_PUT);
settextstyle(0,0,3);
outtextxy(180,180,"PLAY THE GAME....");
outtextxy(180,230,"INSTRUCTIONS....");
outtextxy(180,280,"HIGH SCORES....");
outtextxy(180,330,"LEVELS....");
setcolor(4);
outtextxy(180,380,"EXIT....");
c++;
getkey();
if(ascii==13) break;
else if(scan==72) { c-=2; goto f;}
else if((scan==80))
{ c=1; goto b; }
} //g if close
} //f if
}//e if
}// d elseif
} //b if
}//while
}// main
void displaytopscore()
{
FILE *p;
int i;
char str[100];
p=fopen("ARCHERY.TXT","r");
if(p==NULL)
{
for(i=0;i<5;i++)
{
strcpy(s1[i].player,"Unknown");
s1[i].scor=0;
}
}
else
{
for(i=0;i<5;i++)
if(fscanf(p,"%st%d",s1[i].player,&s1[i].scor)==EOF)
fclose(p);
}
fclose(p);
cleardevice();
setlinestyle(0,1,3);
rectangle(0,0,638,478);
setlinestyle(0,1,3);
ellipse(320,80,0,360,133,50);
setcolor(9);
setfillstyle(1,9);
fillellipse(320,80,133,50);
setcolor(14);
settextstyle(1,0,6);
outtextxy(200,40,"ARCHERY");
settextstyle(1,0,1);
setcolor(RED);
outtextxy(240,160,"HIGH SCORES");
setcolor(GREEN);
settextstyle(1,0,1);
for(i=0;i<5;i++)
{
sprintf(str,"%7d --- %10s",s1[i].scor,s1[i].player);
setcolor(4);
outtextxy(170,200+(i*20),str);
}
setcolor(RED);
outtextxy(230,350,"Press ENTER Key");
getch();
//
while(i!='r')
clearviewport();
} //end displaytopscore
void gethighscores()
{
FILE *p;
int i;
char str[100];
p=fopen("ARCHERY.TXT","r");
if(p==NULL)
{
for(i=0;i<5;i++)
{
strcpy(s1[i].player,"Unknown");
s1[i].scor=0;
}
}
else
{
for(i=0;i<5;i++)
if(fscanf(p,"%st%dn",s1[i].player,&s1[i].scor)==EOF)
fclose(p);
}
fclose(p);
} //end gethighscore
void game()
{
level1=1;
count=25;
score=0;
life=1;
m1=1,m2=1,m3=1,m4=1,m5=1;
cleardevice();
setcolor(2);
setlinestyle(0,1,3);
rectangle(0,0,550,478);
setbkcolor(0);
setcolor(9);
settextstyle(0,0,2);
outtextxy(555,250,"ARROWS");
outtextxy(555,50,"SCORE ");
outtextxy(555,150,"LEVEL");
setcolor(WHITE);
settextstyle(1,0,1);
itoa(score,buff,5);
outtextxy(585,95,buff);
sprintf(buff,"%d",count);
outtextxy(585,275,buff);
itoa(level1,buffer,5);
setcolor(WHITE);
outtextxy(585,175,buffer);
setlinestyle(0,1,3);
setcolor(4);
rectangle(left,top-10,right,bottom+10);
while((1)&&(count!=0))
{
if(score==100)
{
setcolor(0);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
sprintf(buff,"%d",level1);
outtextxy(585,175,buff);
sprintf(buff,"%d",count);
outtextxy(585,275,buff);
score+=25;
setfillstyle(1,0);
bar(0,0,550,480);
level1++,count=25;
setcolor(2);
setlinestyle(0,1,3);
rectangle(0,0,550,478);
settextstyle(1,0,1);
setcolor(WHITE);
sprintf(buff,"%d",count);
outtextxy(585,275,buff);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
sprintf(buff,"%d",level1);
outtextxy(585,175,buff);
settextstyle(1,0,4);
for(int color=1;color<=14;color++)
{
setcolor(color);
outtextxy(200,200,"LEVEL 2");
delay(200);
}
setfillstyle(1,0);
bar(200,100,400,300);
}
if(level1==1)
ball();
if(level1==2&&score<200)
balllevel2();
if(score==200)
{
setcolor(0);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
sprintf(buff,"%d",level1);
outtextxy(585,175,buff);
sprintf(buff,"%d",count);
outtextxy(585,275,buff);
score+=25;
setfillstyle(1,0);
bar(0,0,550,480);
level1++,count=25;
setcolor(2);
setlinestyle(0,1,3);
rectangle(0,0,550,478);
settextstyle(1,0,1);
setcolor(WHITE);
sprintf(buff,"%d",count);
outtextxy(585,275,buff);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
sprintf(buff,"%d",level1);
outtextxy(585,175,buff);
settextstyle(1,0,4);
for(int color=1;color<=14;color++)
{
setcolor(color);
outtextxy(200,200,"LEVEL 3");
delay(200);
}
setfillstyle(1,0);
bar(200,100,400,300);
}
if(level1==3&&score>=225&&life==1)
eyelevel();
if(life==0) count=0;
if(gover==1)
count=0;
if(kbhit())
{
getkey();
if(ascii==27)
break;
if(scan==57)
{
mid=(top+bottom)/2;
hit=1;
}
else if((scan==72)&&(z1>=510))
arrow(1);
else if((scan==80)&&(z1>=510))
arrow(0);
}
if(hit==1)
shoot(mid);
} //while
if(score<100)
gover=1;
if(score<500)
gover=1;
if(gover==1)
{
setcolor(1);
settextstyle(4,0,8);
outtextxy(50,180,"GAME OVER");
for(int c=1,j=10;j<=32000;j++)
{
putpixel(random(j),random(j),8);
if(j==32000){j=0;c++;}
if(c>=50)break;
}
gover=0;
}
if(score>s1[4].scor)updatehighscore();
else
clearviewport();
writehighscorestodisk();
// setcolor(4);
// rectangle(left,top-10,right,bottom+10);
cleardevice();
} //end function
void arrow(int pos)
{
int s;
//erase
setfillstyle(SOLID_FILL,0);
bar(left-5,top-15,right+5,bottom+15);
if(pos==1)//up
{
if(top==60)
top=60;
else
{
top-=15;
bottom-=15;
}
}
else
{
if(top==420)
top=420;
else
{
top+=15;
bottom+=15;
}
}
//draw arrow
setlinestyle(0,1,3);
setcolor(4);
rectangle(left,top-10,right,bottom+10);
setlinestyle(0,1,1);
}
int shoot(int mid)
{
static int z=90,delay_shoot=1;
delay_shoot++;
static int soundon=0;
if(delay_shoot>200&&z<510)
{
delay_shoot=0;
soundon=1;
setcolor(0);
if(soundon)
{
for(int Si=5; Si<10; Si++) {
sound(300*Si);
delay(1);
nosound();
}}
settextstyle(1,0,1);
outtextxy(z-30,mid,">--->");
setcolor(RED);
outtextxy(z,mid,">--->");
z+=30;
z1=z;
if(level1==1)
{
if((z>=480)&&(z<=500)&&(mid>=m-19)&&(mid<=m+19))
{
settextstyle(1,0,1);
setcolor(0);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
score+=5;
setcolor(WHITE);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
check=1;
}
else if((z>=410)&&(z<=430)&&(mid>=n-19)&&(mid<=n+19))
{
setcolor(0);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
score+=5;
setcolor(WHITE);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
check=2;
}
else if((z>=340)&&(z<=360)&&(mid>=p-19)&&(mid<=p+19))
{
setcolor(0);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
score+=5;
setcolor(WHITE);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
check=3;
}
else if((z>=270)&&(z<=290)&&(mid>=q-19)&&(mid<=q+19))
{
setcolor(0);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
score+=5;
setcolor(WHITE);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
check=4;
}
}
if(level1==2)
{
if((abs(m-z)>=0)&&(abs(m-z)<=18)&&(mid==60))
{
setcolor(0);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
score+=5;
setcolor(WHITE);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
check=1;
setfillstyle(1,0);
bar(z-50,30,z+70,100);
z=500;
m1++;
}
if((abs(n-z)>=0)&&(abs(n-z)<=17)&&(mid>=120)&&(mid<=150))
{
setcolor(0);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
score+=5;
setcolor(WHITE);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
check=2;
setfillstyle(1,0);
bar(z-50,100,z+90,180);
z=500;
m2++;
}
if((abs(p-z)>=0)&&(abs(p-z)<=18)&&(mid>=210)&&(mid<=240))
{
setcolor(0);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
score+=5;
setcolor(WHITE);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
check=3;
setfillstyle(1,0);
bar(z-50,180,z+80,285);
z=500;
m3++;
}
if((abs(q-z)>=0)&&(abs(q-z)<=19)&&(mid>=310)&&(mid<=340))
{
setcolor(0);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
score+=5;
setcolor(WHITE);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
check=4;
setfillstyle(1,0);
bar(z-60,285,z+80,365);
z=500;
m4++;
}
if((abs(r-z)>=0)&&(abs(r-z)<=19)&&(mid>=410)&&(mid<=440))
{
setcolor(0);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
score+=5;
setcolor(WHITE);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
check=5;
setfillstyle(1,0);
bar(z-50,390,z+80,460);
z=500;
m5++;
}
}
if(level1==3)
{
if((z>=475)&&(z<=501)&&(mid>=m)&&(mid<=m+35))
{
settextstyle(1,0,1);
setcolor(0);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
score+=10;
setcolor(WHITE);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
check=1;
}
if((z>=475)&&(z<=501)&&(mid==m+30)&&(mid<=m+36))
{
settextstyle(1,0,1);
setcolor(0);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
score+=500;
setcolor(WHITE);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
setcolor(1);
settextstyle(4,0,8);
outtextxy(90,180,"WINNER");
for(int c1=1,j=10;j<=25000;j++)
{
putpixel(random(j),random(j),8);
if(j==32000){j=0;c1++;}
if(c1>=50)break;
}
delay(1000);
life=0;
gover=0;
}
if((z>=475)&&(z<=501)&&(mid>=m+45)&&(mid<=m+65))
{
settextstyle(1,0,1);
setcolor(0);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
score+=10;
setcolor(WHITE);
sprintf(buff,"%d",score);
outtextxy(585,95,buff);
check=1;
}
}
if(z>=510)
{
setcolor(0);
outtextxy(z-30,mid,">--->");
z=90;
hit=0;
setcolor(0);
sprintf(buff,"%d",count);
outtextxy(585,275,buff);
count--;
setcolor(WHITE);
sprintf(buff,"%d",count);
outtextxy(585,275,buff);
}
} //end outer if
return 0;
}//end
void ball()
{
static int k=35,delay_ball=1,l=45,e=55,f=25;
delay_ball++;
if(delay_ball>300)
{
delay_ball=0;
//erase
delay(20);
setfillstyle(1,0);
bar(470,k,530,k+50);
bar(400,l,530,l+50);
bar(330,e,530,e+50);
bar(260,f,530,f+50);
setcolor(2);
setlinestyle(0,1,3);
rectangle(0,0,550,478);
if(check==1)
{
k=35;
check=0;
}
if(check==2)
{
l=45;
check=0;
}
if(check==3)
{
e=55;
check=0;
}
if(check==4)
{
f=25;
check=0;
}
else if(k>=420) k=35;
else if(l>=420) l=45;
else if(e>=420) e=55;
else if(f>=420) f=25;
m=k+25; k+=8;
n=l+25; l+=6;
p=e+25; e+=7;
q=f+25; f+=9;
putimage(470,k,iball,OR_PUT);
putimage(400,l,iball1,OR_PUT);
putimage(330,e,iball2,OR_PUT);
putimage(260,f,iball3,OR_PUT);
}
} //end
void balllevel2()
{
static int k=470,l=460,e=450,f=440,g=430,delay_ball=1;
delay_ball++;
//draw arrow
if((top>=60)&&(top<=90)&&(m==62)&&(m1<=3)) {gover=1;return;}
if((top>=120)&&(top<=180)&&(n==61)&&(m2<=3)){gover=1;return;}
if((top>=210)&&(top<=270)&&(p==60)&&(m3<=3)){gover=1;return;}
if((top>=295)&&(top<=365)&&(q==60)&&(m4<=3)){gover=1;return;}
if((top>=380)&&(top<=465)&&(r==62)&&(m5<=3)){gover=1;return;}
if(delay_ball>300&&k>23&&l>17&&e>13&&f>10)
{
delay_ball=0;
delay(20);
setfillstyle(1,0);
if(m1<=3) bar(k+60,30,k,90);
if(m2<=3) bar(l+60,120,l,180);
if(m3<=3) bar(e+60,210,e,270);
if(m4<=3) bar(f+60,300,f,360);
if(m5<=3) bar(g+60,390,g,450);
setcolor(2);
setlinestyle(0,1,3);
rectangle(0,0,550,478);
if(m1>=3)m=1000;
if(m2>=3)n=1000;
if(m3>=3)p=1000;
if(m4>=3)q=1000;
if(m5>=3)r=1000;
if(m1<=3)
{m=k,k-=8;}//k=8
if(m2<=3)
{n=l,l-=7;} //l=7
if(m3<=3)
{p=e,e-=6;} //e=6
if(m4<=3)
{q=f,f-=5;} //f=5
if(m5<=3)
{r=g;g-=4;} //g=4
if(check==1)
{
k=470;
check=0;
}
if(check==2)
{
l=460;
check=0;
}
if(check==3)
{
e=450;
check=0;
}
if(check==4)
{
f=440;
check=0;
}
if(check==5)
{
g=430;
check=0;
}
if (k<=23) k = 470;
if(l<=17) l=460;
if(e<=13) e=450;
if(f<=10) f=440;
if(g<=10) g=430;
//
plot new image
if(m1<=3) putimage(k,30,pball,OR_PUT);
if(m2<=3) putimage(l,120,pball1,OR_PUT);
if(m3<=3) putimage(e,210,pball2,OR_PUT);
if(m4<=3) putimage(f,300,pball3,OR_PUT);
if(m5<=3) putimage(g,390,pball4,OR_PUT);
}
} //end
void eyelevel()
{
static int e1=15,delay_eye=1;
delay_eye++;
static int up=1;
if(delay_eye>300&&e1<405&&life!=0)
{
delay_eye=0;
delay(20);
setfillstyle(1,0);
bar(480,e1,520,e1+80);
setcolor(2);
setlinestyle(0,1,3);
rectangle(0,0,550,478);
m=e1;
if(up)
e1+=5;
if(up==0)
e1-=5;
if(check==1)
check=0;
if(e1>=405)
{
e1=400;
up=0;
}
if(e1<=15)
{
e1=15;
up=1;}
putimage(480,e1,peye,OR_PUT);
}
}

More Related Content

PPTX
CBSE, Grade12, Computer Science, Random Numbers - Notes
RTF
project3
DOCX
Paint program in c language
PDF
graphics Assidnment
PDF
Programming with GUTs
PDF
Manual Acido Base
DOC
Graphical representation of Stack
PPTX
Real Life Uses of a Program (Tik Tok Toy Game) useing by C Programming
CBSE, Grade12, Computer Science, Random Numbers - Notes
project3
Paint program in c language
graphics Assidnment
Programming with GUTs
Manual Acido Base
Graphical representation of Stack
Real Life Uses of a Program (Tik Tok Toy Game) useing by C Programming

What's hot (7)

PDF
Exploring Canvas
PDF
Bai Giang 11
DOCX
program logbook
PDF
A Taste of Python - Devdays Toronto 2009
PDF
Ludo mini project in c++
PDF
MongoDB Analytics
PDF
MoSQL: More than SQL, but Less than ORM @ PyCon APAC 2013
Exploring Canvas
Bai Giang 11
program logbook
A Taste of Python - Devdays Toronto 2009
Ludo mini project in c++
MongoDB Analytics
MoSQL: More than SQL, but Less than ORM @ PyCon APAC 2013
Ad

Similar to Bubble archery game(c program) (20)

PPTX
Bow&amp;arrow game
DOCX
NewTetrisScore.cppNewTetrisScore.cpp newTetris.cpp  Defines t.docx
DOC
Quiz using C++
DOCX
i need an input of this program.  anything good or bad.  what could .docx
PDF
PDF
Code em Poker
PDF
AI For Texam Hold'em poker
DOCX
Computer graphics
PDF
Introduction to programming class 12
PPTX
C game programming - SDL
KEY
Sbaw090519
PPT
Gdc09 Minigames
PDF
The Ring programming language version 1.10 book - Part 81 of 212
PDF
C++You will design a program to play a simplified version of war, .pdf
DOCX
Please answer the 4 questions using C- The expected output is shown be.docx
DOCX
In C pls -- Write your name here -- Write the compiler used- Visual st.docx
DOCX
-- Reminder that your file name is incredibly important- Please do not.docx
PDF
Create a C program that implements The Game of Life cellular auto.pdf
PDF
The Ring programming language version 1.3 book - Part 52 of 88
Bow&amp;arrow game
NewTetrisScore.cppNewTetrisScore.cpp newTetris.cpp  Defines t.docx
Quiz using C++
i need an input of this program.  anything good or bad.  what could .docx
Code em Poker
AI For Texam Hold'em poker
Computer graphics
Introduction to programming class 12
C game programming - SDL
Sbaw090519
Gdc09 Minigames
The Ring programming language version 1.10 book - Part 81 of 212
C++You will design a program to play a simplified version of war, .pdf
Please answer the 4 questions using C- The expected output is shown be.docx
In C pls -- Write your name here -- Write the compiler used- Visual st.docx
-- Reminder that your file name is incredibly important- Please do not.docx
Create a C program that implements The Game of Life cellular auto.pdf
The Ring programming language version 1.3 book - Part 52 of 88
Ad

Recently uploaded (20)

DOCX
Elisabeth de Pot, the Witch of Flanders .
PPTX
the-solar-system.pptxxxxxxxxxxxxxxxxxxxx
PPTX
providenetworksystemadministration.pptxhnnhgcbdjckk
PDF
Apresentação2 analise estrutual.hhjghjpdf
PDF
What is Rotoscoping Best Software for Rotoscoping in 2025.pdf
PDF
Download FL Studio Crack Latest version 2025
PPTX
Safety_Pharmacology_Tier2_Edibbbbbbbbbbbbbbbable.pptx
PDF
oppenheimer and the story of the atomic bomb
DOCX
Nina Volyanska Controversy in Fishtank Live_ Unraveling the Mystery Behind th...
PDF
Songlyrics.net-website for lyrics song download
PDF
EVs U-5 ONE SHOT Notes_c49f9e68-5eac-4201-bf86-b314ef5930ba.pdf
PPTX
Other Dance Forms - G10 MAPEH Reporting.pptx
PDF
Rakshabandhan – Celebrating the Bond of Siblings - by Meenakshi Khakat
PPTX
genderandsexuality.pptxjjjjjjjjjjjjjjjjjjjj
PDF
WKA #29: "FALLING FOR CUPID" TRANSCRIPT.pdf
PDF
Keanu Reeves Beyond the Legendary Hollywood Movie Star.pdf
PPTX
What Makes an Entertainment App Addictive?
PDF
High-Quality PDF Backlinking for Better Rankings
PPTX
shbthd htsh htrw hw htr 5w h5e 54 y.pptx
PPTX
The story of Nomuzi and the way she was living
Elisabeth de Pot, the Witch of Flanders .
the-solar-system.pptxxxxxxxxxxxxxxxxxxxx
providenetworksystemadministration.pptxhnnhgcbdjckk
Apresentação2 analise estrutual.hhjghjpdf
What is Rotoscoping Best Software for Rotoscoping in 2025.pdf
Download FL Studio Crack Latest version 2025
Safety_Pharmacology_Tier2_Edibbbbbbbbbbbbbbbable.pptx
oppenheimer and the story of the atomic bomb
Nina Volyanska Controversy in Fishtank Live_ Unraveling the Mystery Behind th...
Songlyrics.net-website for lyrics song download
EVs U-5 ONE SHOT Notes_c49f9e68-5eac-4201-bf86-b314ef5930ba.pdf
Other Dance Forms - G10 MAPEH Reporting.pptx
Rakshabandhan – Celebrating the Bond of Siblings - by Meenakshi Khakat
genderandsexuality.pptxjjjjjjjjjjjjjjjjjjjj
WKA #29: "FALLING FOR CUPID" TRANSCRIPT.pdf
Keanu Reeves Beyond the Legendary Hollywood Movie Star.pdf
What Makes an Entertainment App Addictive?
High-Quality PDF Backlinking for Better Rankings
shbthd htsh htrw hw htr 5w h5e 54 y.pptx
The story of Nomuzi and the way she was living

Bubble archery game(c program)