diff --git a/src/world/Actor/Chara.cpp b/src/world/Actor/Chara.cpp index 144d8a66..dc09ae69 100644 --- a/src/world/Actor/Chara.cpp +++ b/src/world/Actor/Chara.cpp @@ -60,10 +60,10 @@ std::string Sapphire::Entity::Chara::getName() const return std::string( m_name ); } -bool Sapphire::Entity::Chara::isFacing( Entity::CharaPtr target ) +bool Sapphire::Entity::Chara::isFacing( Entity::CharaPtr target, float arcDegree ) { auto angleBetween = Util::RelativeAngle( getRot(), getPos().x, getPos().y, target->getPos().x, target->getPos().y ); - return angleBetween >= ( -( 180.0f / 2 ) && angleBetween <= ( 180.0f / 2 ) ); + return angleBetween >= ( -( arcDegree / 2 ) && angleBetween <= ( arcDegree / 2 ) ); } /*! \return current stance of the actors */ diff --git a/src/world/Actor/Chara.h b/src/world/Actor/Chara.h index 605222bc..4354b6b8 100644 --- a/src/world/Actor/Chara.h +++ b/src/world/Actor/Chara.h @@ -160,7 +160,7 @@ namespace Sapphire::Entity std::string getName() const; - bool isFacing( Entity::CharaPtr target ); + bool isFacing( Entity::CharaPtr target, float arcDegree = 100 ); bool face( const Common::FFXIVARR_POSITION3& p );