diff options
author | Sergeanur <s.anureev@yandex.ua> | 2020-08-07 11:34:41 +0200 |
---|---|---|
committer | Sergeanur <s.anureev@yandex.ua> | 2020-08-07 11:34:41 +0200 |
commit | 7d8ffa9ebd32257d6aa59e27cd25a657a85613da (patch) | |
tree | 0eff46681a3524fd86a63bc8a0eb65b3c7409b5b /src/weapons/ShotInfo.cpp | |
parent | Merge pull request #670 from Fire-Head/miami (diff) | |
parent | Merge pull request #675 from erorcun/master (diff) | |
download | re3-7d8ffa9ebd32257d6aa59e27cd25a657a85613da.tar re3-7d8ffa9ebd32257d6aa59e27cd25a657a85613da.tar.gz re3-7d8ffa9ebd32257d6aa59e27cd25a657a85613da.tar.bz2 re3-7d8ffa9ebd32257d6aa59e27cd25a657a85613da.tar.lz re3-7d8ffa9ebd32257d6aa59e27cd25a657a85613da.tar.xz re3-7d8ffa9ebd32257d6aa59e27cd25a657a85613da.tar.zst re3-7d8ffa9ebd32257d6aa59e27cd25a657a85613da.zip |
Diffstat (limited to '')
-rw-r--r-- | src/weapons/ShotInfo.cpp | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/src/weapons/ShotInfo.cpp b/src/weapons/ShotInfo.cpp index 6fc6341d..a70f3f7b 100644 --- a/src/weapons/ShotInfo.cpp +++ b/src/weapons/ShotInfo.cpp @@ -13,6 +13,9 @@ CShotInfo gaShotInfo[NUMSHOTINFOS]; float CShotInfo::ms_afRandTable[20]; +#ifdef SQUEEZE_PERFORMANCE +uint32 shotInfoInUse; +#endif /* Used for flamethrower. I don't know why it's name is CShotInfo. @@ -41,6 +44,9 @@ CShotInfo::Initialise() nextVal += 0.005f; } debug("CShotInfo ready\n"); +#ifdef SQUEEZE_PERFORMANCE + shotInfoInUse = 0; +#endif } bool @@ -54,6 +60,10 @@ CShotInfo::AddShot(CEntity *sourceEntity, eWeaponType weapon, CVector startPos, if (slot == ARRAY_SIZE(gaShotInfo)) return false; +#ifdef SQUEEZE_PERFORMANCE + shotInfoInUse++; +#endif + gaShotInfo[slot].m_inUse = true; gaShotInfo[slot].m_weapon = weapon; gaShotInfo[slot].m_startPos = startPos; @@ -87,6 +97,10 @@ CShotInfo::Shutdown() void CShotInfo::Update() { +#ifdef SQUEEZE_PERFORMANCE + if (shotInfoInUse == 0) + return; +#endif for (int slot = 0; slot < ARRAY_SIZE(gaShotInfo); slot++) { CShotInfo &shot = gaShotInfo[slot]; if (shot.m_sourceEntity && shot.m_sourceEntity->IsPed() && !((CPed*)shot.m_sourceEntity)->IsPointerValid()) @@ -96,8 +110,12 @@ CShotInfo::Update() continue; CWeaponInfo *weaponInfo = CWeaponInfo::GetWeaponInfo(shot.m_weapon); - if (CTimer::GetTimeInMilliseconds() > shot.m_timeout) + if (CTimer::GetTimeInMilliseconds() > shot.m_timeout) { +#ifdef SQUEEZE_PERFORMANCE + shotInfoInUse--; +#endif shot.m_inUse = false; + } if (weaponInfo->m_bSlowsDown) shot.m_areaAffected *= pow(0.96, CTimer::GetTimeStep()); // FRAMERATE |