Two main GUI elements are placed for the left side status and the bottom combat UIs.
This commit is contained in:
parent
1790eec697
commit
be4d0d51de
4 changed files with 123 additions and 27 deletions
33
gui.hpp
33
gui.hpp
|
@ -9,6 +9,36 @@
|
|||
#include "map_view.hpp"
|
||||
|
||||
namespace gui {
|
||||
class StatusUI : public Panel {
|
||||
public:
|
||||
GameLevel $level;
|
||||
|
||||
StatusUI(GameLevel level) :
|
||||
Panel(43, 200, 29, 25, false),
|
||||
$level(level)
|
||||
{
|
||||
default_bg = sf::Color{30,30,30};
|
||||
}
|
||||
|
||||
void create_render();
|
||||
void update_level(GameLevel &level) { $level = level; }
|
||||
};
|
||||
|
||||
class CombatUI : public Panel {
|
||||
public:
|
||||
GameLevel $level;
|
||||
|
||||
CombatUI(GameLevel level) :
|
||||
Panel(RAY_VIEW_X, RAY_VIEW_HEIGHT, 89, 6, false),
|
||||
$level(level)
|
||||
{
|
||||
default_bg = sf::Color{30,30,30};
|
||||
}
|
||||
|
||||
void create_render();
|
||||
void update_level(GameLevel &level) { $level = level; }
|
||||
};
|
||||
|
||||
enum class State {
|
||||
START,
|
||||
MOVING,
|
||||
|
@ -45,6 +75,8 @@ namespace gui {
|
|||
SFMLRender $renderer;
|
||||
GameLevel $level;
|
||||
MapViewUI $map_view;
|
||||
CombatUI $combat_view;
|
||||
StatusUI $status_view;
|
||||
CameraLOL $camera;
|
||||
sf::Font $font;
|
||||
sf::Text $text;
|
||||
|
@ -67,6 +99,7 @@ namespace gui {
|
|||
void try_move(int dir, bool strafe);
|
||||
void keyboard();
|
||||
void draw_weapon();
|
||||
void draw_stats();
|
||||
void draw_gui();
|
||||
void render();
|
||||
void mouse();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue