hello , i wanted to find all entity id in a small sphere
and after check if the entity can be take
so i did that to find all entity
PHP Code:
public fm_find_ent_in_sphere2(Float:origin[3], Float:range) {
new ent = 0
while((ent = engfunc(EngFunc_FindEntityInSphere, ent, origin, range)) != 0)
{
if((is_allowed_ent(ent) )) {
return ent
}
else {
ent = 0
}
}
return PLUGIN_CONTINUE
}
but while the function to find ent is lunched , server got freezed

this is the function to check if the entity is allowed
PHP Code:
is_allowed_ent(entid) {
new classname[33]
pev(entid,pev_classname,classname,32)
if(equal(classname,"tf_weapon_caltrop"))
return 1
else if(equal(classname,"tf_weapon_concussiongrenade"))
return 1
else if(equal(classname,"tf_weapon_normalgrenade"))
return 1
else if(equal(classname,"tf_weapon_nailgrenade"))
return 1
else if(equal(classname,"tf_weapon_mirvgrenade"))
return 1
else if(equal(classname,"tf_weapon_mirvbomblet"))
return 1
else if(equal(classname,"tf_weapon_napalmgrenade"))
return 1
else if(equal(classname,"tf_weapon_empgrenade"))
return 1
else if(equal(classname,"building_dispenser"))
return 1
else if(equal(classname,"building_teleporter"))
return 1
else if(equal(classname,"tf_gl_pipebomb"))
return 1
else if(equal(classname,"tf_gl_grenade"))
return 1
else if(equal(classname,"tf_weapon_gasgrenade"))
return 1
else if(equal(classname,"tf_weapon_caltrop"))
return 1
else if(equal(classname,"player"))
return 1
else if(equal(classname,"monster_turret"))
return 1
else if(equal(classname,"monster_miniturret"))
return 1
else if(equal(classname,"monster_sentry"))
return 1
else if(equal(classname,"detpack"))
return 1
return 0
}
anyone can help ?
in advance thank you