22 lines
813 B
C++
22 lines
813 B
C++
#ifndef CREATURELIB_RESOLVETARGET_HPP
|
|
#define CREATURELIB_RESOLVETARGET_HPP
|
|
#include "../../Library/Attacks/AttackTarget.hpp"
|
|
#include "../Models/Battle.hpp"
|
|
#include "../Models/Creature.hpp"
|
|
#include "../Models/CreatureIndex.hpp"
|
|
|
|
namespace CreatureLib::Battling {
|
|
class TargetResolver {
|
|
typedef ArbUt::List<ArbUt::OptionalBorrowedPtr<Creature>> TargetList;
|
|
|
|
public:
|
|
static TargetList ResolveTargets(const CreatureIndex& index, CreatureLib::Library::AttackTarget target,
|
|
const ArbUt::BorrowedPtr<Battle>& battle);
|
|
|
|
static bool IsValidTarget(const CreatureIndex& index, CreatureLib::Library::AttackTarget target,
|
|
const ArbUt::BorrowedPtr<Creature>& user);
|
|
};
|
|
}
|
|
|
|
#endif // CREATURELIB_RESOLVETARGET_HPP
|