i divided my code into three files
file 1 : the tournament
Code:
/* difficulty level */
#include"player.h"
#include<iostream>
#include<conio.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>
static bool a=1,b=0;
using namespace std;
void delay(int);
void clear();
void noem();
void drinkp();
void tutorial();
void options();
void shop();
void win(int &a,int &b);
void quit(int&);
void weapons();
void armour();
void extras();
void fo();
void bou();
void boa();
void player :: fo()
{
for(int aa=0;aa<3;aa++)
{
for(int bb=0;bb<5;bb++)
{
p.w[aa][bb]=1;
p.a[aa][bb]=1;
}//end of for(bb)
}//end of for(aa)
}//end of function fo()
void player:: start()
{
srand(time(NULL));
system("cls");
cout<<"when you are ready press enter...\n";
getch();
p.status();
char a;
e.settorat(e);
int z=0,d,j=1;
for(int i=0;i!=1;)
{
system("cls");
cout<<"what will you do...\n";
cout<<"(1) punch him\n";
cout<<"(2) use your "<<p.wpn;
cout<<"(3) see your status\n";
cout<<"(4) see enemy's status\n";
cout<<"(5) drink portions\n";
cout<<"(6) leave";
a=getch();
switch(a)
{
case '1':{
system("cls");
z=(rand()%(p.melee[1]-p.melee[0])+(p.melee[0]+1));
if(e.arm==0&&e.health>0)
{
e.health-=z;
if(e.health<0)
e.health=0;
cout<<p.damd[rand()%4]<<"\ndamage done "<<z;
cout<<"\n"<<e.name<<"'s health "<<e.health ;
}
else if(e.arm>0)
{
e.arm-=(2)*z;
if(e.arm<0)
e.arm=0;
cout<<p.damd[rand()%4]<<"\ndamage done to armour "<<z;
cout<<"\n"<<e.name<<"'s armour "<<e.health ;
}
else
{
win(i,++j);
continue;
}
delay(2000);
}break;
case '2':{
system("cls");
z=rand()%((p.dam[1])-(p.dam[0]));
z+=(p.dam[0]+1+p.edam);
if(e.arm<=0&&e.health>0)
{
e.health-=z;
if(e.health<0)
e.health=0;
}
else if(e.arm>0)
{
e.arm-=2*z;
if(e.arm<0)
e.arm=0;
}
else
{
win(i,++j);
continue;
}
cout<<p.damd[rand()%4]<<"\ndamage done "<<z;
cout<<"\n"<<e.name<<"'s health "<<e.health ;
delay(3000);
}break;
case '3':p.status();continue;
case '4':e.status();continue;
case '5':drinkp();continue;
case '6':i=1;break;
default :continue;
}//end of switch
if(i)
break;
//enemy;s turn
if(e.health<=0)
{
win(i,++j);
continue;
}
system("cls");
z=rand()%(e.dam[1]-e.dam[0])+e.dam[0]+1;
d=(rand()%4);
cout<<e.damd[d];
if(p.arm==0&&p.health>0)
{
p.health-=z;
if(p.health<0)
p.health=0;
cout<<"your health reduces to "<<p.health;
cout<<"\n"<<e.name<<" hurts you by : "<<z;
}
else if(p.arm>0)
{
p.arm-=2*z;
if(p.arm<0)
p.arm=0;
cout<<"damage done to armour "<<2*z;
cout<<"\narmour left : "<<p.arm;
}
delay(3000);
}//end of loop
}//end of function start()
void clear(int &a)
{
for(int i=0;i<a;i++)
{
cout<<"\b";
}
}
void player :: win(int &a,int &b)
{
system("cls");
a=0;
cout<<"you defeated "<<e.name<<" and got "<<e.mon<<" money as reward..";
p.mon+=e.mon;
getch();
system("cls");
cout<<"now you will fight your next opponent...\npress any key to goto shop...";
shop();
switch(b)
{
case 2:e.settohrat(e);break;
case 3:e.settofarmer(e);break;
case 4:e.settocman(e);break;
case 5:e.settoucman(e);break;
}
e.status();
}//end of function win()
void delay(int a)
{
for(int i=0;i<3*a;i++)
{
cout<<" "<<"\b\b\b\b\b\b\b\b\b\b\b\b";// this delay function is used to delay the process
}
}
void ab()
{
system("cls");
cout<<"you had purchased this item before\n";
getch();
}
void tutorial()
{
int i,k;
system("cls");
cout<<"learn how to play this game...\npress any key to continue.";
getch();
system("cls");
char a[68],
a1[]="you will start as a man who wants to win the 'Tournament of Death'",
a2[]="when you were heading to the stadiun you accidently fell into",
a3[]="gutter and met a small rat guarding his king",
a4[]="now after defeating rat-king after his slave you find a way out ",
a5[]="in between the fight between common and uncommon man",
a6[]="now after beating the two men you start your journey to tournament";
for(k=0;k<6;k++)
{
switch(k)
{
case 0:strcpy(a,a1);break;
case 1:strcpy(a,a2);break;
case 2:strcpy(a,a3);break;
case 3:strcpy(a,a4);break;
case 4:strcpy(a,a5);break;
case 5:strcpy(a,a6);break;
}
for(i=0;;i++)
{
if(a[i]=='\0')
{
getch();
break;
}
else if(a[i]!='\0')
{
cout<<a[i];
delay(80);
}
}
for(;i>0;i--)
{
cout<<"\b";
delay(20);
}
}
}//end of funtion tutorial()
void player:: options()
{
for(int i=0;i!=1;)
{
system("cls");
cout<<"(1) set difficulty level\n(2) set your player's name\n(3) reset game\n(4) back\n";
char a;
a=getch();
system("cls");
switch(a)
{
case '1':cout<<"(1) easy\n(2) medium\n(3) hard\n(4) insane!\n";
a=getch();
switch(a)
{
case '1':p.d=0;break;
case '2':p.d=1;break;
case '3':p.d=2;break;
case '4':p.d=3;break;
default :cout<<"no! that is not an option...";
getch();
continue;
}
break;
case '2':cout<<"enter your new name : ";
cin>>p.name;
break;
case '3': ::a=1;cout<<"noe start the game again to erase the progress\n";
getch();
break;
case '4':i++;break;
default :continue;
}//end of switch()
}//end of for
}//end of function options()
void player :: shop()
{
back:
int b=1;
system("cls");
cout<<"welcome to the shop\n";
cout<<" (1) to buy weapons\n (2) to buy armour\n (3) to buy extras\n (4) back";
cout<<"\nmoney left : "<<p.mon<<"\n";
char a=getch();
switch(a)
{
case '1':weapons();break;
case '2':armour();break;
case '3':extras();break;
case '4':b=0;break;
}
if(b)
{
system("cls");
goto back;
}
}//end of function shop()
void player:: extras()
{
system("cls");
static int mon=25;
for(int i=0;i!=1;i+=0)
{
system("cls");
cout<<"(1) heal yourself\n(2) repair armour\n(3) buy portions\n(4) upgrade health\n(5) back";
cout<<"\nmoney left : "<<p.mon<<"\n";
char a=getch();
switch(a)
{
case '1':{
system("cls");
cout<<"press 'y' to confirm and 'n' to go back and 'f' to use all your money to restore health\n";
cout<<"the cost is : "<<(p.health1-p.health)/3;
cout<<"\nmoney left : "<<p.mon<<"\n";
a=getch();
switch(a)
{
case 'y':if(p.mon>=(p.health1-p.health)/3)
{
cout<<"\nyou restored your health back to "<<p.health1;
p.mon-=(p.health1-p.health)/3;
p.health=p.health1;
delay(1500);
}
else
noem();
case 'n':continue;
case 'f':if(p.mon)
{
cout<<"\nyou restored your health up to "<<p.health1;
p.health+=((p.mon/((p.health1-p.health)/3))*(p.health1-p.health));
p.mon=0;
delay(1500);
}
else if(!p.mon)
noem();
break;
}//end of inner switch
}//end of case '1'
case '2':{
system("cls");
cout<<"press'y' to confirm and 'n' to go back\n";
cout<<"the cost is : "<<(p.arm1-p.arm)/3;
cout<<"\nmoney left : "<<p.mon<<"\n";
a=getch();
switch(a)
{
case 'y':if(p.mon>=(p.arm1-p.arm)/3)
{
cout<<"\nyou restored your armour back to "<<p.arm1;
p.mon-=(p.arm1-p.arm)/3;
p.arm=p.arm1;
delay(1000);
}
else
noem();
case 'n':continue;
}
}//end of case '2'
case '3':{
system("cls");
cout<<"which portions will you buy?\n";
cout<<"(1) health portion (cost : 10 restoration : 30)\n";
cout<<"(2) damage portion (cost : 25 increase in damage : 5)\n";
cout<<"(3)back\n";
cout<<"money left : "<<p.mon<<"\n";
switch((a=getch()))
{
case '1':{
system("cls");
if(p.mon>=10)
{
p.hp++;
p.mon-=10;
cout<<"you bought a health portion for 10 money\n";
delay(2000);
}
else
noem();
}break;
case '2':{
system("cls");
if(p.mon>=25)
{
p.dp++;
p.mon-=25;
cout<<"you bought a damage portion for 25 money\n";
delay(2000);
}
else
noem();
}break;
}//end of switch inside case '3' of outer switch
}break;//end of case '3'
case '4':cout<<"\nmoney needed "<<mon<<"\nconfirm your option(y/n)";
a=getch();
if(a=='y')
{
if(p.mon>=mon)
{
p.health1+=20;
p.health=p.health1;
p.mon-=mon;
mon+=25;
}
else
{
cout<<"\nsorry not enough money...\n";
delay(1500);
continue;
}
}
else if(a=='n')
break;
case '5':i=1;break;
}//end of switch()
}//end of for
}//end of function extras()
void player:: weapons()
{
back:
int b=1;
system("cls");
cout<<"(1) light weapons \n(2) medium weapons\n(3) heavy weapons\n(4) back\n";
cout<<"money left : "<<p.mon<<"\n";
char a=getch();
switch(a)
{
case '1':{
system("cls");
cout<<"light weapons\n";
cout<<"(1) small stick (cost : 10 damage : 0-3)\n";
cout<<"(2) huge twig (cost : 15 damage : 2-5)\n";
cout<<"(3) sharp bamboo spear (cost : 20 damage : 5-10)\n";
cout<<"(4) rusty sword (cost : 30 damage : 10-20)\n";
cout<<"(5) iron sword (cost : 40 damage : 15-25)\n";
cout<<"(6) back\n";
cout<<"money left : "<<p.mon<<"\n";
a=getch();
switch(a)
{
case '1':{
if(p.mon>=10&&p.w[0][0])
{
p.dam[0]=0;
p.dam[1]=3;
p.wpn="small stick\n";
bou();
p.mon-=10;
p.w[0][0]--;
}
else if(p.mon<10&&p.w[0][0])
noem();
else if(!p.w[0][0])
ab();
}break;
case '2':{
if(p.mon>=15&&p.w[0][1])
{
p.dam[0]=2;
p.dam[1]=5;
p.wpn="huge twig\n";
bou();
p.mon-=15;
p.w[0][1]--;
}
else if(!p.w[0][1])
ab();
else if(p.mon<15&&p.w[0][1])
noem();
}break;
case '3':{
if(p.mon>=20&&p.w[0][2])
{
p.dam[0]=5;
p.dam[1]=10;
p.wpn="sharp bamboo spear\n";
bou();
p.mon-=20;
p.w[0][2]--;
}
else if(p.mon<20&&p.w[0][2])
noem();
else if(!p.w[0][2])
ab();
}break;
case '4':{
if(p.mon>=30&&p.w[0][3])
{
p.dam[0]=10;
p.dam[1]=20;
p.wpn="rusty sword\n";
bou();
p.mon-=30;
p.w[0][3]--;
}
else if(p.mon<30&&p.w[0][3])
noem();
else if(!p.w[0][3])
ab();
}break;
case '5':{ if(p.mon>=40&&p.w[0][4])
{
p.dam[0]=15;
p.dam[1]=25;
p.wpn="iron sword\n";
bou();
p.w[0][4]--;
p.mon-=40;
}
else if(p.mon<40&&p.w[0][4])
noem();
else if(!p.w[0][4])
ab();
}break;
case '6':system("cls");break;
}
}break;
case '2':
{
system("cls");
cout<<"medium weapons\n";
cout<<"(1) medium sword (cost : 50 damage : 20-30)\n";
cout<<"(2) long sword (cost : 60 damage : 20-35)\n";
cout<<"(3) sharp sword (cost : 80 damage : 40-60)\n";
cout<<"(4) cast iron sword (cost : 100 damage : 50-100)\n";
cout<<"(5) SS sword (cost : 120 damage : 60-100)\n";
cout<<"(6) back\n";
cout<<"money left : "<<p.mon<<"\n";
a=getch();
switch(a)
{
case '1':{ if(p.mon>=50&&p.w[1][0])
{
p.dam[0]=20;
p.dam[1]=30;
p.w[1][0]--;
p.wpn="medium sword\n";
bou();
p.mon-=50;
}
else if(p.mon<50&&p.w[1][0])
noem();
else if(!p.w[1][0])
ab();
}break;
case '2':{ if(p.mon>=60&&p.w[1][1])
{
p.dam[0]=20;
p.dam[1]=35;
p.w[1][1]--;
p.wpn="long sword\n";
bou();
p.mon-=60;
}
else if(p.mon<60&&p.w[1][2])
noem();
else if(!p.w[1][1])
ab();
}break;
case '3':{ if(p.mon>=80&&p.w[1][2])
{
p.dam[0]=40;
p.dam[1]=60;
p.wpn="sharp sword\n";
p.w[1][2]--;
bou();
p.mon-=80;
}
else if(p.mon<80&&p.w[1][2])
noem();
else if(!p.w[1][2])
ab();
}break;
case '4':{
if(p.mon>=100&&p.w[1][3])
{
p.dam[0]=50;
p.w[1][3]--;
p.wpn="cast iron sword\n";
bou();
p.dam[1]=100;
p.mon-=100;
}
else if(p.mon<100&&p.w[1][3])
noem();
else if(!p.w[1][3])
ab();
}break;
case '5':{
if(p.mon>=120&&p.w[1][4])
{
p.wpn="SS sword\n";
p.dam[0]=60;
bou();
p.dam[1]=100;
p.mon-=120;
p.w[1][4]--;
}
else if(p.mon<120&&p.w[1][4])
noem();
else if(!p.w[1][4])
ab();
}break;
case '6':system("cls");break;
}
}break;
case '3':
{
system("cls");
cout<<"heavy weapons\n";
cout<<"(1) silver sword (cost : 125 damage : 65-100)\n";
cout<<"(2) golden sword (cost : 150 damage : 80-120)\n";
cout<<"(3) diamond tipped sword (cost : 180 damage : 100-200)\n";
cout<<"(4) diamond sword (cost : 200 damage : 150-250)\n";
cout<<"(5) legenery sword (cost : 300 damage : 500-600)\n";
cout<<"(6) back\n";
cout<<"money left : "<<p.mon<<"\n";
a=getch();
switch(a)
{
case '1':{
if(p.mon>=125&&p.w[2][0])
{
p.dam[0]=65;
p.w[2][0]--;
p.dam[1]=100;
p.wpn="silver sword\n";
bou();
p.mon-=125;
}
else if(p.mon<125&&p.w[2][0])
noem();
else if(!p.w[2][0])
ab();
}break;
case '2':{
if(p.mon>=150&&p.w[2][1])
{
p.dam[0]=80;
p.wpn="golden sword\n";
bou();
p.dam[1]=120;
p.w[2][1]--;
p.mon-=150;
}
else if(p.mon<150&&p.w[2][1])
noem();
else if(!p.w[2][1])
ab();
}break;
case '3':{
if(p.mon>=180&&p.w[2][2])
{
p.dam[0]=100;
p.dam[1]=200;
p.wpn="emereld sword\n";
bou();
p.w[2][2]--;
p.mon-=180;
}
else if(p.mon<180&&p.w[2][2])
noem();
else if(!p.w[2][2])
ab();
}break;
case '4':{
if(p.mon>=200&&p.w[2][3])
{p.dam[0]=150;
p.dam[1]=250;
p.w[2][3]--;
p.wpn="diamond sword\n";
bou();
p.mon-=200;
}
else if(p.mon<200&&p.w[2][3])
noem();
else if(!p.w[2][3])
ab();
}break;
case '5':{
if(p.mon>=300&&p.w[2][4])
{p.dam[0]=500;
p.dam[1]=600;
p.wpn="legenry sword\n";
bou();
p.mon-=300;
p.w[2][4]--;
}
else if(p.mon<300&&p.w[2][3])
noem();
else if(!p.w[2][4])
ab();
}break;
case '6':system("cls");break;
}
}break;
case '4':b=0;break;
}
if(b)
goto back;
}
void noem()
{
system("cls");
cout<<"you have not enough money to buy this item...\n";
delay(1000);
system("cls");
}
void player :: armour()
{
back:
int b=1;
system("cls");
char a;
cout<<"(1) light armour\n(2) medium armour\n(3) heavy armour\n(4) back";
cout<<"\nmoney left : "<<p.mon<<"\n";
a=getch();
switch(a)
{
case '1':
{
system("cls");
cout<<"light armour\n";
cout<<"(1) tattered pants \t(cost : 5 armour : 10)\n";
cout<<"(2) thick cloth \t(cost : 10 armour : 15)\n";
cout<<"(3) wooden barrel \t(cost : 15 armour : 25)\n";
cout<<"(4) cast iron pads \t(cost : 25 armour : 30)\n";
cout<<"(5) SS chest \t(cost : 45 armour : 40)\n";
cout<<"(6) back\n";
cout<<"money left : "<<p.mon<<"\n";
a=getch();
switch(a)
{
case '1':{
if(p.mon>=5&&p.a[0][0])
{p.arm=10;
p.arm1=10;
p.mon-=5;
p.ar="tattered pants\n";
boa();
p.a[0][0]--;
}
else if(p.mon<5&&p.a[0][0])
noem();
else if(!p.a[0][0])
ab();
}break;
case '2':{
if(p.mon>=10&&p.a[0][1])
{p.arm=15;
p.arm1=15;
p.ar="thick cloth\n";
boa();
p.mon-=10;
p.a[0][1]--;
}
else if(p.mon<10&&p.a[0][1])
noem();
else if(!p.a[0][2])
ab();
}break;
case '3':{
if(p.mon>=15&&p.a[0][2])
{p.arm=25;
p.arm1=25;
p.ar="wooden barrel\n";
boa();
p.mon-=15;
p.a[0][2]--;
}
else if(p.mon<15&&p.a[0][2])
noem();
else if(!p.a[0][2])
ab();
}break;
case '4':{
if(p.mon>=25&&p.a[0][3])
{p.arm=30;
p.arm1=30;
p.ar="cast iron pads\n";
boa();
p.mon-=25;
p.a[0][3]--;
}
else if(p.mon<25&&p.a[0][3])
noem();
else if(!p.a[0][3])
ab();
}break;
case '5':{
if(p.mon>=45&&p.a[0][4])
{p.arm=40;
p.arm1=40;
p.ar="SS chest\n";
boa();
p.mon-=45;
p.a[0][4]--;
}
else if(p.mon<45&&p.a[0][4])
noem();
else if(!p.a[0][4])
ab();
}break;
case'6':system("cls");break;
}//end of switch(a) inside switch(a)
}break;//end of case 1 of switch(a)
case '2':{
system("cls");
cout<<"medium armour\n";
cout<<"(1) iron armour (cost : 50 armour : 50)\n";
cout<<"(2) thick iron armour (cost : 60 armour : 55)\n";
cout<<"(3) samurai armour (cost : 80 armour : 75)\n";
cout<<"(4) super steel armour (cost : 100 armour : 80)\n";
cout<<"(5) wootz steel armour (cost : 120 armour : 100)\n";
cout<<"(6) back\n";
cout<<"money left : "<<p.mon<<"\n";
a=getch();
switch(a)
{
case '1':{
if(p.mon>=50&&p.a[1][0])
{p.arm=50;
p.arm1=50;
p.a[1][0]--;
p.ar="iron armour\n";
boa();
p.mon-=50;
}
else if(p.mon<50&&p.a[1][0])
noem();
else if(!p.a[1][0])
ab();
}break;
case '2':{
if(p.mon>=60&&p.a[1][1])
{p.ar="thick iron armour\n";
boa();
p.a[1][1]--;
p.arm=55;
p.arm1=55;
p.mon-=60;
}
else if(p.mon<60&&p.a[1][1])
noem();
else if(!p.a[1][1])
ab();
}break;
case '3':{
if(p.mon>=80&&p.a[1][2])
{p.arm=75;
p.arm1=75;
p.ar="samurai armour\n";
boa();
p.a[1][2]--;
p.mon-=80;
}
else if(p.mon<80&&p.a[1][2])
noem();
else if(!p.a[1][2])
ab();
}break;
case '4':{
if(p.mon>=100&&p.a[1][2])
{p.arm= 80;
p.ar="super steel armour\n";
p.a[1][2]--;
boa();
p.arm1=80;
p.mon-=100;
}
else if(p.mon<100&&p.a[1][2])
noem();
else if(!p.a[1][3])
ab();
}break;
case '5':{
if(p.mon>=120&&p.a[1][2])
{p.arm=100;
p.ar="wootz steel armour\n";
boa();
p.a[1][2]--;
p.arm1=100;
p.mon-=120;
}
else if(p.mon<120&&p.a[1][2])
noem();
else if(!p.a[1][4])
ab();
}break;
case '6':system("cls");break;
}break;//end of switch(a) inside switch(a)
case '3':{
system("cls");
cout<<"heavy armour\n";
cout<<"(1) silver armour (cost : 125 armour : 110)\n";
cout<<"(2) gold armour (cost : 150 armour : 120)\n";
cout<<"(3) emereld armour (cost : 170 armour : 150)\n";
cout<<"(4) diamond armour (cost : 200 armour : 175)\n";
cout<<"(5) armour of turtle king (cost : 500 armour : 400)\n";
cout<<"(6) back\n";
cout<<"money left : "<<p.mon<<"\n";
a=getch();
switch(a)
{
case '1':{
if(p.mon>=125&&p.a[2][0])
{p.arm=110;
p.arm1=110;
p.ar="silver armour\n";
boa();
p.a[2][0]--;
p.mon-=125;
}
else if(p.mon<125&&p.a[2][0])
noem();
else if(!p.a[2][0])
ab();
}break;
case '2':{
if(p.mon>=150&&p.a[2][1])
{p.ar="gold armour\n";
p.arm=120;
p.arm1=120;
boa();
p.a[2][1]--;
p.mon-=150;
}
else if(p.mon<150&&p.a[2][1])
noem();
else if(!p.a[2][1])
ab();
}break;
case '3':{
if(p.mon>=170&&p.a[2][2])
{p.arm=150;
p.arm1=150;
p.ar="emereld armour\n";
boa();
p.mon-=170;
p.a[2][2]--;
}
else if(p.mon<170&&p.a[2][2])
noem();
else if(!p.a[2][1])
ab();
}break;
case '4':{
if(p.mon>=200&&p.a[2][3])
{p.arm=175;
p.arm1=175;
p.ar="diamond armour\n";
boa();
p.mon-=200;
p.a[2][3]--;
}
else if(p.mon<200&&p.a[2][3])
noem();
else if(!p.a[2][3])
ab();
}break;
case '5':{
if(p.mon>=500&&p.a[2][4])
{p.arm=400;
p.arm1=400;
p.ar="armour of turtle king\n";
boa();
p.a[2][4]--;
p.mon-=500;
}
else if(p.mon<500&&p.a[2][4])
noem();
else if(!p.a[2][4])
ab();
}break;
case '6':system("cls");break;
}
}break;
case '4':b=0;break;
}}
if(b)
goto back;
}
void player :: bou()
{
system("cls");
cout<<"you bought this weapon named : "<<p.wpn;
cout<<"and having damage : "<<p.dam[0]<<"-"<<p.dam[1];
delay(3000);
system("cls");
}
void player :: boa()
{
system("cls");
cout<<"you bought this armour named : "<<p.ar;
cout<<"and having strength : "<<p.arm;
delay(3000);
system("cls");
}
void quit(bool &b)
{
system("cls");
char a;
cout<<"are you sure want to quit?(y/n)";
a=getch();
switch(a)
{
case 'y':
case 'Y':{
system("cls");
cout<<"thanks for playing this game ";
for(int i=0;i<5;i++)
{
cout<<(char)1<<" "<<(char)2;
delay(500);
cout<<"\b\b\b"<<(char)2<<" "<<(char)1;
delay(500);
cout<<"\b\b\b";
}
b++;
}
case 'n':
case 'N':break;
default :cout<<"\nchoose one of the two (y/n)\n";
quit(b);
}//end of switch(a) inside function quit()
cout<<"\n";
system("pause");
}//end of function quit()
int main()
{
for(int i=0;i!=1;)
{
system("cls");
char a;
cout<<"welcome to \'the tournament\'\n";
cout<<"press...\n (1) to start\n (2) for tutorial\n (3) for options\n (4) to quit";
a=getch();
cout<<"\n";
switch(a)
{
case '1':p.start();break;
case '2':p.shop();break;
case '3':p.options();break;
case '4':quit(b);break;
}
if(b)
i++;
}//end of for
return 0;
}//end of main()
file 2 : player.h
Code:
#include<iostream>
#include<conio.h>
#include<time.h>
#include<stdlib.h>
using namespace std;
class player{
int health,arm,arm1,dam[2],mon,melee[2],w[3][5],a[3][5],health1,hp,dp,edam,d;
char name[10],*damd[5],*wpn,*ar,*dd;
public:
/*---------start of struct enemy----------*/
struct enemy
{
int health,arm,dam[2],mon;
char *name,*damd[4];
void status()
{
system("cls");
cout<<name<<"'s profile\n";
cout<<"health : "<<health;
cout<<"\ndamage : "<<dam[0]<<"-"<<dam[1];
cout<<"\narmour's strength : "<<arm;
cout<<"\nprize : "<<mon;
cout<<"\npress any key to continue...";
getch();
system("cls");
}//end of e.status()
void settorat(enemy &a)
{
a.health=10;
a.arm=0;
a.dam[0]=0;
a.dam[1]=3;
a.mon=20;
a.name="RAT";
a.damd[0]="that rat taunts you...\n";
a.damd[1]="woo rat just bit your left hand's finger...\n";
a.damd[2]="aaargh this rat is biting me\n";
a.damd[3]="oooooaaaaahhh this rat bit your neck\n";
}
void settohrat(enemy &a)
{
a.health=15;
a.arm=2;
a.dam[0]=2;
a.dam[1]=5;
a.mon=15;
a.name="RAT-king";
a.damd[0]="that rat-king taunts you...\n";
a.damd[1]="woo rat-king just bit your left hand's finger...\n";
a.damd[2]="aaargh this rat-king is biting me\n";
a.damd[3]="oooooaaaaahhh this rat-king bit your neck\n";
}
void settofarmer(enemy &a)
{
a.health=20;
a.arm=8;
a.dam[0]=8;
a.dam[1]=12;
a.mon=30;
a.name="farmer";
a.damd[0]="that farmer taunts you...\n";
a.damd[1]="woo farmer just hit your head with a hay-stack...\n";
a.damd[2]="aaargh he just punches your face\n";
a.damd[3]="your mouth is full of blood!!!\n";
}
void settocman(enemy &a)
{
a.health=30;
a.arm=15;
a.dam[0]=10;
a.dam[1]=15;
a.mon=50;
a.name="common man";
a.damd[0]="this man taunts you...\n";
a.damd[1]="woo this man just hit your head badly...\n";
a.damd[2]="aaargh he just punches your face\n";
a.damd[3]="your mouth is full of blood!!!\n";
}
void settoucman(enemy &a)
{
a.health=45;
a.arm=25;
a.dam[0]=10;
a.dam[1]=20;
a.mon=80;
a.name="uncommon man";
a.damd[0]="this man taunts you...\n";
a.damd[1]="woo this man just hit your head badly...\n";
a.damd[2]="aaargh he just punches your face\n";
a.damd[3]="your mouth is full of blood!!!\n";
}
}e;//end of struct enemy
/*------end of struct enemy--------*/
player()
{
health=100;
health1=health;
arm=0;
arm1=0;
hp=0;
edam=0;
dp=0;
dam[0]=0;
dam[1]=2;
mon=0;
melee[0]=1;
cout<<"enter your player's name : ";
cin>>name;
ar="tattered shirt\n";
melee[1]=5;
damd[0]="you hit like a lazy man...\n";
damd[1]="you did some damage to him\n";
damd[2]="you sliced through him\n";
damd[3]="you did some damage\n";
damd[4]="your weapon sliced through his belly...\n";
wpn="small twig\n";
fo();
switch(d)
{
case 0:dd="easy";break;
case 1:dd="medium";break;
case 2:dd="hard";break;
case 3:dd="insane!";break;
}
}
void status()
{
system("cls");
cout<<name<<"'s profile\n";
cout<<"current mode : "<<dd;
cout<<"\nhealth : "<<health;
cout<<"\nweapon damage : "<<dam[0]<<"-"<<dam[1];
cout<<"\nbonus damage : +"<<edam;
cout<<"\nmelee damage : "<<melee[0]<<"-"<<melee[1];
cout<<"\nweapon used : "<<wpn;
cout<<"armour's strength : "<<arm;
cout<<"\narmour in use : "<<ar;
cout<<"money left : "<<mon;
cout<<"\npress any key to continue...";
getch();
system("cls");
}
void drinkp();
void start();
void armour();
void weapons();
void extras();
void options();
void win(int &,int &);
void fo();
void shop();
void boa();
void bou();
}p;
/*------end of class player-------*/
file 3 : drinkp()
Code:
#include"player.h"
#include<iostream>
#include<conio.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>
using namespace std;
void delay(int);
void player :: drinkp()
{
for(int i=0;i!=1;i+=0)
{
system("cls");
char a;
cout<<"(1) health portions left "<<p.hp<<"\n";
cout<<"(2) damage portions left "<<p.dp<<"\n";
cout<<"(3) back\n";
a=getch();
switch(a)
{
case '1':if(p.hp)
{
system("cls");
cout<<"your health is increased by 30\n";
cout<<"health : "<<p.health+30;
p.health+=30;
p.hp--;
delay(3000);
}
else
{
system("cls");
cout<<"either buy some portions in shop or leave";
delay(3000);
}break;
case '2':{if(p.dp)
{
system("cls");
cout<<"your damage is increased by 5\n";
p.edam+=5;
p.dp--;
delay(3000);
}//end of if
else
{
system("cls");
cout<<"either buy some portions in shop or leave";
delay(3000);
}
}break;
case '3':i=1;break;
}//end of switch
}//end of for
}//end of function
and i am getting the following error
D:\All files\large C++ programs\drinkp().o drinkp().cpp.bss+0x0): multiple definition of `p'
D:\All files\large C++ programs\the tournament.o the tournament.cpp.bss+0x0): first defined here
D:\All files\large C++ programs\collect2.exe [Error] ld returned 1 exit status
26 D:\All files\large C++ programs\Makefile.win recipe for target 'TDT.exe' failed
i need help!!!