File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -370,6 +370,18 @@ void CASWPlayerAnimState::DoAnimationEvent( PlayerAnimEvent_t event )
370370 }
371371 else if ( event == PLAYERANIMEVENT_RELOAD_FAIL )
372372 {
373+ if ( m_bReloading == true && m_flReloadCycle < 1 .0f )
374+ {
375+ // readjust animation speed to match new attack delay
376+ const float fFailReloadMinDelay = 2 .0f ;
377+
378+ CASW_Marine *pOuter = CASW_Marine::AsMarine ( GetOuter () );
379+ CASW_Weapon *pWeapon = pOuter ? pOuter->GetActiveASWWeapon () : NULL ;
380+ const float fFailReloadTime = pWeapon ? pWeapon->GetReloadFailTime () : fFailReloadMinDelay ;
381+
382+ const float fRemainingCycle = 1 .0f - m_flReloadCycle;
383+ m_fReloadPlaybackRate = m_fReloadAnimTime * fRemainingCycle / fFailReloadTime ;
384+ }
373385 }
374386 else if ( event == PLAYERANIMEVENT_DROP_MAGAZINE_GIB )
375387 {
You can’t perform that action at this time.
0 commit comments