diff options
author | aap <aap@papnet.eu> | 2019-06-18 09:50:26 +0200 |
---|---|---|
committer | aap <aap@papnet.eu> | 2019-06-18 09:50:26 +0200 |
commit | 3b64bd1b4a5008b14b54edb257d4e8a5a8277c26 (patch) | |
tree | ca1ba1aef3b1c654f586d43b12dc27ea41c513b8 /src/control | |
parent | fixed anim bug (diff) | |
download | re3-3b64bd1b4a5008b14b54edb257d4e8a5a8277c26.tar re3-3b64bd1b4a5008b14b54edb257d4e8a5a8277c26.tar.gz re3-3b64bd1b4a5008b14b54edb257d4e8a5a8277c26.tar.bz2 re3-3b64bd1b4a5008b14b54edb257d4e8a5a8277c26.tar.lz re3-3b64bd1b4a5008b14b54edb257d4e8a5a8277c26.tar.xz re3-3b64bd1b4a5008b14b54edb257d4e8a5a8277c26.tar.zst re3-3b64bd1b4a5008b14b54edb257d4e8a5a8277c26.zip |
Diffstat (limited to '')
-rw-r--r-- | src/control/ObjectData.cpp | 5 | ||||
-rw-r--r-- | src/control/ObjectData.h | 7 | ||||
-rw-r--r-- | src/control/PathFind.cpp | 6 | ||||
-rw-r--r-- | src/control/PathFind.h | 5 |
4 files changed, 23 insertions, 0 deletions
diff --git a/src/control/ObjectData.cpp b/src/control/ObjectData.cpp new file mode 100644 index 00000000..28c34658 --- /dev/null +++ b/src/control/ObjectData.cpp @@ -0,0 +1,5 @@ +#include "common.h" +#include "patcher.h" +#include "ObjectData.h" + +WRAPPER void CObjectData::Initialise(const char *filename) { EAXJMP(0x4BC0E0); } diff --git a/src/control/ObjectData.h b/src/control/ObjectData.h new file mode 100644 index 00000000..7df1c845 --- /dev/null +++ b/src/control/ObjectData.h @@ -0,0 +1,7 @@ +#pragma once + +class CObjectData +{ +public: + static void Initialise(const char *filename); +}; diff --git a/src/control/PathFind.cpp b/src/control/PathFind.cpp index 8cfc17e7..c3af2e30 100644 --- a/src/control/PathFind.cpp +++ b/src/control/PathFind.cpp @@ -77,6 +77,12 @@ CPathFind::StoreNodeInfoCar(int16 id, int16 node, int8 type, int8 next, int16 x, } void +CPathFind::RegisterMapObject(CTreadable *mapObject) +{ + m_mapObjects[m_numMapObjects++] = mapObject; +} + +void CPathFind::PreparePathData(void) { int i, j, k; diff --git a/src/control/PathFind.h b/src/control/PathFind.h index ed3c7e9f..83b89953 100644 --- a/src/control/PathFind.h +++ b/src/control/PathFind.h @@ -67,6 +67,8 @@ struct CPathInfoForObject int8 numRightLanes; uint8 crossing : 1; }; +extern CPathInfoForObject *&InfoForTileCars; +extern CPathInfoForObject *&InfoForTilePeds; struct CTempNode { @@ -125,6 +127,9 @@ public: void CalcNodeCoors(int16 x, int16 y, int16 z, int32 id, CVector *out); void StoreNodeInfoPed(int16 id, int16 node, int8 type, int8 next, int16 x, int16 y, int16 z, int16 width, bool crossing); void StoreNodeInfoCar(int16 id, int16 node, int8 type, int8 next, int16 x, int16 y, int16 z, int16 width, int8 numLeft, int8 numRight); + void RegisterMapObject(CTreadable *mapObject); + + bool IsPathObject(int id) { return id < PATHNODESIZE && (InfoForTileCars[id*12].type != 0 || InfoForTilePeds[id*12].type != 0); } }; static_assert(sizeof(CPathFind) == 0x4c8f4, "CPathFind: error"); |