AlpacaLibrary/Include/Game/Models/Projectiles.hpp

30 lines
1.3 KiB
C++
Raw Normal View History

2018-08-19 15:52:11 +00:00
#ifndef PROJECTILES_HPP_INCLUDED
#define PROJECTILES_HPP_INCLUDED
#include "../../Game/Interactable/Projectile.hpp"
#include <functional>
#include <cstdint>
#include <vector>
#include <string>
class Projectiles
{
public:
static std::vector<Interactable::Projectile> GetAllWithin(std::int32_t Distance);
static std::vector<Interactable::Projectile> GetAll();
static std::vector<Interactable::Projectile> GetAll(const Tile& T);
static std::vector<Interactable::Projectile> GetAll(std::int32_t ID, std::int32_t Distance = -1);
static std::vector<Interactable::Projectile> GetAll(const std::vector<std::int32_t>& IDs, std::int32_t Distance = -1);
static std::vector<Interactable::Projectile> GetAll(const std::function<bool (Interactable::Projectile&)>& Filter, std::int32_t Distance = -1);
static Interactable::Projectile Get(const Tile& T);
static Interactable::Projectile Get(std::int32_t ID, std::int32_t Distance = -1);
static Interactable::Projectile Get(const std::vector<std::int32_t>& IDs, std::int32_t Distance = -1);
static Interactable::Projectile Get(const std::function<bool (Interactable::Projectile&)>& Filter, std::int32_t Distance = -1);
};
#endif // PROJECTILES_HPP_INCLUDED