#ifndef EQUIPMENT_HPP_INCLUDED #define EQUIPMENT_HPP_INCLUDED #include #include #include /** @addtogroup GameTabs * @{ */ class Equipment { public: typedef enum SLOTS { HEAD, CAPE, NECK, WEAPON, BODY, SHIELD, LEGS, HANDS, FEET, RING, AMMO } SLOTS; static bool IsOpen(); static bool Open(); static bool IsEmpty(); static std::vector GetItemIDs(); static std::vector GetItemNames(); static std::vector GetItemAmounts(); static std::int32_t GetItemID(SLOTS Slot); static std::string GetItemName(SLOTS Slot); static std::int32_t GetItemAmount(SLOTS Slot); static std::int32_t GetItemAmount(std::int32_t ID); static std::int32_t GetItemAmount(const std::string& Name); static SLOTS GetSlotOf(std::int32_t ID); static SLOTS GetSlotOf(const std::string& Name); static bool Contains(std::int32_t ID); static bool Contains(const std::string& Name); static bool Contains(const std::vector& IDs); static bool Contains(const std::vector& Names); static bool ContainsAny(const std::vector& IDs); static bool ContainsAny(const std::vector& Names); static bool ContainsOnly(std::int32_t ID); static bool ContainsOnly(const std::string& Name); static bool ContainsOnly(const std::vector& IDs); static bool ContainsOnly(const std::vector& Names); static bool InteractItemBySlot(SLOTS Slot, const std::string& Option); static bool InteractItem(std::int32_t ID, const std::string& Option); static bool InteractItem(const std::string& Name, const std::string& Option); static bool UnequipItem(SLOTS Slot); static bool UnequipItem(std::int32_t ID); static bool UnequipItem(const std::string& Name); }; /** @} */ #endif // EQUIPMENT_HPP_INCLUDED