Quote:
Originally Posted by XiLuo
...
|
Quote:
Originally Posted by Psyk0tik
...
|
Thanks for trying to fix it guys.
The function "CTerrorPlayer::OnLadderMount" got inlined.
I did the patch to just jump to the OnDismount every time, I would hope it would be more resistant to breaking.
Code:
if ( *((_BYTE *)v5 + 370) == 9 ) Always just jump
{
if ( !v21 )
{
sub_1030A3C0("Player.Fall"); // CTerrorPlayer::OnLadderMount function inline
sub_10177560(v5);
sub_103120E0(0);
v22 = sub_100535D0(v5);
if ( (unsigned __int8)sub_1034FF60(v22) )
{
if ( sub_100464D0(v5) )
{
v23 = sub_100464D0(v5);
(*(void (__thiscall **)(int, _DWORD))(*(_DWORD *)v23 + 1060))(v23, 0);
}
}
}
}
else if ( v21 )to this function
{
CTerrorPlayer::OnLadderDismount(v5);
}
__________________