#ifndef NPCS_HPP_INCLUDED #define NPCS_HPP_INCLUDED #include "../../Core/Classes/NPC.hpp" #include "../../Core/Types/Tile.hpp" #include "../../Core/Types/Convex.hpp" #include #include #include #include /** @addtogroup Models * @{ */ class NPCs { public: static std::vector GetAll(); static std::vector GetAll(const Tile& Tile); static std::vector GetAll(std::int32_t ID); static std::vector GetAll(const std::string& Name); static std::vector GetAll(const std::vector& IDs); static std::vector GetAll(const std::vector& Names); static std::vector GetAll(const std::function& Filter); static Internal::NPC Get(); static Internal::NPC Get(const Tile& Tile); static Internal::NPC Get(std::int32_t ID); static Internal::NPC Get(const std::string& Name); static Internal::NPC Get(const std::vector& IDs); static Internal::NPC Get(const std::vector& Names); static Internal::NPC Get(const std::function& Filter); static Tile GetTileOf(const Internal::NPC& NPC); static Convex GetConvexOf(const Internal::NPC& NPC); }; /** @} */ #endif // NPCS_HPP_INCLUDED