summaryrefslogtreecommitdiffstats
path: root/src/core
diff options
context:
space:
mode:
authorNikolay Korolev <nickvnuk@gmail.com>2020-05-06 00:11:06 +0200
committerNikolay Korolev <nickvnuk@gmail.com>2020-05-06 00:11:06 +0200
commit0b104a59fe91ce7bf6d1e0fb131eff509aea9307 (patch)
tree26c7c2714b495b37df8759596127d68ce4a4e6fa /src/core
parentcolstore support in script (diff)
downloadre3-0b104a59fe91ce7bf6d1e0fb131eff509aea9307.tar
re3-0b104a59fe91ce7bf6d1e0fb131eff509aea9307.tar.gz
re3-0b104a59fe91ce7bf6d1e0fb131eff509aea9307.tar.bz2
re3-0b104a59fe91ce7bf6d1e0fb131eff509aea9307.tar.lz
re3-0b104a59fe91ce7bf6d1e0fb131eff509aea9307.tar.xz
re3-0b104a59fe91ce7bf6d1e0fb131eff509aea9307.tar.zst
re3-0b104a59fe91ce7bf6d1e0fb131eff509aea9307.zip
Diffstat (limited to 'src/core')
-rw-r--r--src/core/ColStore.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/core/ColStore.cpp b/src/core/ColStore.cpp
index 0715ae6e..feaf08c7 100644
--- a/src/core/ColStore.cpp
+++ b/src/core/ColStore.cpp
@@ -9,6 +9,7 @@
#include "Timer.h"
#include "Camera.h"
#include "Frontend.h"
+#include "Physical.h"
#include "ColStore.h"
CPool<ColDef,ColDef> *CColStore::ms_pColPool;
@@ -174,7 +175,13 @@ CColStore::LoadCollision(const CVector2D &pos)
CGeneral::faststrcmp(GetColName(i), "yacht") == 0){
wantThisOne = true;
}else{
- // TODO: check mission cleanup list
+ for (int j = 0; j < MAX_CLEANUP; j++) {
+ CPhysical* pEntity = CTheScripts::MissionCleanup.DoesThisEntityWaitForCollision(j);
+ if (pEntity /* !pEntity->bDontLoadCollision && !pEntity->bIsFrozen */) {
+ if (GetBoundingBox(i).IsPointInside(pEntity->GetPosition(), -80.0f))
+ wantThisOne = true;
+ }
+ }
}
if(wantThisOne)
@@ -221,7 +228,7 @@ CColStore::HasCollisionLoaded(const CVector2D &pos)
int i;
for(i = 1; i < COLSTORESIZE; i++)
- if(GetSlot(i) && GetBoundingBox(i).IsPointInside(pos, -110.0f) &&
+ if(GetSlot(i) && GetBoundingBox(i).IsPointInside(pos, -115.0f) &&
!GetSlot(i)->isLoaded)
return false;
return true;