Upload files to "/"
This commit is contained in:
commit
d10a0688ec
1 changed files with 118 additions and 0 deletions
118
work.cpp
Normal file
118
work.cpp
Normal file
|
|
@ -0,0 +1,118 @@
|
|||
#include <iostream>
|
||||
#include <ostream>
|
||||
#include <string>
|
||||
#include <cstdlib>
|
||||
#include <ctime>
|
||||
|
||||
|
||||
using namespace std;
|
||||
|
||||
class Vorojuqmob{
|
||||
|
||||
private:
|
||||
|
||||
string name; //ім'я істоти
|
||||
int hp; // здоровя істоти
|
||||
int id; //поки не потрібне
|
||||
static int counter; //для id
|
||||
|
||||
public:
|
||||
Vorojuqmob(string n, int h){
|
||||
|
||||
name = n;
|
||||
hp = h;
|
||||
counter++;
|
||||
id=counter;
|
||||
|
||||
}
|
||||
|
||||
int v_hp(){ return hp;} //вивід хп
|
||||
|
||||
string v_name(){return name;} // вивід ім'я
|
||||
|
||||
Vorojuqmob(){}
|
||||
|
||||
void haracterusuka(string n, int h){ //альтернативний спосіб ведення даних використовується лише при потребі тестування чи інше.
|
||||
name = n;
|
||||
hp = h;
|
||||
counter++;
|
||||
id=counter;
|
||||
}
|
||||
|
||||
void inform_mob() {
|
||||
cout<<". name: "<<name<<". hp: "<< hp<<endl;}
|
||||
|
||||
void inform_mob_roz() { //розширений вівід інформації
|
||||
cout<<"id :"<<id<<". name: "<<name<<". hp: "<< hp<<endl;}
|
||||
|
||||
~Vorojuqmob(){}; // закриття пам'яті
|
||||
};
|
||||
|
||||
int Vorojuqmob :: counter = 0; //оголошення лічильнику для id
|
||||
|
||||
int main() {
|
||||
|
||||
|
||||
srand((unsigned)time(0)); // генерація випадкових чисел
|
||||
|
||||
|
||||
Vorojuqmob mob[]={ //масив який місти ворогів
|
||||
Vorojuqmob("Зомбі", 100),
|
||||
Vorojuqmob("Вампір", 200),
|
||||
Vorojuqmob("скелет",50),
|
||||
Vorojuqmob("Єті", 300)};
|
||||
|
||||
|
||||
int size =sizeof(mob) / sizeof(mob[0]); // кількість елементів масиву
|
||||
|
||||
|
||||
|
||||
int hp_pl =100; // здоров'я гравця
|
||||
cout<<"Вітаю у вас у світі фентазі ваша задача пройти всі данжі"<<endl;
|
||||
cout<<"\nперший днаж підземеля" << endl;
|
||||
|
||||
int head = 100; //урон по істоті в глову
|
||||
int body = 50; //урон по істоті в тіло
|
||||
|
||||
string dia; //оголошеня для вибру дії гравця
|
||||
|
||||
|
||||
|
||||
while (hp_pl>0){
|
||||
int r = rand()%size;
|
||||
int hp_mob =mob[r].v_hp();
|
||||
string a;
|
||||
cout<<"вибери що робитии"<<endl;
|
||||
cin>> a;
|
||||
if(a=="1"){cout<<"\n Твоє здоровя: "<<hp_pl<<endl;
|
||||
|
||||
cout<<"\n твій суперник " << mob[r].v_name() << " кількість здоровя " <<mob[r].v_hp()<<"\n" <<endl;
|
||||
|
||||
while (hp_mob>0&&hp_pl>0) {
|
||||
|
||||
cout<<"1. в тіло -50\n 2. в глову -100\n виберіть куда бити:";
|
||||
|
||||
cin>>dia;
|
||||
|
||||
cout<<"\n"<<endl;
|
||||
if(dia == "1"){int sh=rand()%100; if(sh>50) {hp_mob-=body; cout<<"\n Ви завдали удару втіло\n"<<endl; if(hp_mob>0){cout<<"Здоров'я монстра "<<hp_mob<<endl;}}else{hp_pl -=20; cout<<"\n Ви промахнулись \n вас вкусили: -20HP\n\n Вас залишилось "<<hp_pl<<" здоров'я"<<endl;}}
|
||||
|
||||
else if (dia=="2"){int sh=rand()%100; if(sh>65) {hp_mob-=head; cout<<"\nВи завдали сильного удару в голов\n"<<endl; if(hp_mob>0){cout<<" Здоров'я монстра "<<hp_mob<<endl;}}else{hp_pl -=40; cout<<"\n Критичний промах, вас монстер сильно вдарив: -40HP\n"<<endl;
|
||||
cout<<"\nВас залишилось "<<hp_pl<<" здоров'я\n"<<endl; } }
|
||||
|
||||
else{cout<<"вели не правельне занчення"<<endl;} //вивід про те що не правльне занчення вів користувач
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
if(hp_pl <=0){cout<<"\nви загинули"<<endl; return 0;}
|
||||
|
||||
if(hp_mob <=0){cout<<"\n ви бвили "<< mob[r].v_name()<<"\n"<<endl;}
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
}}else if(a=="2"){return 0;}else{cout<<"вибери дію"<<endl;}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue