Changed Teleporter Behavior
This commit is contained in:
parent
bc62e99e62
commit
99a7251cd5
@ -2414,6 +2414,18 @@ void CTriggerTeleport::Touch( CBaseEntity *pOther )
|
|||||||
{
|
{
|
||||||
// make origin adjustments in case the teleportee is a player. (origin in center, not at feet)
|
// make origin adjustments in case the teleportee is a player. (origin in center, not at feet)
|
||||||
tmp.z -= pOther->WorldAlignMins().z;
|
tmp.z -= pOther->WorldAlignMins().z;
|
||||||
|
|
||||||
|
// force velocity to target direction
|
||||||
|
Vector vecVelIn = pOther->GetAbsVelocity();
|
||||||
|
QAngle vecVelInDir = QAngle(0, 0, 0);
|
||||||
|
VectorAngles(vecVelIn, vecVelInDir);
|
||||||
|
QAngle vecDirOut = pentTarget->GetAbsAngles();
|
||||||
|
//vecVelInDir.z = 0;
|
||||||
|
//vecVelInDir.x, vecVelInDir.y = 0;
|
||||||
|
//vecDirOut.x, vecDirOut.y = 0;
|
||||||
|
Vector vecVelOut = Vector(0, 0, 0);
|
||||||
|
VectorRotate(vecVelIn, vecDirOut-vecVelInDir, vecVelOut);
|
||||||
|
pOther->SetAbsVelocity(vecVelOut);
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user