-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathwtfs.cpp
More file actions
130 lines (114 loc) · 3.88 KB
/
Copy pathwtfs.cpp
File metadata and controls
130 lines (114 loc) · 3.88 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
#include <iostream>
#include <cstdlib>
#include <string>
#include <ctime>
using namespace std;
int main() {
system("chcp 65001>nul");
srand(time(0));
int max_moves = 10;
int wood = 0;
int metal = 0;
int sh_level = 1;
int sh_lv_max = 3;
int movesLeft = max_moves;
int choice;
int hp = 100;
int hp_m = 100;
cout<<"=== Добро пожаловать в мир 'Waiting for the Storm' ==="<< endl;
cout<<"Сможете ли вы пережить шторм или нет - все зависит от вас!"<< endl;
cout<<"-------------------------------------------------------"<<endl;
cout<<"Игра началась!"<< endl;
do {
if (hp <= 0) {
cout<<"Ты погиб от ран, к сожалению"<<endl;
break;
}
// отображение состояния
cout << "Ходов осталось: " << movesLeft << endl;
cout << "Дерево: " << wood << " | Металл: " << metal << endl;
cout << "Уровень убежища: " << sh_level << "/" << sh_lv_max << endl;
cout << "Здоровье: " << hp << endl;
// меню
cout << "\n1 - Отправиться в густой лес - там можно добыть дерево" << endl;
cout << "2 - Отправиться в металлическую долину - там можно собрать обломки металла" << endl;
cout << "3 - Укрепить убежище" << endl;
cout << "4 - Закончить игру (сдаться)" << endl;
cout << "5 - Отдохнуть (восстанавливает ХП)" << endl;
cout << "Выберите действие: ";
cin >> choice;
switch (choice) {
case 1:
// собрать дерево
wood += rand() % 3 + 3;
movesLeft--;
if (rand() % 11 <= 4){
hp -= rand() % 4 + 3;
cout<<" Вы получили урон!"<< endl;
}
break;
case 2:
// собрать металл
metal += rand() % 2 + 2;
movesLeft--;
if (rand() % 11 <= 4){
hp -= rand() % 4 + 3;
cout<<" Вы получили урон!"<< endl;
}
break;
case 3: {
//Убежище
if (wood >= 2 && metal >= 1 && sh_level == 1) {
wood -= 2;
metal--;
sh_level++;
movesLeft--;
cout<<"Ваша база была улучшена до второго уровня! для третьего неободимо: 5 металла и 3 дерева. "<<endl;
}
else if (wood >= 3 && metal >= 5 && sh_level == 2) {
wood -= 3;
metal -= 5;
sh_level++;
movesLeft--;
cout<<"Ваша база была полностью улучшена!"<<endl;
}
else {
cout<<" Не хватает ресурсов либо база уже полностью улучшена."<< endl;
}
break;
}
case 4: {
cout << "Ты сдался... Шторм поглотил тебя." << endl;
break;
}
case 5: {
if (hp >= hp_m) {
cout<<"Ты уже полностью здоров. отдых не нужен."<<endl;
}
else {
int heal = rand() % 6 + 15;
hp += heal;
if (hp > hp_m) hp = hp_m;
movesLeft--;
cout << "Ты отдохнул и восстановил " << heal << " HP." << endl;
}
break;
}
default:
cout << "Неверный выбор. Попробуй снова." << endl;
}
} while (movesLeft > 0 && choice != 4);
// Шторм
if (movesLeft <= 0) {
cout<<"Шторм начался!"<<endl;
if (sh_level == sh_lv_max) {
cout<<"Вы смогли пережить шторм."<<endl;
}
else {
cout<<"К сожелению, ваша база не смогла спасти вас от катострофы"<<endl;
}
}
system("pause>nul");
return 0;
}
//код создан без ГМО (ИИ :D)