@@ -98,7 +98,7 @@ CConVar<bool> g_cvarInfectShake("zr_infect_shake", FCVAR_NONE, "Whether to shake
9898CConVar<float > g_cvarInfectShakeAmplitude (" zr_infect_shake_amp" , FCVAR_NONE , " Amplitude of shaking effect" , 15 .0f , true , 0 .0f , true , 16 .0f );
9999CConVar<float > g_cvarInfectShakeFrequency (" zr_infect_shake_frequency" , FCVAR_NONE , " Frequency of shaking effect" , 2 .0f , true , 0 .0f , false , 0 .0f );
100100CConVar<float > g_cvarInfectShakeDuration (" zr_infect_shake_duration" , FCVAR_NONE , " Duration of shaking effect" , 5 .0f , true , 0 .0f , false , 0 .0f );
101- CConVar<bool > g_cvarEnableDamageCash ( " zr_damagecash_enable " , FCVAR_NONE , " Enable cash damage on zombie or not " , false );
101+ CConVar<float > g_cvarDamageCashScale ( " zr_damage_cash_scale " , FCVAR_NONE , " Multiplier cash per money when damage to zombie (e.g. 0.0) disabled this. " , 0 . 0f , true , 0 . 0f , false , 100 . 0f );
102102
103103// meant only for offline config validation and can easily cause issues when used on live server
104104#ifdef _DEBUG
@@ -1635,12 +1635,13 @@ void ZR_OnPlayerTakeDamage(CCSPlayerPawn* pVictimPawn, const CTakeDamageInfo* pI
16351635 if (pKillerPawn->m_iTeamNum () == CS_TEAM_CT && pVictimPawn->m_iTeamNum () == CS_TEAM_T )
16361636 {
16371637 auto flClassKnockback = 1 .0f ;
1638+ float flCashScale = g_cvarDamageCashScale.Get ();
16381639
1639- if (g_cvarEnableDamageCash. Get () )
1640+ if (flCashScale > 0 )
16401641 {
16411642 const auto pKillerController = pKillerPawn->GetOriginalController ();
16421643 int money = pKillerController->m_pInGameMoneyServices ->m_iAccount ;
1643- pKillerController->m_pInGameMoneyServices ->m_iAccount = money + damage;
1644+ pKillerController->m_pInGameMoneyServices ->m_iAccount = money + ( damage * flCashScale) ;
16441645 }
16451646
16461647 if (pVictimController->GetZEPlayer ())
0 commit comments