mirror of
https://github.com/s1lentq/ReGameDLL_CS.git
synced 2025-04-14 05:30:02 +03:00
Fix c4 defuse glitch (#383)
* [WIP] Fix c4 defuse glitch While you are defusing you can unpress E and a friend can continue to defuse for you
This commit is contained in:
parent
2defb8ad8e
commit
411a02843e
@ -1021,9 +1021,9 @@ void CGrenade::__API_HOOK(DefuseBombEnd)(CBasePlayer *pPlayer, bool bDefused)
|
|||||||
// if the defuse process has ended, kill the c4
|
// if the defuse process has ended, kill the c4
|
||||||
if (m_pBombDefuser->pev->deadflag == DEAD_NO)
|
if (m_pBombDefuser->pev->deadflag == DEAD_NO)
|
||||||
{
|
{
|
||||||
#ifdef REGAMEDLL_ADD
|
#ifdef REGAMEDLL_ADD
|
||||||
if (!old_bomb_defused_sound.value)
|
if (!old_bomb_defused_sound.value)
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
Broadcast("BOMBDEF");
|
Broadcast("BOMBDEF");
|
||||||
}
|
}
|
||||||
@ -1091,9 +1091,9 @@ void CGrenade::__API_HOOK(DefuseBombEnd)(CBasePlayer *pPlayer, bool bDefused)
|
|||||||
m_bStartDefuse = false;
|
m_bStartDefuse = false;
|
||||||
m_pBombDefuser = nullptr;
|
m_pBombDefuser = nullptr;
|
||||||
|
|
||||||
#ifdef REGAMEDLL_FIXES
|
#ifdef REGAMEDLL_FIXES
|
||||||
pPlayer->SetProgressBarTime(0);
|
pPlayer->SetProgressBarTime(0);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// tell the bots someone has aborted defusing
|
// tell the bots someone has aborted defusing
|
||||||
if (TheBots)
|
if (TheBots)
|
||||||
@ -1143,7 +1143,7 @@ void CGrenade::Use(CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useTy
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifdef REGAMEDLL_FIXES
|
#ifdef REGAMEDLL_FIXES
|
||||||
if((pPlayer->pev->flags & FL_ONGROUND) != FL_ONGROUND) // Defuse should start only on ground
|
if ((pPlayer->pev->flags & FL_ONGROUND) != FL_ONGROUND) // Defuse should start only on ground
|
||||||
{
|
{
|
||||||
ClientPrint(pPlayer->pev, HUD_PRINTCENTER, "#C4_Defuse_Must_Be_On_Ground");
|
ClientPrint(pPlayer->pev, HUD_PRINTCENTER, "#C4_Defuse_Must_Be_On_Ground");
|
||||||
return;
|
return;
|
||||||
@ -1152,7 +1152,12 @@ void CGrenade::Use(CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useTy
|
|||||||
|
|
||||||
if (m_bStartDefuse)
|
if (m_bStartDefuse)
|
||||||
{
|
{
|
||||||
m_fNextDefuse = gpGlobals->time + NEXT_DEFUSE_TIME;
|
#ifdef REGAMEDLL_FIXES
|
||||||
|
if (m_pBombDefuser == pPlayer)
|
||||||
|
#endif
|
||||||
|
{
|
||||||
|
m_fNextDefuse = gpGlobals->time + NEXT_DEFUSE_TIME;
|
||||||
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user