osb/source/game/items/StarBlueprintItem.hpp
2023-06-20 14:33:09 +10:00

33 lines
712 B
C++

#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<Drawable> drawables() const override;
virtual void fireTriggered() override;
virtual List<Drawable> iconDrawables() const override;
virtual List<Drawable> dropDrawables() const override;
private:
ItemDescriptor m_recipe;
Drawable m_recipeIconUnderlay;
List<Drawable> m_inHandDrawable;
};
}
#endif