Remove Map::FindClosestLoS()

Map::LineIntersectsZone() already accomplished this use case
This commit is contained in:
Michael Cook (mackal) 2018-03-08 18:03:15 -05:00
parent ef487112df
commit 5c87b8152d
3 changed files with 1 additions and 10 deletions

View File

@ -268,14 +268,6 @@ bool Map::CheckLoS(glm::vec3 myloc, glm::vec3 oloc) const {
return !imp->rm->raycast((const RmReal*)&myloc, (const RmReal*)&oloc, nullptr, nullptr, nullptr);
}
// returns true if outloc should be used
bool Map::FindClosestLoS(glm::vec3 myloc, glm::vec3 oloc, glm::vec3 &outloc) const {
if(!imp)
return false;
return imp->rm->raycast((const RmReal*)&myloc, (const RmReal*)&oloc, (RmReal *)&outloc, nullptr, nullptr);
}
// returns true if a collision happens
bool Map::DoCollisionCheck(glm::vec3 myloc, glm::vec3 oloc, glm::vec3 &outnorm, float &distance) const {
if(!imp)

View File

@ -42,7 +42,6 @@ public:
bool LineIntersectsZone(glm::vec3 start, glm::vec3 end, float step, glm::vec3 *result) const;
bool LineIntersectsZoneNoZLeaps(glm::vec3 start, glm::vec3 end, float step_mag, glm::vec3 *result) const;
bool CheckLoS(glm::vec3 myloc, glm::vec3 oloc) const;
bool FindClosestLoS(glm::vec3 myloc, glm::vec3 oloc, glm::vec3 &outloc) const;
bool DoCollisionCheck(glm::vec3 myloc, glm::vec3 oloc, glm::vec3 &outnorm, float &distance) const;
#ifdef USE_MAP_MMFS

View File

@ -1012,7 +1012,7 @@ void Mob::TryMoveAlong(float distance, float angle, bool send)
if (new_z != BEST_Z_INVALID)
new_pos.z = new_z;
if (zone->zonemap->FindClosestLoS(GetPosition(), new_pos, tmp_pos))
if (zone->zonemap->LineIntersectsZone(GetPosition(), new_pos, 0.0f, &tmp_pos))
new_pos = tmp_pos;
}