diff --git a/src/world/Util/ActorFilter.cpp b/src/world/Util/ActorFilter.cpp new file mode 100644 index 00000000..ec7fee56 --- /dev/null +++ b/src/world/Util/ActorFilter.cpp @@ -0,0 +1,20 @@ +#include "ActorFilter.h" +#include "Actor/Actor.h" +#include "Util/Util.h" +#include "Util/UtilMath.h" + + +Sapphire::World::Util::ActorFilterInRange::ActorFilterInRange( Common::FFXIVARR_POSITION3 startPos, + float range ) : + m_startPos( startPos ), + m_range( range ) +{ +} + +bool Sapphire::World::Util::ActorFilterInRange::conditionApplies( const Entity::Actor& actor ) +{ + return Sapphire::Util::distance( m_startPos.x, m_startPos.y, m_startPos.z, + actor.getPos().x, actor.getPos().y, actor.getPos().z ) <= m_range; +} + +///////////////////////////////////////////////////////////////////////////////////////////////////////