diff --git a/cfg/cs2fixes/cs2fixes.cfg b/cfg/cs2fixes/cs2fixes.cfg index 63d9eaf49..f9151392b 100644 --- a/cfg/cs2fixes/cs2fixes.cfg +++ b/cfg/cs2fixes/cs2fixes.cfg @@ -118,6 +118,7 @@ zr_infect_shake 1 // Whether to shake a player's view on infect zr_infect_shake_amp 15.0 // Amplitude of shaking effect zr_infect_shake_frequency 2.0 // Frequency of shaking effect zr_infect_shake_duration 5.0 // Duration of shaking effect +zr_damage_cash_scale 0.0 // Multiplier on cash given when damaging zombies (0.0 = disabled) // Leader settings cs2f_leader_enable 0 // Whether to enable Leader features diff --git a/src/zombiereborn.cpp b/src/zombiereborn.cpp index f43615399..c11f695bb 100644 --- a/src/zombiereborn.cpp +++ b/src/zombiereborn.cpp @@ -100,6 +100,7 @@ CConVar g_cvarInfectShake("zr_infect_shake", FCVAR_NONE, "Whether to shake CConVar g_cvarInfectShakeAmplitude("zr_infect_shake_amp", FCVAR_NONE, "Amplitude of shaking effect", 15.0f, true, 0.0f, true, 16.0f); CConVar g_cvarInfectShakeFrequency("zr_infect_shake_frequency", FCVAR_NONE, "Frequency of shaking effect", 2.0f, true, 0.0f, false, 0.0f); CConVar g_cvarInfectShakeDuration("zr_infect_shake_duration", FCVAR_NONE, "Duration of shaking effect", 5.0f, true, 0.0f, false, 0.0f); +CConVar g_cvarDamageCashScale("zr_damage_cash_scale", FCVAR_NONE, "Multiplier on cash given when damaging zombies (0.0 = disabled)", 0.0f, true, 0.0f, false, 100.0f); // meant only for offline config validation and can easily cause issues when used on live server #ifdef _DEBUG @@ -1650,6 +1651,14 @@ void ZR_OnPlayerTakeDamage(CCSPlayerPawn* pVictimPawn, const CTakeDamageInfo* pI if (pKillerPawn->m_iTeamNum() == CS_TEAM_CT && pVictimPawn->m_iTeamNum() == CS_TEAM_T) { auto flClassKnockback = 1.0f; + float flCashScale = g_cvarDamageCashScale.Get(); + + if(flCashScale > 0) + { + const auto pKillerController = pKillerPawn->GetOriginalController(); + int money = pKillerController->m_pInGameMoneyServices->m_iAccount; + pKillerController->m_pInGameMoneyServices->m_iAccount = money + (damage * flCashScale); + } if (pVictimController->GetZEPlayer()) {