Skip to content

Commit 248243c

Browse files
committed
Add easter eggs and item prerequisites
1 parent 4a66792 commit 248243c

File tree

5 files changed

+85
-3
lines changed

5 files changed

+85
-3
lines changed

CMakeLists.txt

+3
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,6 @@ add_executable(rogue
77
src/main.cpp src/state.h src/render.cpp src/render.h src/input.cpp src/input.h src/save.cpp src/save.h
88
src/generate.cpp src/generate.h
99
)
10+
11+
link_directories(C:\\Program Files \(x86\)\\Windows Kits\\10\\Lib\\10.0.18362.0\\um\\x64)
12+
target_link_libraries(rogue WinMM.Lib)

assets/amongus-drip.wav

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
version https://git-lfs.github.com/spec/v1
2+
oid sha256:d7b65548d908721ac7bb0829e7dcba4ad322cf586d26c56550bc92d06b116886
3+
size 694095422

src/main.cpp

+5-1
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,16 @@
11
#include <thread>
22
#include <vector>
33
#include <iostream>
4-
#include <Windows.h>
4+
#include <windows.h>
55
#include "state.h"
66
#include "save.h"
77
#include "render.h"
88
#include "input.h"
99
#include "generate.h"
1010

1111
int main() {
12+
PlaySound(TEXT(".\\assets\\amongus-drip.wav"), NULL, SND_FILENAME | SND_ASYNC);
13+
1214
SetConsoleOutputCP(65001);
1315

1416
while (true) {
@@ -47,4 +49,6 @@ int main() {
4749
std::cout << "Naciśnij Ctrl+C, aby zakończyć." << std::endl;
4850
std::cin.ignore(INT_MAX);
4951
clear();
52+
53+
PlaySound(NULL, NULL, SND_FILENAME | SND_ASYNC);
5054
}

src/render.cpp

+60-2
Original file line numberDiff line numberDiff line change
@@ -212,6 +212,64 @@ void render(State *state) {
212212
setCursorPosition(columns / 2 - 6, lines / 2);
213213
std::cout << "Ładowanie...";
214214

215+
// setColor(RED_ON_BLACK);
216+
// setCursorPosition(columns / 2 - 4, lines / 2 + 2);
217+
// std::cout << "AMOGUSA";
218+
// setCursorPosition(columns / 2 - 4, lines / 2 + 3);
219+
// std::cout << "MO GU";
220+
// setCursorPosition(columns / 2 - 4, lines / 2 + 4);
221+
// std::cout << "SAMOGUS";
222+
// setCursorPosition(columns / 2 - 4, lines / 2 + 5);
223+
// std::cout << "AMOGUSA";
224+
// setCursorPosition(columns / 2 - 4, lines / 2 + 6);
225+
// std::cout << "MO GU";
226+
// resetColor();
227+
228+
{
229+
setCursorPosition(columns / 2 - 15, lines / 2 + 2);
230+
std::cout << "⡯⡯⡾⠝⠘⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢊⠘⡮⣣⠪⠢⡑⡌ ㅤ";
231+
setCursorPosition(columns / 2 - 15, lines / 2 + 3);
232+
std::cout << "⠟⠝⠈⠀⠀⠀. ⠡⠀⠠⢈⠠⢐⢠⢂⢔⣐⢄⡂⢔⠀⡁⢉⠸⢨⢑⠕⡌ ㅤ ⠀";
233+
setCursorPosition(columns / 2 - 15, lines / 2 + 4);
234+
std::cout << "⠀ ⡀⠁⠀⠀⠀⡀⢂⠡⠈⡔⣕⢮⣳⢯⣿⣻⣟⣯⣯⢷⣫⣆⡂ ⢐⠑⡌";
235+
setCursorPosition(columns / 2 - 15, lines / 2 + 5);
236+
std::cout << "⢀⠠⠐⠈⠀⢀⢂⠢⡂⠕⡁⣝⢮⣳⢽⡽⣾⣻⣿⣯⡯⣟⣞⢾⢜⢆⠀⡀⠀⠪";
237+
setCursorPosition(columns / 2 - 15, lines / 2 + 6);
238+
std::cout << "⣬⠂⠀⠀⢀⢂⢪⠨⢂⠥⣺⡪⣗⢗⣽⢽⡯⣿⣽⣷⢿⡽⡾⡽⣝⢎⠀⠀⠀⢡";
239+
setCursorPosition(columns / 2 - 15, lines / 2 + 7);
240+
std::cout << "⣿⠀⠀⠀⢂⠢⢂⢥⢱⡹⣪⢞⡵⣻⡪⡯⡯⣟⡾⣿⣻⡽⣯⡻⣪⠧⠑⠀⠁⢐";
241+
setCursorPosition(columns / 2 - 15, lines / 2 + 8);
242+
std::cout << "⣿⠀⠀⠀⠢⢑⠠⠑⠕⡝⡎⡗⡝⡎⣞⢽⡹⣕⢯⢻⠹⡹⢚⠝⡷⡽⡨⠀⠀⢔";
243+
setCursorPosition(columns / 2 - 15, lines / 2 + 9);
244+
std::cout << "⣿⡯⠀⢈⠈⢄⠂⠂⠐⠀⠌⠠⢑⠱⡱⡱⡑⢔⠁⠀⡀⠐⠐⠐⡡⡹⣪⠀⠀⢘";
245+
setCursorPosition(columns / 2 - 15, lines / 2 + 10);
246+
std::cout << "⣿⣽⠀⡀⡊⠀⠐⠨⠈⡁⠂⢈⠠⡱⡽⣷⡑⠁⠠⠑⠀⢉⢇⣤⢘⣪⢽⠀⢌⢎";
247+
setCursorPosition(columns / 2 - 15, lines / 2 + 11);
248+
std::cout << "⣿⢾⠀⢌⠌⠀⡁⠢⠂⠐⡀⠀⢀⢳⢽⣽⡺⣨⢄⣑⢉⢃⢭⡲⣕⡭⣹⠠⢐⢗";
249+
setCursorPosition(columns / 2 - 15, lines / 2 + 12);
250+
std::cout << "⣿⡗⠀⠢⠡⡱⡸⣔⢵⢱⢸⠈⠀⡪⣳⣳⢹⢜⡵⣱⢱⡱⣳⡹⣵⣻⢔⢅⢬⡷";
251+
setCursorPosition(columns / 2 - 15, lines / 2 + 13);
252+
std::cout << "⣷⡇⡂⠡⡑⢕⢕⠕⡑⠡⢂⢊⢐⢕⡝⡮⡧⡳⣝⢴⡐⣁⠃⡫⡒⣕⢏⡮⣷⡟";
253+
setCursorPosition(columns / 2 - 15, lines / 2 + 14);
254+
std::cout << "⣷⣻⣅⠑⢌⠢⠁⢐⠠⠑⡐⠐⠌⡪⠮⡫⠪⡪⡪⣺⢸⠰⠡⠠⠐⢱⠨⡪⡪⡰";
255+
setCursorPosition(columns / 2 - 15, lines / 2 + 15);
256+
std::cout << "⣯⢷⣟⣇⡂⡂⡌⡀⠀⠁⡂⠅⠂⠀⡑⡄⢇⠇⢝⡨⡠⡁⢐⠠⢀⢪⡐⡜⡪⡊";
257+
setCursorPosition(columns / 2 - 15, lines / 2 + 16);
258+
std::cout << "⣿⢽⡾⢹⡄⠕⡅⢇⠂⠑⣴⡬⣬⣬⣆⢮⣦⣷⣵⣷⡗⢃⢮⠱⡸⢰⢱⢸⢨⢌";
259+
setCursorPosition(columns / 2 - 15, lines / 2 + 17);
260+
std::cout << "⣯⢯⣟⠸⣳⡅⠜⠔⡌⡐⠈⠻⠟⣿⢿⣿⣿⠿⡻⣃⠢⣱⡳⡱⡩⢢⠣⡃⠢⠁";
261+
setCursorPosition(columns / 2 - 15, lines / 2 + 18);
262+
std::cout << "⡯⣟⣞⡇⡿⣽⡪⡘⡰⠨⢐⢀⠢⢢⢄⢤⣰⠼⡾⢕⢕⡵⣝⠎⢌⢪⠪⡘⡌⠀";
263+
setCursorPosition(columns / 2 - 15, lines / 2 + 19);
264+
std::cout << "⡯⣳⠯⠚⢊⠡⡂⢂⠨⠊⠔⡑⠬⡸⣘⢬⢪⣪⡺⡼⣕⢯⢞⢕⢝⠎⢻⢼⣀⠀";
265+
setCursorPosition(columns / 2 - 15, lines / 2 + 20);
266+
std::cout << "⠁⡂⠔⡁⡢⠣⢀⠢⠀⠅⠱⡐⡱⡘⡔⡕⡕⣲⡹⣎⡮⡏⡑⢜⢼⡱⢩⣗⣯⣟";
267+
setCursorPosition(columns / 2 - 15, lines / 2 + 21);
268+
std::cout << "⢀⢂⢑⠀⡂⡃⠅⠊⢄⢑⠠⠑⢕⢕⢝⢮⢺⢕⢟⢮⢊⢢⢱⢄⠃⣇⣞⢞⣞⢾";
269+
setCursorPosition(columns / 2 - 15, lines / 2 + 22);
270+
std::cout << "⢀⠢⡑⡀⢂⢊⠠⠁⡂⡐⠀⠅⡈⠪⠪⠪⠣⠫⠑⡁⢔⠕⣜⣜⢦⡰⡎⡯⡾⡽";
271+
}
272+
215273
break;
216274
case Screen::PAUSE_MENU:
217275
setCursorPosition(columns / 2 - 5, lines / 2 - 3);
@@ -282,10 +340,10 @@ void render(State *state) {
282340
}
283341

284342
setCursorPosition(cEnd + 4, lStart + 1);
285-
std::cout << "Zdrowie: " << state->health << "/" << state->maxHealth << " ";
343+
std::cout << "Zdrowie: " << state->health << "/" << state->maxHealth << " ";
286344

287345
setCursorPosition(cEnd + 4, lStart + 2);
288-
std::cout << "Kondycja: " << state->stamina << "/" << state->maxStamina << " ";
346+
std::cout << "Kondycja: " << state->stamina << "/" << state->maxStamina << " ";
289347

290348
break;
291349
}

src/state.h

+14
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
#pragma once
22

33
#include <vector>
4+
#include <optional>
45

56
enum class Screen {
67
MAIN_MENU, SETTINGS, SETTINGS_DIFFICULTY_LEVEL, PLAY_DIFFICULTY_LEVEL, PLAY_LEVEL,
@@ -65,6 +66,15 @@ enum class ItemType {
6566
class Item {
6667
public:
6768
ItemType type = ItemType::SWORD;
69+
70+
int damage = 10;
71+
double sweep = 0.1;
72+
int range = 10;
73+
74+
double protection = 0.3;
75+
double criticalProtection = 0.1;
76+
77+
int durability = 10;
6878
};
6979

7080
class State {
@@ -99,4 +109,8 @@ class State {
99109
int maxHealth = 10;
100110
int stamina = 10;
101111
int maxStamina = 10;
112+
113+
std::optional<Item> sword;
114+
std::optional<Item> bow;
115+
std::optional<Item> armor;
102116
};

0 commit comments

Comments
 (0)