Boss fight now has combat stats and damage so I can now have a boss fight.

This commit is contained in:
Zed A. Shaw 2025-11-22 00:50:47 -05:00
parent 8ee3e8736f
commit 63a17d7efa
7 changed files with 58 additions and 9 deletions

View file

@ -9,11 +9,18 @@ namespace components {
struct Animation;
}
// needed to break an include cycle
namespace GameDB {
struct Level;
}
namespace boss {
using std::shared_ptr;
struct UI {
shared_ptr<DinkyECS::World> $world = nullptr;
DinkyECS::Entity $boss_id = DinkyECS::NONE;
DinkyECS::Entity $player_id = DinkyECS::NONE;
gui::CombatUI $combat_ui;
scene::Engine $arena;
guecs::UI $actions;
@ -21,7 +28,7 @@ namespace boss {
sf::Sprite $view_sprite;
cinematic::Camera $camera;
UI(components::AnimatedScene &scene, DinkyECS::Entity boss_id);
UI(shared_ptr<DinkyECS::World> world, DinkyECS::Entity boss_id, DinkyECS::Entity player_id);
void init();
void render(sf::RenderWindow& window);
@ -29,6 +36,7 @@ namespace boss {
void status(const std::wstring& msg);
void move_actor(const std::string& actor, const std::string& cell_name);
void animate_actor(const std::string& actor);
void update_stats();
void play_animations();
void zoom(const std::string &cell);
};