mirror of
https://github.com/YGGverse/hlsdk-portable.git
synced 2025-01-23 21:24:27 +00:00
Revert "Revert "Merge 29c4d46ad0
""
This reverts commit 5dab1c1f1db1556a6648f3c66e1066888257ae51.
This commit is contained in:
parent
9dff875d32
commit
426a0e7ab3
@ -166,6 +166,7 @@ void CItem::Materialize( void )
|
||||
}
|
||||
|
||||
SetTouch( &CItem::ItemTouch );
|
||||
SetThink( NULL );
|
||||
}
|
||||
|
||||
#define SF_SUIT_SHORTLOGON 0x0001
|
||||
|
@ -489,7 +489,7 @@ void CBasePlayerItem::Materialize( void )
|
||||
pev->solid = SOLID_TRIGGER;
|
||||
|
||||
UTIL_SetOrigin( pev, pev->origin );// link into world.
|
||||
SetTouch( &CBasePlayerItem::DefaultTouch);
|
||||
SetTouch( &CBasePlayerItem::DefaultTouch );
|
||||
SetThink( NULL );
|
||||
}
|
||||
|
||||
@ -582,13 +582,6 @@ void CBasePlayerItem::DefaultTouch( CBaseEntity *pOther )
|
||||
}
|
||||
|
||||
SUB_UseTargets( pOther, USE_TOGGLE, 0 ); // UNDONE: when should this happen?
|
||||
|
||||
// If the item is falling and its Think remains FallItem after the player picks it up,
|
||||
// then after the item touches the ground its Touch will be set back to DefaultTouch,
|
||||
// so the player will pick it up again, this time Kill-ing the item (since we already have it in the inventory),
|
||||
// which will make the pointer bad and crash the game.
|
||||
if( m_pfnThink == &CBasePlayerItem::FallThink )
|
||||
SetThink( NULL );
|
||||
}
|
||||
|
||||
BOOL CanAttack( float attack_time, float curtime, BOOL isPredicted )
|
||||
@ -738,7 +731,7 @@ void CBasePlayerItem::AttachToPlayer( CBasePlayer *pPlayer )
|
||||
pev->modelindex = 0;// server won't send down to clients if modelindex == 0
|
||||
pev->model = iStringNull;
|
||||
pev->owner = pPlayer->edict();
|
||||
pev->nextthink = gpGlobals->time + .1;
|
||||
pev->nextthink = 0;// Remove think - prevents futher attempts to materialize
|
||||
SetTouch( NULL );
|
||||
SetThink( NULL );
|
||||
}
|
||||
@ -1058,6 +1051,7 @@ void CBasePlayerAmmo::Materialize( void )
|
||||
}
|
||||
|
||||
SetTouch( &CBasePlayerAmmo::DefaultTouch );
|
||||
SetThink( NULL );
|
||||
}
|
||||
|
||||
void CBasePlayerAmmo::DefaultTouch( CBaseEntity *pOther )
|
||||
|
Loading…
x
Reference in New Issue
Block a user