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