aboutsummaryrefslogtreecommitdiff
path: root/sp/src/game/server/entity_tools_server.cpp
diff options
context:
space:
mode:
authorNarendra Umate <[email protected]>2013-12-08 01:27:41 -0800
committerNarendra Umate <[email protected]>2013-12-08 01:27:41 -0800
commit4fa56874ba1557274c10077bf8386ece4c61dbd6 (patch)
treee2d336604e960b548e996d2e7dcfc5a1e1401b9e /sp/src/game/server/entity_tools_server.cpp
parentAdded DS_Store to .gitignore. (diff)
parentMake libSDL2.so/dylib into symlinks. (diff)
downloadsource-sdk-2013-4fa56874ba1557274c10077bf8386ece4c61dbd6.tar.xz
source-sdk-2013-4fa56874ba1557274c10077bf8386ece4c61dbd6.zip
Merge remote-tracking branch 'upstream/master'
Reverted .gitattributes xcode_ccache_wrapper change. Fixed line endings for .gitignore and .gitattributes.
Diffstat (limited to 'sp/src/game/server/entity_tools_server.cpp')
-rw-r--r--sp/src/game/server/entity_tools_server.cpp36
1 files changed, 31 insertions, 5 deletions
diff --git a/sp/src/game/server/entity_tools_server.cpp b/sp/src/game/server/entity_tools_server.cpp
index e1888123..5032ca04 100644
--- a/sp/src/game/server/entity_tools_server.cpp
+++ b/sp/src/game/server/entity_tools_server.cpp
@@ -409,13 +409,39 @@ void CC_Ent_Keyvalue( const CCommand &args )
return;
}
- int nID = atoi( args[1] );
+ CBasePlayer *pPlayer = ToBasePlayer( UTIL_GetCommandClient() );
+ CBaseEntity *pEnt;
+ if ( FStrEq( args[1], "" ) || FStrEq( args[1], "!picker" ) )
+ {
+ if (!pPlayer)
+ return;
+
+ extern CBaseEntity *FindPickerEntity( CBasePlayer *pPlayer );
+ pEnt = FindPickerEntity( pPlayer );
- CBaseEntity *pEnt = g_ServerTools.FindEntityByHammerID( nID );
- if ( !pEnt )
+ if ( !pEnt )
+ {
+ ClientPrint( pPlayer, HUD_PRINTCONSOLE, "No entity in front of player.\n" );
+ return;
+ }
+ }
+ else if ( FStrEq( args[1], "!self" ) || FStrEq( args[1], "!caller" ) || FStrEq( args[1], "!activator" ) )
{
- Msg( "Entity ID %d not found.\n", nID );
- return;
+ if (!pPlayer)
+ return;
+
+ pEnt = pPlayer;
+ }
+ else
+ {
+ int nID = atoi( args[1] );
+
+ pEnt = g_ServerTools.FindEntityByHammerID( nID );
+ if ( !pEnt )
+ {
+ Msg( "Entity ID %d not found.\n", nID );
+ return;
+ }
}
int nArg = 2;