mirror of
https://github.com/YGGverse/xash3d-fwgs.git
synced 2025-01-18 02:50:33 +00:00
engine: server: restore original PEntityOfEntIndex function, but still bug-compatible with GoldSrc
This commit is contained in:
parent
3ad60a0fa1
commit
c326853617
@ -62,16 +62,23 @@ qboolean SV_CheckEdict( const edict_t *e, const char *file, const int line )
|
|||||||
|
|
||||||
static edict_t *SV_PEntityOfEntIndex( const int iEntIndex, const qboolean allentities )
|
static edict_t *SV_PEntityOfEntIndex( const int iEntIndex, const qboolean allentities )
|
||||||
{
|
{
|
||||||
edict_t *pEdict = EDICT_NUM( iEntIndex );
|
if( iEntIndex >= 0 && iEntIndex < GI->max_edicts )
|
||||||
qboolean player = allentities ? iEntIndex <= svs.maxclients : iEntIndex < svs.maxclients;
|
{
|
||||||
|
edict_t *pEdict = EDICT_NUM( iEntIndex );
|
||||||
|
qboolean player = allentities ? iEntIndex <= svs.maxclients : iEntIndex < svs.maxclients;
|
||||||
|
|
||||||
if( !SV_IsValidEdict( pEdict ))
|
if( !iEntIndex || FBitSet( host.features, ENGINE_QUAKE_COMPATIBLE ))
|
||||||
return NULL;
|
return pEdict; // just get access to array
|
||||||
|
|
||||||
if( !player && !pEdict->pvPrivateData )
|
if( SV_IsValidEdict( pEdict ) && pEdict->pvPrivateData )
|
||||||
return NULL;
|
return pEdict;
|
||||||
|
|
||||||
return pEdict;
|
// g-cont: world and clients can be accessed even without private data
|
||||||
|
if( SV_IsValidEdict( pEdict ) && player )
|
||||||
|
return pEdict;
|
||||||
|
}
|
||||||
|
|
||||||
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user