* Added few newest API Hookchains
* Added hookchain for PM_CheckWaterJump
* Added hookchain for PM_Jump
* Added hookchain for PM_Duck
* Added hookchain for PM_UnDuck
* Added hookchain for ClearMultiDamage
* Added hookchain for AddMultiDamage
* Added hookchain for ApplyMultiDamage
* Added hookchain for CSGameRules::TeamFull
* Added hookchain for CSGameRules::TeamStacked
* Added hookchain for CSGameRules::PlayerGotWeapon
* Added hookchain for CBotManager::OnEvent
* Added hookchain for CBasePlayer::EntSelectSpawnPoint
* Added hookchain for CBasePlayerWeapon::KickBack
* Added hookchain for CBasePlayerWeapon::SendWeaponAnim
* Added new PM_* Hookchains
* Added PM_WaterJump
* Added PM_PlayStepSound
* Added PM_AirAccelerate
* Added CBasePlayer::CheckTimeBasedDamage
* Added CBasePlayerWeapon::ItemPostFrame
* Added BuyItem and CSGameRules::Think
* AddAmmoNameToAmmoRegistry refactory
* Bump minor version in an API bump up to 23
Fix forcing 1-person view for players when `mp_fadetoblack = 2`;
Fix player blackout on server entry when `mp_fadetoblack = 2`;
Fix observer not being blinded when `mp_fadetoblack = 2`;
Fix fadetoblack message timings using new CVar `mp_dying_time`.
fix#501fix#506
Co-authored-by: s1lentq <s1lentsk@yandex.ru>
* Unexpected behavior with mp_forcerespawn leading to a possible exploit
Basically there is an exploit (or bug?) where depending on mp_forcerespawn if his value is higher to 0 and lower than 1, when you respawn you have a brief window to change your team, if you succesfully manage to change your team between the mp_forcerespawn value and WITHOUT closing the change appearance menu, you won't die due to "m_fNextSuicideTime", that will trigger the change team but without actually changing your skin model, you will keep the enemy one but the team change will success.
Thanks https://github.com/metita for helping me with this
Co-Authored-By: metita <33007491+metita@users.noreply.github.com>
* Revert "Unexpected behavior with mp_forcerespawn leading to a possible exploit"
This reverts commit 73d1c16706.
* fix: nullify `m_fNextSuicideTime` before call `ClientKill()`
* ClientKill: refactoring
* add forgotten if-statement
* remove macros
Co-authored-by: metita <33007491+metita@users.noreply.github.com>
Co-authored-by: Sergey Shorokhov <wopox1337@ya.ru>
Refactoring
Some small fixes and improves
Reworked mp_forcerespawn and hookchain InternalCommand
Fixed fail compilation in VisualStudio
Bump minor version in gradle.properties
Update README.md
Fix: Kicked idle the client's by timeout when mp_roundtime is 0.
Fix: Don't update team score when the round ending by time and game has not started.
Update README.md
Added cvar's mp_fragsleft, mp_fraglimit, showtriggers (also handling mp_timeleft)
Removed client cmd's (like cd, kill) - they are in the black list of cl_filterstuffcmd.
Refactoring