#ifndef NPCS_HPP_INCLUDED #define NPCS_HPP_INCLUDED #include "../../Game/Interactable/NPC.hpp" #include #include #include #include /** @addtogroup Models * @{ */ class NPCs { 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::NPC Get(const Tile& T); static Interactable::NPC Get(std::int32_t ID, std::int32_t Distance = -1); static Interactable::NPC Get(const std::string& Name, std::int32_t Distance = -1); static Interactable::NPC Get(const std::vector& IDs, std::int32_t Distance = -1); static Interactable::NPC Get(const std::vector& Names, std::int32_t Distance = -1); static Interactable::NPC Get(const std::function& Filter, std::int32_t Distance = -1); }; /** @} */ #endif // NPCS_HPP_INCLUDED