#ifndef STAR_BLUEPRINT_ITEM_HPP #define STAR_BLUEPRINT_ITEM_HPP #include "StarItem.hpp" #include "StarWorld.hpp" #include "StarSwingableItem.hpp" namespace Star { STAR_CLASS(BlueprintItem); class BlueprintItem : public Item, public SwingableItem { public: BlueprintItem(Json const& config, String const& directory, Json const& data); virtual ItemPtr clone() const override; virtual List drawables() const override; virtual void fireTriggered() override; virtual List iconDrawables() const override; virtual List dropDrawables() const override; private: ItemDescriptor m_recipe; Drawable m_recipeIconUnderlay; List m_inHandDrawable; }; } #endif