Creating simple pickup

From Valve Developer Community
Revision as of 01:37, 2 May 2010 by Price (talk | contribs) (Created page with 'What: I will explain how you can add a simple pickup like you have in the singleplayer Version: Orange Box SDK. ------- First open "hl2mp_player.cpp" and search for "CHL2MP_Pla…')
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

What: I will explain how you can add a simple pickup like you have in the singleplayer Version: Orange Box SDK.


First open "hl2mp_player.cpp" and search for "CHL2MP_Player::PickupObject".

replace the function:

void CHL2MP_Player::PickupObject( CBaseEntity *pObject, bool bLimitMassAndSize )
{
	
}

with:

void CHL2MP_Player::PickupObject( CBaseEntity *pObject, bool bLimitMassAndSize )
{
	// can't pick up what you're standing on
	if ( GetGroundEntity() == pObject )
		return;
	
	if ( bLimitMassAndSize == true )
	{
		if ( CBasePlayer::CanPickupObject( pObject, 35, 128 ) == false )
			 return;
	}

	// Can't be picked up if NPCs are on me
	if ( pObject->HasNPCsOnIt() )
		return;

	PlayerPickupObject( this, pObject );
}

The code is just taken from the singleplayer.