diff --git a/include/navparser.hpp b/include/navparser.hpp index d56045c2..8b96ab2a 100644 --- a/include/navparser.hpp +++ b/include/navparser.hpp @@ -38,8 +38,12 @@ class inactivityTracker bool vischeckConnection(std::pair &connection) { - Vector begin = areas.at(FindInVector(connection.first)).m_center; - Vector end = areas.at(FindInVector(connection.second)).m_center; + int id0 = FindInVector(connection.first); + int id1 = FindInVector(connection.second); + if (id0 == -1 || id1 == -1) + return false; + Vector begin = areas.at(id0).m_center; + Vector end = areas.at(id1).m_center; begin.z += 72; end.z += 72; bool result = IsVectorVisible(begin, end, false); diff --git a/src/navparser.cpp b/src/navparser.cpp index f9739f5f..ea4ec0e5 100644 --- a/src/navparser.cpp +++ b/src/navparser.cpp @@ -24,6 +24,7 @@ size_t FindInVector(size_t id) if (areas.at(i).m_id == id) return i; } + return -1; } void Init()