From e04c03b3812b050082fe57ee45cd33197ee991f0 Mon Sep 17 00:00:00 2001 From: "Zed A. Shaw" Date: Wed, 19 Feb 2025 08:33:18 -0500 Subject: [PATCH] Small error in how mouse events are processed. I need to do them _outside_ of the guecs::UI so that the event is checked once and then confirmed in all grids. Then created a tombstone device to be used as a dead enemy marker that will later allow looting. --- assets/config.json | 1 + assets/devices.json | 16 ++++++++++++++++ assets/enemies.json | 2 +- assets/grave_stone-256.png | Bin 0 -> 26187 bytes guecs.cpp | 21 +++++++++------------ guecs.hpp | 2 +- gui.cpp | 8 +++++--- systems.cpp | 4 ++++ 8 files changed, 37 insertions(+), 17 deletions(-) create mode 100644 assets/grave_stone-256.png diff --git a/assets/config.json b/assets/config.json index 0fdf7b4..54c6d59 100644 --- a/assets/config.json +++ b/assets/config.json @@ -10,6 +10,7 @@ "torch_horizontal_floor": "assets/torch_horizontal_floor-256.png", "evil_eye": "assets/evil_eye-sprites.png", "peasant_girl": "assets/undead_peasant-256.png", + "grave_stone": "assets/grave_stone-256.png", "floor": "assets/floor_tile_test-256.png", "ceiling": "assets/ceiling_test-256.png", "healing_potion_small": "assets/healing_potion_small-256.png", diff --git a/assets/devices.json b/assets/devices.json index 285edba..012ade7 100644 --- a/assets/devices.json +++ b/assets/devices.json @@ -49,5 +49,21 @@ "events": ["Events::GUI::TRAP"]}, {"_type": "Sprite", "name": "tripwire_trap"} ] + }, + "GRAVE_STONE": { + "id": "GRAVE_STONE", + "name": "Grave Stone", + "description": "Something died here. Was this your doing?", + "inventory_count": 0, + "components": [ + {"_type": "Tile", "display": "\u21ef", + "foreground": [32, 123, 164], + "background": [24, 205, 189] + }, + {"_type": "Device", + "config": {"test": true}, + "events": []}, + {"_type": "Sprite", "name": "grave_stone"} + ] } } diff --git a/assets/enemies.json b/assets/enemies.json index 56dc2ff..4fcc809 100644 --- a/assets/enemies.json +++ b/assets/enemies.json @@ -40,7 +40,7 @@ }, "RAT_GIANT": { "components": [ - {"_type": "Tile", "display": "\u08ea", + {"_type": "Tile", "display": "\u08ac", "foreground": [205, 164, 246], "background": [30, 20, 75] }, diff --git a/assets/grave_stone-256.png b/assets/grave_stone-256.png new file mode 100644 index 0000000000000000000000000000000000000000..4bd9d4bf80d987d54181c7603edffa49837a1424 GIT binary patch literal 26187 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 JPDHLkV1oG)Z%F_E literal 0 HcmV?d00001 diff --git a/guecs.cpp b/guecs.cpp index 7a1410e..575ac60 100644 --- a/guecs.cpp +++ b/guecs.cpp @@ -91,18 +91,15 @@ namespace guecs { }); } - void UI::mouse(sf::RenderWindow &window) { - if(sf::Mouse::isButtonPressed(sf::Mouse::Button::Left)) { - sf::Vector2f pos = window.mapPixelToCoords(sf::Mouse::getPosition(window)); - $world.query([&](auto ent, auto& cell, auto &clicked) { - if((pos.x >= cell.x && pos.x <= cell.x + cell.w) && - (pos.y >= cell.y && pos.y <= cell.y + cell.h)) - { - auto& cn = $world.get(ent); - clicked.action(ent, cn.name); - } - }); - } + void UI::mouse(float x, float y) { + $world.query([&](auto ent, auto& cell, auto &clicked) { + if((x >= cell.x && x <= cell.x + cell.w) && + (y >= cell.y && y <= cell.y + cell.h)) + { + auto& cn = $world.get(ent); + clicked.action(ent, cn.name); + } + }); } Clickable make_action(DinkyECS::World& target, Events::GUI event) { diff --git a/guecs.hpp b/guecs.hpp index 864a947..1e90a0c 100644 --- a/guecs.hpp +++ b/guecs.hpp @@ -131,7 +131,7 @@ namespace guecs { void init(TexturePack& textures); void render(sf::RenderWindow& window); - void mouse(sf::RenderWindow &window); + void mouse(float x, float y); }; Clickable make_action(DinkyECS::World& target, Events::GUI event); diff --git a/gui.cpp b/gui.cpp index 40be879..b0211af 100644 --- a/gui.cpp +++ b/gui.cpp @@ -352,9 +352,11 @@ namespace gui { } void FSM::mouse() { - // need to sort out how this will be easier with multiple UIs - $combat_view.$gui.mouse($window); - $status_view.$gui.mouse($window); + if(sf::Mouse::isButtonPressed(sf::Mouse::Button::Left)) { + sf::Vector2f pos = $window.mapPixelToCoords(sf::Mouse::getPosition($window)); + $combat_view.$gui.mouse(pos.x, pos.y); + $status_view.$gui.mouse(pos.x, pos.y); + } } void FSM::generate_map() { diff --git a/systems.cpp b/systems.cpp index adac189..7a586b5 100644 --- a/systems.cpp +++ b/systems.cpp @@ -125,6 +125,10 @@ void System::death(GameLevel &level) { world.send(Events::GUI::DEATH, ent, {}); } else { // remove their motion so they're dead + // CHANGE: this needs to remove the enemies that are + // dead and then replace them at that position with + // a gave_stone device. And then that makes it so you + // can loot their dead bodies. world.remove(ent); } }