summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/core/World.cpp18
1 files changed, 10 insertions, 8 deletions
diff --git a/src/core/World.cpp b/src/core/World.cpp
index 358e1823..c9e3c11f 100644
--- a/src/core/World.cpp
+++ b/src/core/World.cpp
@@ -753,14 +753,16 @@ CWorld::FindObjectsOfTypeInRangeSectorList(uint32 modelId, CPtrList &list, const
CEntity *pEntity = (CEntity *)pNode->item;
if(pEntity->m_scanCode != GetCurrentScanCode()) {
pEntity->m_scanCode = GetCurrentScanCode();
- float fMagnitude = 0.0f;
- if(bCheck2DOnly)
- fMagnitude = (position - pEntity->GetPosition()).MagnitudeSqr2D();
- else
- fMagnitude = (position - pEntity->GetPosition()).MagnitudeSqr();
- if(fMagnitude < radius * radius && *nEntitiesFound < maxEntitiesToFind) {
- if(aEntities) aEntities[*nEntitiesFound] = pEntity;
- ++*nEntitiesFound;
+ if(modelId == pEntity->m_modelIndex) {
+ float fMagnitude = 0.0f;
+ if(bCheck2DOnly)
+ fMagnitude = (position - pEntity->GetPosition()).MagnitudeSqr2D();
+ else
+ fMagnitude = (position - pEntity->GetPosition()).MagnitudeSqr();
+ if(fMagnitude < radius * radius && *nEntitiesFound < maxEntitiesToFind) {
+ if(aEntities) aEntities[*nEntitiesFound] = pEntity;
+ ++*nEntitiesFound;
+ }
}
}
}