diff options
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/Stats.cpp | 6 | ||||
-rw-r--r-- | src/core/Stats.h | 2 | ||||
-rw-r--r-- | src/core/World.cpp | 2 | ||||
-rw-r--r-- | src/core/World.h | 2 |
4 files changed, 12 insertions, 0 deletions
diff --git a/src/core/Stats.cpp b/src/core/Stats.cpp index c1259f82..cd5bee06 100644 --- a/src/core/Stats.cpp +++ b/src/core/Stats.cpp @@ -32,8 +32,14 @@ int32 &CStats::MissionsGiven = *(int32*)0x9430E8; int32 &CStats::MissionsPassed = *(int32*)0x940768; char(&CStats::LastMissionPassedName)[8] = *(char(*)[8])*(uintptr*)0x70D828; int32 &CStats::TotalLegitimateKills = *(int32*)0x8F6004; +int32 &CStats::ElBurroTime = *(int32*)0x8E2A6C; void CStats::AnotherKillFrenzyPassed() { ++NumberKillFrenziesPassed; } + +void CStats::RegisterElBurroTime(int32 time) +{ + ElBurroTime = (ElBurroTime && ElBurroTime < time) ? ElBurroTime : time; +} diff --git a/src/core/Stats.h b/src/core/Stats.h index 3e7973ea..e1ef3749 100644 --- a/src/core/Stats.h +++ b/src/core/Stats.h @@ -34,9 +34,11 @@ public: static int32 &MissionsPassed; static char (&LastMissionPassedName)[8]; static int32 &TotalLegitimateKills; + static int32 &ElBurroTime; public: static void AnotherKillFrenzyPassed(); static void CheckPointReachedUnsuccessfully() { KillsSinceLastCheckpoint = 0; }; static void CheckPointReachedSuccessfully() { TotalLegitimateKills += KillsSinceLastCheckpoint; KillsSinceLastCheckpoint = 0; }; + static void RegisterElBurroTime(int32); };
\ No newline at end of file diff --git a/src/core/World.cpp b/src/core/World.cpp index c914b647..70e526e8 100644 --- a/src/core/World.cpp +++ b/src/core/World.cpp @@ -48,6 +48,8 @@ WRAPPER void CWorld::FindObjectsIntersectingCube(const CVector &, const CVector WRAPPER void CWorld::FindObjectsIntersectingAngledCollisionBox(const CColBox &, const CMatrix &, const CVector &, float, float, float, float, int16*, int16, CEntity **, bool, bool, bool, bool, bool) { EAXJMP(0x4B3280); } WRAPPER void CWorld::FindObjectsOfTypeInRange(uint32, CVector&, float, bool, short*, short, CEntity**, bool, bool, bool, bool, bool) { EAXJMP(0x4B2600); } WRAPPER void CWorld::FindObjectsOfTypeInRangeSectorList(uint32, CPtrList&, CVector&, float, bool, short*, short, CEntity**) { EAXJMP(0x4B2960); } +WRAPPER void CWorld::FindMissionEntitiesIntersectingCube(const CVector&, const CVector&, int16*, int16, CEntity**, bool, bool, bool) { EAXJMP(0x4B3680); } +WRAPPER void CWorld::ClearCarsFromArea(float, float, float, float, float, float) { EAXJMP(0x4B50E0); } void CWorld::Initialise() diff --git a/src/core/World.h b/src/core/World.h index 61a44ea0..68af156c 100644 --- a/src/core/World.h +++ b/src/core/World.h @@ -114,6 +114,8 @@ public: static void FindObjectsKindaColliding(const CVector &, float, bool, int16*, int16, CEntity **, bool, bool, bool, bool, bool); static void FindObjectsIntersectingCube(const CVector &, const CVector &, int16*, int16, CEntity **, bool, bool, bool, bool, bool); static void FindObjectsIntersectingAngledCollisionBox(const CColBox &, const CMatrix &, const CVector &, float, float, float, float, int16*, int16, CEntity **, bool, bool, bool, bool, bool); + static void FindMissionEntitiesIntersectingCube(const CVector&, const CVector&, int16*, int16, CEntity**, bool, bool, bool); + static void ClearCarsFromArea(float, float, float, float, float, float); static float GetSectorX(float f) { return ((f - WORLD_MIN_X)/SECTOR_SIZE_X); } static float GetSectorY(float f) { return ((f - WORLD_MIN_Y)/SECTOR_SIZE_Y); } |