Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //-----------------------------------------------------------------------------
- // Purpose: Give the points, and play a sound
- // Input : *pOther - An Entity that collides with it,
- // Output :
- //-----------------------------------------------------------------------------
- void CReward_Token::ItemTouch( CBaseEntity *pOther )
- {
- if (!pOther) return;
- int numPointsToAdd = 0;
- switch ( m_iTimesRespawned )
- {
- case 1:
- numPointsToAdd = m_iPointsToGive1stTime;
- break;
- case 2:
- numPointsToAdd = m_iPointsToGive2ndTime;
- break;
- case 3:
- numPointsToAdd = m_iPointsToGive3rdTime;
- break;
- }
- if ( pOther->IsPlayer() )
- {
- pOther->AddPoints( numPointsToAdd, true );
- CSDKPlayer *pPlayer = dynamic_cast<CSDKPlayer*>( pOther );
- DoSoundEffects( pPlayer );
- }
- CRollerBall *pRollerBall = dynamic_cast<CRollerBall*>( pOther );
- if ( pRollerBall)
- {
- CSDKPlayer *pPlayer = pRollerBall->GetCommander();
- if (!pPlayer ) return;
- pPlayer->AddPoints( numPointsToAdd, true );
- }
- Respawn(); //Respawn
- }
- void CReward_Token::DoSoundEffects( CBasePlayer *pPlayer )
- {
- CSingleUserRecipientFilter user( pPlayer );
- user.MakeReliable();
- UserMessageBegin( user, "ItemPickup" );
- WRITE_STRING( GetClassname() );
- MessageEnd();
- //Output a sound
- CPASAttenuationFilter filter( pPlayer, "RollerBall.RewardTokenPickup" );
- EmitSound( filter, pPlayer->entindex(), "RollerBall.RewardTokenPickup" );
- }
Advertisement
Add Comment
Please, Sign In to add comment