if(IS_PLAYER(head))
if(head.health >= 1)
++tdeath_hit;
- Damage (head, teleporter, telefragger, 10000, DEATH_TELEFRAG.m_id, head.origin, '0 0 0');
+ Damage (head, teleporter, telefragger, 10000, DEATH_TELEFRAG.m_id, DMG_NOWEP, head.origin, '0 0 0');
}
}
else // dead bodies and monsters gib themselves instead of telefragging
- Damage (telefragger, teleporter, telefragger, 10000, DEATH_TELEFRAG.m_id, telefragger.origin, '0 0 0');
+ Damage (telefragger, teleporter, telefragger, 10000, DEATH_TELEFRAG.m_id, DMG_NOWEP, telefragger.origin, '0 0 0');
}
}
}
player.lastteleporttime = time;
+ player.lastteleport_origin = from;
}
#endif
}
#ifdef SVQC
if(!e) { sprint(player, "Teleport destination vanished. Sorry... please complain to the mapper.\n"); }
#elif defined(CSQC)
- if(!e) { LOG_INFO("Teleport destination could not be found from CSQC.\n"); }
+ if(!e) { LOG_INFO("Teleport destination could not be found from CSQC."); }
#endif
makevectors(e.mangle);
++n;
#ifdef SVQC
if(e.move_movetype == MOVETYPE_NONE)
- waypoint_spawnforteleporter(this, e.origin, 0);
+ {
+ entity tracetest_ent = spawn();
+ setsize(tracetest_ent, PL_MIN_CONST, PL_MAX_CONST);
+ tracetest_ent.dphitcontentsmask = DPCONTENTS_SOLID | DPCONTENTS_BODY | DPCONTENTS_PLAYERCLIP | DPCONTENTS_BOTCLIP;
+ waypoint_spawnforteleporter(this, e.origin, 0, tracetest_ent);
+ delete(tracetest_ent);
+ }
if(e.classname != "info_teleport_destination")
- LOG_INFO("^3MAPPER ERROR: teleporter does target an invalid teleport destination entity. Angles will not work.\n");
+ LOG_INFO("^3MAPPER ERROR: teleporter does target an invalid teleport destination entity. Angles will not work.");
#endif
}
#elif defined(CSQC)
if(!(pl.flags & BIT(15))) // FL_PROJECTILE
#endif
- LOG_INFO("A non-projectile got through a warpzone and its owner cleared. It's a ", pl.classname, ".\n");
+ LOG_INFO("A non-projectile got through a warpzone and its owner cleared. It's a ", pl.classname, ".");
pl.owner = NULL;
}
if(IS_PLAYER(pl))
#ifdef SVQC
pl.oldvelocity = pl.velocity;
#endif
- // reset teleport time tracking too (or multijump can cause insane speeds)
- pl.lastteleporttime = time;
}
}