return nearest;
}
-float WarpZoneLib_BadClassname(string myclassname)
+bool WarpZoneLib_BadEntity(entity e)
{
+ string myclassname = e.classname;
+ if (e.instanceOfObject) return true;
switch(myclassname)
{
- case "weapon_info":
- case "monster_info":
case "deathtype":
- case "callback":
- case "callbackchain":
case "weaponentity":
case "exteriorweaponentity":
case "csqc_score_team":
case "ent_client_scoreinfo":
case "saved_cvar_value":
case "accuracy":
- case "entcs_sender_v2":
- case "entcs_receiver_v2":
+ case "entcs_sender":
+ case "entcs_receiver":
case "clientinit":
case "sprite_waypoint":
case "waypoint":
for(e = e0; e; e = e.chain)
{
- if(WarpZoneLib_BadClassname(e.classname))
+ if(WarpZoneLib_BadEntity(e))
continue;
p = WarpZoneLib_NearestPointOnBox(e.origin + e.mins, e.origin + e.maxs, org0);
if(needlineofsight)
}
for(e = wz; e; e = e.WarpZone_findradius_next)
{
- if(WarpZoneLib_BadClassname(e.classname))
+ if(WarpZoneLib_BadEntity(e))
continue;
org0_new = WarpZone_TransformOrigin(e, org);