Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <math.h>
- using namespace std;
- /* run this program using the console pauser or add your own getch, system("pause") or input loop */
- class Postac{
- public:
- int lvl;
- float obrazenia;
- float hp;
- public:
- Postac(){
- }
- int SprawdzanieLVL(int expcal){
- int lvlexpcal=expcal;
- int lvlexp;
- int n=0;
- do{
- lvlexp=5*pow(2,n);
- n++;
- lvl=n;
- }while(lvlexpcal>=lvlexp);
- return (lvl);
- }
- void Obrazenia(float szatak){
- obrazenia=szatak*lvl;
- }
- int HP(){
- hp=lvl*36;
- return (hp);
- }
- class Wojownik;
- };
- class Wojownik :public Postac{
- string imie;
- float szatak;
- int expcal;
- public:
- Wojownik(string nimie, float nszatak, int nexpcal):
- imie(nimie),szatak(nszatak),expcal(nexpcal)
- {
- }
- int EXPchange(int exp,int zdobyte){
- expcal=exp+zdobyte;
- return(expcal);
- }
- void Wypisz(){
- cout<<"Imie: "<<imie<<"\nIlosc zgromadzonego doswiadczenia: "<<expcal<<"\nLvl: "<<lvl<<"\nSzybkosc ataku: "<<szatak<<"\nObrazenia: "<<obrazenia<<"\nHP: "<<hp;
- cout<<"\n*"<<endl;
- }
- int atak(float hp3){
- hp3=-obrazenia;
- return (hp3);
- }
- ~Wojownik(){
- cout<<"\nWywolano destruktor";
- };
- };
- void walka(float hp, float obrazenia1, float hp2, float obrazenia2){
- cout<<"\nHP 1. postaci: "<<hp<<"\tHP 2. postaci: "<<hp2;
- do{
- hp=hp-obrazenia2;
- hp2=hp2-obrazenia1;
- cout<<"\nHP 1. postaci: "<<hp<<"\tHP 2. postaci: "<<hp2;
- }while(hp>0 && hp2>0);
- if(hp<0)
- cout<<"\nWygrala 2. postac.";
- else
- cout<<"\nWygrala 1. postac";
- }
- int main(int argc, char** argv) {
- int zdobyte;
- int exp=12;
- int exp2=21;
- float hp, hp2;
- float obrazenia, obrazenia2;
- Wojownik Eryk("Eryk",2.5,exp);
- Eryk.SprawdzanieLVL(exp);
- Eryk.HP();
- Eryk.Obrazenia(2.5);
- Eryk.Wypisz();
- Wojownik Edmund("Edmund",3.4,exp2);
- Edmund.SprawdzanieLVL(exp2);
- Edmund.HP();
- Edmund.Obrazenia(3.4);
- Edmund.Wypisz();
- hp=Eryk.HP();
- hp2=Edmund.HP();
- obrazenia=Eryk.obrazenia;
- obrazenia2=Edmund.obrazenia;
- walka(hp, obrazenia, hp2, obrazenia2);
- cout<<"\nIlosc zdobytego expa: ";
- cin>>zdobyte;
- exp=Eryk.EXPchange(exp,zdobyte);
- Eryk.SprawdzanieLVL(exp);
- Eryk.Obrazenia(2.5);
- Eryk.Wypisz();
- Eryk.~Wojownik();
- Edmund.~Wojownik();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement