UTIL PlayerByIndex: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
Biohazard 90 (talk | contribs) No edit summary |
||
Line 1: | Line 1: | ||
CBasePlayer | This function will return a CBasePlayer pointer to an [[entity]] based on the networked entity index which is passed in as a first parameter. The [[edict]] indices in the range 1 to gpGlobals->maxClients are reserved for players; all networked, non-player entities will be assigned to an index higher than gpGlobals->maxClients. | ||
== Shared declaration: == | |||
<source lang=cpp> | |||
CBasePlayer *UTIL_PlayerByIndex( int entindex ); | |||
</source> | |||
== Example usage: == | |||
The following code can be used to savely iterate all player entities: | |||
gpGlobals->maxClients | <source lang=cpp> | ||
for ( int i = 1; i <= gpGlobals->maxClients; i++ ) | |||
{ | |||
CBasePlayer *pPlayer = UTIL_PlayerByIndex(i); | |||
if (!pPlayer || !pPlayer->IsPlayer()) | |||
continue; | |||
[...] | |||
} | |||
</source> | |||
[[Category:Programming]] | [[Category:Programming]] | ||
[[Category:UTIL]] | [[Category:UTIL]] |
Revision as of 17:43, 10 April 2011
This function will return a CBasePlayer pointer to an entity based on the networked entity index which is passed in as a first parameter. The edict indices in the range 1 to gpGlobals->maxClients are reserved for players; all networked, non-player entities will be assigned to an index higher than gpGlobals->maxClients.
CBasePlayer *UTIL_PlayerByIndex( int entindex );
Example usage:
The following code can be used to savely iterate all player entities:
for ( int i = 1; i <= gpGlobals->maxClients; i++ )
{
CBasePlayer *pPlayer = UTIL_PlayerByIndex(i);
if (!pPlayer || !pPlayer->IsPlayer())
continue;
[...]
}