[Quest API] Add GetCloseMobList() and CalculateDistance() overload to Perl/Lua (#3455)

* [Quest API] Add GetCloseMobList() and CalculateDistance() overload to Perl/Lua

# Perl
- Add `$entity_list->GetCloseMobList(mob)`.
- Add `$entity_list->GetCloseMobList(mob, distance)`.
- Add `$mob->CalculateDistance(mob)`.
- Add `$mob->GetCloseMobList()`.
- Add `$mob->GetCloseMobList(distance)`.

# Lua
- Add `eq.get_entity_list():GetCloseMobList(mob)`.
- Add `eq.get_entity_list():GetCloseMobList(mob, distance)`.
- Add `mob:CalculateDistance(mob)`.
- Add `mob:GetCloseMobList()`.
- Add `mob:GetCloseMobList(distance)`.

* Ignore Self

* Update lua_entity_list.cpp

* Cleanup
This commit is contained in:
Alex King
2023-07-02 10:55:27 -04:00
committed by GitHub
parent 6a80bcecc7
commit 728ce0c519
9 changed files with 270 additions and 3 deletions
+13 -1
View File
@@ -592,7 +592,19 @@ void NPC::NextGuardPosition() {
}
float Mob::CalculateDistance(float x, float y, float z) {
return (float)sqrtf(((m_Position.x - x)*(m_Position.x - x)) + ((m_Position.y - y)*(m_Position.y - y)) + ((m_Position.z - z)*(m_Position.z - z)));
return sqrtf(
((m_Position.x - x) * (m_Position.x - x)) +
((m_Position.y - y) * (m_Position.y - y)) +
((m_Position.z - z) * (m_Position.z - z))
);
}
float Mob::CalculateDistance(Mob* mob) {
return sqrtf(
((m_Position.x - mob->GetX()) * (m_Position.x - mob->GetX())) +
((m_Position.y - mob->GetX()) * (m_Position.y - mob->GetY())) +
((m_Position.z - mob->GetX()) * (m_Position.z - mob->GetZ()))
);
}
void Mob::WalkTo(float x, float y, float z)