diff --git a/include/Cubed/ui/inventory_ui.hpp b/include/Cubed/ui/inventory_ui.hpp index b8ed945..b475594 100644 --- a/include/Cubed/ui/inventory_ui.hpp +++ b/include/Cubed/ui/inventory_ui.hpp @@ -1,5 +1,7 @@ #pragma once +#include "Cubed/ui/item_slot.hpp" +#include "Cubed/ui/label.hpp" #include "Cubed/ui/ui_manager.hpp" namespace Cubed { class WorldScene; @@ -9,8 +11,12 @@ public: void init() override; void on_re_enter(); + void update(float dt) override; private: WorldScene& m_scene; + std::vector m_slots; + Label* m_item_info = nullptr; + void update_item_info(); }; } // namespace Cubed \ No newline at end of file diff --git a/include/Cubed/ui/item_slot.hpp b/include/Cubed/ui/item_slot.hpp index 50b4138..ff06f8a 100644 --- a/include/Cubed/ui/item_slot.hpp +++ b/include/Cubed/ui/item_slot.hpp @@ -2,7 +2,6 @@ #include "Cubed/gameplay/block.hpp" #include "Cubed/ui/image.hpp" -#include "Cubed/ui/label.hpp" #include "Cubed/ui/widget.hpp" namespace Cubed { class TextureManager; @@ -17,16 +16,16 @@ public: ItemSlot& set_item(BlockType id, const Texture* texture); float width() const override; float height() const override; + bool handle_mouse_move_event(const MouseMoveEvent& e) override; + BlockType block() const; + bool hovered() const; private: static constexpr const char* DEFAULT_SLOT_PATH = "texture/ui/slot.png"; void on_render(Renderer& renderer) override; void on_update(float dt) override; - bool handle_mouse_move_event(const MouseMoveEvent& e) override; - bool handle_window_resize_event(const WindowResizeEvent& e) override; std::unique_ptr m_background; std::unique_ptr m_foreground; - std::unique_ptr