o1 = o1 - v1 * (d / dv);
}
- // put him out of solid
+ // put them out of solid
tracebox(o1 - player.view_ofs, player.mins, player.maxs, o1 - player.view_ofs, MOVE_NOMONSTERS, player);
if(trace_startsolid)
{
if(toucher.move_movetype == MOVETYPE_NONE || toucher.move_movetype == MOVETYPE_FOLLOW || toucher.tag_entity)
return;
- if(WarpZoneLib_ExactTrigger_Touch(this, toucher))
- return;
+ EXACTTRIGGER_TOUCH(this, toucher);
if(WarpZone_PlaneDist(this, toucher.origin + toucher.view_ofs) >= 0) // wrong side of the trigger_warpzone (don't teleport yet)
return;
if(warpzone_warpzones_exist)
WarpZone_StoreProjectileData(it); // TODO: not actually needed
- if(IS_OBSERVER(it) || it.solid == SOLID_NOT)
- if(IS_CLIENT(it)) // we don't care about it being a bot
+ if((IS_OBSERVER(it) || it.solid == SOLID_NOT))
{
// warpzones
if (warpzone_warpzones_exist) {
entity e = WarpZone_Find(it.origin + it.mins, it.origin + it.maxs);
if (e)
- if (!WarpZoneLib_ExactTrigger_Touch(e, it))
+ if (WarpZoneLib_ExactTrigger_Touch(e, it, false))
if (WarpZone_PlaneDist(e, it.origin + it.view_ofs) <= 0)
WarpZone_Teleport(e, it, -1, 0); // NOT triggering targets by this!
}
{
entity ent = Teleport_Find(it.origin + it.mins, it.origin + it.maxs);
if (ent)
- if (!WarpZoneLib_ExactTrigger_Touch(ent, it))
+ if (WarpZoneLib_ExactTrigger_Touch(ent, it, false))
Simple_TeleportPlayer(ent, it); // NOT triggering targets by this!
}
}