Example #1
0
/*
* GClip_UnlinkEntity
* call before removing an entity, and before trying to move one,
* so it doesn't clip against itself
*/
void GClip_UnlinkEntity( edict_t *ent )
{
	if( !ent->r.area.prev )
		return; // not linked in anywhere
	GClip_RemoveLink( &ent->r.area );
	ent->r.area.prev = ent->r.area.next = NULL;
	ent->linked = qfalse;
}
Example #2
0
/*
* GClip_UnlinkEntity_AreaGrid
*/
static void GClip_UnlinkEntity_AreaGrid( edict_t *ent )
{
	for( int i = 0; i < MAX_ENT_AREAS; i++ ) {
		if( !ent->areagrid[i].prev ) {
			break;
		}
		GClip_RemoveLink( &ent->areagrid[i] );
		ent->areagrid[i].prev = ent->areagrid[i].next = NULL;
	}
}