Simple Loot UI started.

This commit is contained in:
Zed A. Shaw 2025-05-14 00:51:53 -04:00
parent 8a3046e141
commit 8545b8cf1d
23 changed files with 139 additions and 29 deletions

46
gui/main_ui.hpp Normal file
View file

@ -0,0 +1,46 @@
#pragma once
#include "levelmanager.hpp"
#include <SFML/Graphics/RenderWindow.hpp>
#include <SFML/System/Clock.hpp>
#include "stats.hpp"
#include <guecs/ui.hpp>
#include "gui/overlay_ui.hpp"
#include "gui/debug_ui.hpp"
#include "raycaster.hpp"
#include "camera.hpp"
#include <optional>
namespace gui {
class MainUI {
public:
int $compass_dir = 0;
bool $needs_render = true;
sf::Clock $clock;
sf::RenderWindow& $window;
GameLevel $level;
OverlayUI $overlay_ui;
Raycaster $rayview;
CameraLOL $camera;
MainUI(sf::RenderWindow& window);
void mouse(int x, int y, bool hover);
void debug();
void render_debug();
void plan_rotate(int dir);
bool play_rotate();
std::optional<Point> play_move();
Point plan_move(int dir, bool strafe);
void abort_plan();
void update_level(GameLevel level);
void init();
void render();
void dirty();
void health_low();
void dead_entity(DinkyECS::Entity entity);
};
}