mirror of
https://github.com/CookiePLMonster/SilentPatch.git
synced 2024-12-29 15:23:02 +05:00
Stop BF Injection/Bandito/Hotknife rotating engine components when engine is off
This commit is contained in:
parent
6006e253b1
commit
1da99647b5
3 changed files with 12 additions and 1 deletions
|
@ -3438,6 +3438,11 @@ void Patch_SA_10()
|
|||
InjectHook(0x6C7E7A, &CAutomobile::PreRender_Stub);
|
||||
InjectHook(0x6CEAEC, &CAutomobile::PreRender_Stub);
|
||||
InjectHook(0x6CFADC, &CAutomobile::PreRender_Stub);
|
||||
|
||||
|
||||
// Stop BF Injection/Bandito/Hotknife rotating engine components when engine is off
|
||||
Patch<const void*>(0x6AC2BE + 2, &CAutomobile::ms_engineCompSpeed);
|
||||
Patch<const void*>(0x6ACB91 + 2, &CAutomobile::ms_engineCompSpeed);
|
||||
}
|
||||
|
||||
void Patch_SA_11()
|
||||
|
|
|
@ -9,6 +9,8 @@
|
|||
|
||||
std::vector<int32_t> vecRotorExceptions;
|
||||
|
||||
float CAutomobile::ms_engineCompSpeed;
|
||||
|
||||
static bool ShouldIgnoreRotor( int32_t id )
|
||||
{
|
||||
return std::find( vecRotorExceptions.begin(), vecRotorExceptions.end(), id ) != vecRotorExceptions.end();
|
||||
|
@ -278,6 +280,9 @@ void CPlane::Fix_SilentPatch()
|
|||
|
||||
void CAutomobile::PreRender()
|
||||
{
|
||||
// For rotating engine components
|
||||
ms_engineCompSpeed = m_nVehicleFlags.bEngineOn ? CTimer::m_fTimeStep : 0.0f;
|
||||
|
||||
(this->*(orgPreRender))();
|
||||
|
||||
if ( FLAUtils::GetExtendedID( &m_nModelIndex ) == 603 )
|
||||
|
|
|
@ -174,6 +174,7 @@ public:
|
|||
void ProcessSweeper();
|
||||
|
||||
static void (CAutomobile::*orgPreRender)();
|
||||
static float ms_engineCompSpeed;
|
||||
};
|
||||
|
||||
class NOVMT CHeli : public CAutomobile
|
||||
|
|
Loading…
Reference in a new issue