#include <iostream>
#include <string>
#include <Windows.h>
#include <cstring>
#include <cmath>
#include <time.h>
using namespace std;
class cop;
class bot {
private:
short heal = 500;
public:
void Damage(cop& Cop) {
Cop.armor -= 20;
}
void restoration_of_life() {
this->heal += 100;
}
friend class cop;
};
class cop {
private:
short heal = 100;
short armor = 100;
public:
void Damage(bot& Bot) {
Bot.heal -= 50;
}
void restoration_of_life() {
this->heal += 10;
}
friend class bot;
};
int main() {
setlocale(LC_ALL, "RU");
SetConsoleCP(1251);
cout << "Игра началась!\n Определяем чей ход первый..." << endl;
srand(time(NULL));
int ran = 1 + rand() % 10;
if (ran <= 5) {
cout << "Первым ходит Cop!" << endl;
}
else if (ran > 5) {
cout << "Первым ходит Bot!" << endl;
}
return 0;
}
class cop;
class bot {
private:
short heal = 500;
public: // объявляем методы класса
void Damage(cop& Cop);
void restoration_of_life();
friend class cop;
};
class cop {
private:
short heal = 100;
short armor = 100;
public: // объявляем методы класса
void Damage(bot& Bot);
void restoration_of_life();
friend class bot;
};
// Тут мы вынесли определения методов за пределы классов
void bot::Damage(cop& Cop) {
Cop.armor -= 20;
}
void bot::restoration_of_life() {
this->heal += 100;
}
void cop::Damage(bot& Bot) {
Bot.heal -= 50;
}
void cop::restoration_of_life() {
this->heal += 10;
}