From d2700d292897f0641c60cc123fed010384e2452f Mon Sep 17 00:00:00 2001 From: "Zed A. Shaw" Date: Thu, 13 Feb 2025 13:15:20 -0500 Subject: [PATCH] You now have blood on your screen when below half health. --- assets/blood_splatter-256.png | Bin 0 -> 83896 bytes assets/config.json | 5 +-- assets/enemies.json | 6 ++-- assets/items.json | 2 +- components.cpp | 2 +- components.hpp | 1 + constants.hpp | 1 + gui.cpp | 61 +++++++++++++++++++++++++++++++++- gui.hpp | 2 ++ status_ui.cpp | 17 +++++++--- status_ui.hpp | 4 +++ systems.cpp | 2 +- 12 files changed, 90 insertions(+), 13 deletions(-) create mode 100644 assets/blood_splatter-256.png diff --git a/assets/blood_splatter-256.png b/assets/blood_splatter-256.png new file mode 100644 index 0000000000000000000000000000000000000000..d80a65f41e73b92122fa5f29020b57cb6c591304 GIT binary patch literal 83896 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 literal 0 HcmV?d00001 diff --git a/assets/config.json b/assets/config.json index 0127a77..d86ab30 100644 --- a/assets/config.json +++ b/assets/config.json @@ -16,7 +16,8 @@ "rope_vines_up": "assets/rope_vines_up-256.png", "tripwire_trap": "assets/tripwire_trap-256.png", "cinqueda": "assets/cinqueda_1-256.png", - "left_gui": "assets/left_gui.png" + "left_gui": "assets/left_gui.png", + "blood_splatter": "assets/blood_splatter-256.png" }, "enemy": { "HEARING_DISTANCE": 20 @@ -24,7 +25,7 @@ "player": { }, "worldgen": { - "enemy_probability": 20, + "enemy_probability": 80, "empty_room_probability": 10, "device_probability": 30 } diff --git a/assets/enemies.json b/assets/enemies.json index f900bd8..19f79a1 100644 --- a/assets/enemies.json +++ b/assets/enemies.json @@ -6,7 +6,7 @@ "foreground": [255, 200, 125], "background": [30, 20, 75] }, - {"_type": "Combat", "hp": 200, "damage": 15, "dead": false}, + {"_type": "Combat", "hp": 200, "max_hp": 200, "damage": 15, "dead": false}, {"_type": "Motion", "dx": 0, "dy": 0, "random": false}, {"_type": "LightSource", "strength": 60, "radius": 1.8}, {"_type": "EnemyConfig", "hearing_distance": 5}, @@ -19,7 +19,7 @@ "foreground": [131, 213, 238], "background": [30, 20, 75] }, - {"_type": "Combat", "hp": 20, "damage": 1, "dead": false}, + {"_type": "Combat", "hp": 20, "max_hp": 20, "damage": 1, "dead": false}, {"_type": "Motion", "dx": 0, "dy": 0, "random": false}, {"_type": "LightSource", "strength": 40, "radius": 1.2}, {"_type": "EnemyConfig", "hearing_distance": 5}, @@ -32,7 +32,7 @@ "foreground": [205, 164, 246], "background": [30, 20, 75] }, - {"_type": "Combat", "hp": 50, "damage": 10, "dead": false}, + {"_type": "Combat", "hp": 50, "max_hp": 20, "damage": 50, "dead": false}, {"_type": "Motion", "dx": 0, "dy": 0, "random": false}, {"_type": "EnemyConfig", "hearing_distance": 10}, {"_type": "Sprite", "name": "evil_eye"} diff --git a/assets/items.json b/assets/items.json index 9116efc..c7cb5f1 100644 --- a/assets/items.json +++ b/assets/items.json @@ -65,7 +65,7 @@ "foreground": [255, 205, 189], "background": [255, 205, 189] }, - {"_type": "Curative", "hp": 20}, + {"_type": "Curative", "hp": 200}, {"_type": "Sprite", "name": "healing_potion_small"} ] } diff --git a/components.cpp b/components.cpp index a390365..e41a78b 100644 --- a/components.cpp +++ b/components.cpp @@ -8,7 +8,7 @@ namespace components { ENROLL_COMPONENT(Curative, hp); ENROLL_COMPONENT(EnemyConfig, hearing_distance); ENROLL_COMPONENT(Motion, dx, dy, random); - ENROLL_COMPONENT(Combat, hp, damage, dead); + ENROLL_COMPONENT(Combat, hp, max_hp, damage, dead); ENROLL_COMPONENT(LightSource, strength, radius); ENROLL_COMPONENT(Device, config, events); ENROLL_COMPONENT(Sprite, name); diff --git a/components.hpp b/components.hpp index af1ec91..ffd349d 100644 --- a/components.hpp +++ b/components.hpp @@ -58,6 +58,7 @@ namespace components { struct Combat { int hp; + int max_hp; int damage; /* NOTE: This is used to _mark_ entities as dead, to detect ones that have just died. Don't make attack automatically set it.*/ diff --git a/constants.hpp b/constants.hpp index c6725b6..8d5b995 100644 --- a/constants.hpp +++ b/constants.hpp @@ -13,6 +13,7 @@ constexpr const int RAY_VIEW_Y=0; constexpr const bool VSYNC=false; constexpr const int FRAME_LIMIT=60; constexpr const int NUM_SPRITES=1; +constexpr const int MAX_LOG_MESSAGES=20; #ifdef NDEBUG constexpr const bool DEBUG_BUILD=false; diff --git a/gui.cpp b/gui.cpp index 6cd434c..ba184ca 100644 --- a/gui.cpp +++ b/gui.cpp @@ -6,6 +6,7 @@ #include "components.hpp" #include #include "systems.hpp" +#include "events.hpp" namespace gui { @@ -50,6 +51,7 @@ namespace gui { $rayview.position_camera($player.x + 0.5, $player.y + 0.5); $status_view.create_render(); + $status_view.log("Welcome to the game!"); $renderer.init_terminal(); $map_view.create_render(); @@ -143,6 +145,7 @@ namespace gui { state(State::MAPPING); break; case ATTACK: + $status_view.log("You attack!"); $rotation = -30.0f; state(State::ATTACKING); break; @@ -215,7 +218,10 @@ namespace gui { auto& debug = $level.world->get_the(); debug.FPS = !debug.FPS; debug.PATHS = !debug.PATHS; - } break; + auto player = $level.world->get_the(); + auto& player_combat = $level.world->get(player.entity); + player_combat.hp = player_combat.max_hp; + } break; default: break; // ignored } @@ -253,6 +259,18 @@ namespace gui { $window.draw($text); } + void FSM::draw_blood() { + auto player = $level.world->get_the(); + auto player_combat = $level.world->get(player.entity); + + if(float(player_combat.hp) / float(player_combat.max_hp) < 0.5) { + auto blood = $textures.sprite_textures.at("blood_splatter").sprite; + blood->setPosition({RAY_VIEW_X,0}); + blood->setScale({3.0, 3.0}); + $window.draw(*blood); + } + } + void FSM::draw_gui() { sf::RectangleShape rect({SCREEN_WIDTH - RAY_VIEW_WIDTH, SCREEN_HEIGHT}); rect.setPosition({0,0}); @@ -290,6 +308,7 @@ namespace gui { $stats.sample(1/elapsed.count()); draw_gui(); + draw_blood(); draw_weapon(); } @@ -314,9 +333,49 @@ namespace gui { System::motion($level); System::lighting($level); System::death($level); + handle_world_events(); } bool FSM::active() { return !in_state(State::END); } + + void FSM::handle_world_events() { + using eGUI = Events::GUI; + auto& world = *$level.world; + + while(world.has_event()) { + auto [evt, entity, data] = world.recv(); + + switch(evt) { + case eGUI::COMBAT: { + auto &damage = std::any_cast(data); + auto enemy_combat = world.get(entity); + + if(damage.enemy_did > 0) { + $status_view.log(fmt::format("Enemy HIT YOU for {} damage!", damage.enemy_did)); + $status_view.log(fmt::format("-- Enemy has {} HP left.", enemy_combat.hp)); + } else { + $status_view.log("Enemy MISSED YOU."); + } + + if(damage.player_did > 0) { + $status_view.log(fmt::format("You HIT enemy for {} damage!", damage.player_did)); + } else { + $status_view.log("You MISSED the enemy."); + } + } + break; + case eGUI::LOOT: { + // auto &item = std::any_cast(data); + // $status_view.log(fmt::format("You picked up a {}.", + // std::string(item.data["name"]))); + $status_view.log("You picked up an item."); + } + break; + default: + $status_view.log(fmt::format("INVALID EVENT! {},{}", evt, entity)); + } + } + } } diff --git a/gui.hpp b/gui.hpp index 13a5026..58d0ade 100644 --- a/gui.hpp +++ b/gui.hpp @@ -74,10 +74,12 @@ namespace gui { void draw_weapon(); void draw_stats(); void draw_gui(); + void draw_blood(); void render(); void mouse(); void generate_map(); bool active(); void run_systems(); + void handle_world_events(); }; } diff --git a/status_ui.cpp b/status_ui.cpp index 0c17daf..5d4cd60 100644 --- a/status_ui.cpp +++ b/status_ui.cpp @@ -25,10 +25,7 @@ namespace gui { const auto& player_combat = $level.world->get(player.entity); const auto& combat = $level.world->get(player.entity); - std::vector log_list; - log_list.push_back(text("Log messages here.")); - - auto log_box = vbox(log_list) | yflex_grow; + auto log_box = vbox($log_list) | yflex_grow | border; return hbox({ hflow( @@ -45,4 +42,16 @@ namespace gui { set_renderer(status_rend); } + + void StatusUI::log(std::string msg) { + $messages.push_front(msg); + if($messages.size() > MAX_LOG_MESSAGES) { + $messages.pop_back(); + } + + $log_list.clear(); + for(auto msg : $messages) { + $log_list.push_back(text(msg)); + } + } } diff --git a/status_ui.hpp b/status_ui.hpp index 1763db9..698893b 100644 --- a/status_ui.hpp +++ b/status_ui.hpp @@ -2,13 +2,17 @@ #include "panel.hpp" #include "levelmanager.hpp" #include "constants.hpp" +#include namespace gui { class StatusUI : public Panel { public: + std::vector $log_list; + std::deque $messages; GameLevel $level; StatusUI(GameLevel level); void create_render(); void update_level(GameLevel &level) { $level = level; } + void log(std::string msg); }; } diff --git a/systems.cpp b/systems.cpp index a16e20d..d4280e2 100644 --- a/systems.cpp +++ b/systems.cpp @@ -180,7 +180,7 @@ void System::collision(GameLevel &level) { if(world.has(entity)) { auto& cure = world.get(entity); - player_combat.hp += cure.hp; + player_combat.hp = std::min(player_combat.hp + cure.hp, player_combat.max_hp); world.remove(entity); }