- Home /
Question by
nketc · Aug 26, 2014 at 09:23 AM ·
javascripttransformtimeontriggerentermove
how to stop every thing and enter into the OnTriggerEnter function?
When object is moving from pointb to pointc (note they are defined vector3 points in program) the OnTriggerEnter function do not work untill object reached at it's destination (pointc) and then enter in OnTriggerEnter function and move from pointb to pointd.
I want to move object from pointb to pointc but when object collide then it should stop moving and enter into the OnTriggerEnter function.
function Start () {
yield MoveObject(transform, pointB, pointc, 2.0);
}
function OnTriggerEnter (other : Collider) {
pointd = Vector3(14.5,-16.306,28.6);
MoveObject(transform, pointB, pointd, 3);
}
function MoveObject (thisTransform : Transform, startPos : Vector3, endPos : Vector3, time : float) {
var i = 0.0;
var rate = 2.0/time;
while (i < 1.0) {
i += Time.deltaTime * rate;
thisTransform.position = Vector3.Lerp(startPos, endPos, i);
yield;
}
}
Comment
In order for colliders to be detected, one of the 2 coliding bodies must have a rigidbody. Also make sure the "Trigger" checkbox is checked in the collider inspector of the bodies.