#ifndef ITEM_HPP #define ITEM_HPP #include class Actor; /* * TODO description */ class Item { public: Item() = delete; virtual ~Item() {} virtual bool use(Actor &actor) = 0; virtual bool use(Item &item) = 0; bool stackable() { return _maxAmount == 1; } protected: const unsigned _maxAmount; const unsigned _amount; // stackable std::string _name; }; #endif