#ifndef GROUNDITEMS_HPP_INCLUDED #define GROUNDITEMS_HPP_INCLUDED #include "../../Game/Interactable/GroundItem.hpp" #include #include #include #include /** @addtogroup Models * @{ */ class GroundItems { public: static std::vector GetAllWithin(std::int32_t Distance); static std::vector GetAll(); static std::vector GetAll(const Tile& T); static std::vector GetAll(std::int32_t ID, std::int32_t Distance = -1); static std::vector GetAll(const std::string& Name, std::int32_t Distance = -1); static std::vector GetAll(const std::vector& IDs, std::int32_t Distance = -1); static std::vector GetAll(const std::vector& Names, std::int32_t Distance = -1); static std::vector GetAll(const std::function& Filter, std::int32_t Distance = -1); static Interactable::GroundItem Get(const Tile& T); static Interactable::GroundItem Get(std::int32_t ID, std::int32_t Distance = -1); static Interactable::GroundItem Get(const std::string& Name, std::int32_t Distance = -1); static Interactable::GroundItem Get(const std::vector& IDs, std::int32_t Distance = -1); static Interactable::GroundItem Get(const std::vector& Names, std::int32_t Distance = -1); static Interactable::GroundItem Get(const std::function& Filter, std::int32_t Distance = -1); }; /** @} */ #endif // GROUNDITEMS_HPP_INCLUDED