void Update() { if (!IsActive || _isBusy || _startTime > Time.time) { return; } _isBusy = true; var newPos = GetPostionInLookingDirection(); if ((newPos - _lastMoveToLocation).magnitude > DistanceTrigger || _isJustEnabled) { _isJustEnabled = false; var maxDelta = CollisonDetector.GetMaxDelta(newPos - transform.position); if (maxDelta != Vector3.zero) { newPos = transform.position + maxDelta; iTween.MoveTo(gameObject, iTween.Hash("position", newPos, "time", 2.0f * maxDelta.magnitude, "easetype", iTween.EaseType.easeInOutSine, "islocal", false, "oncomplete", "MovingDone", "oncompletetarget", gameObject)); _lastMoveToLocation = newPos; } else { _isBusy = false; } } else { _isBusy = false; } }
// Update is called once per frame void Update() { if (_isBusy || _startTime > Time.time) { return; } var newPos = LookingDirectionHelpers.GetPostionInLookingDirection(2.0f, GazeManager.Instance.Stabilizer); if ((newPos - _lastMoveToLocation).magnitude > DistanceTrigger || _isJustEnabled) { _isJustEnabled = false; var maxDelta = CollisonDetector.GetMaxDelta(newPos - transform.position); if (maxDelta != Vector3.zero) { _isBusy = true; newPos = transform.position + maxDelta; LeanTween.moveLocal(gameObject, transform.position + maxDelta, 2.0f * maxDelta.magnitude / Speed).setEaseInOutSine().setOnComplete(MovingDone); _lastMoveToLocation = newPos; } } }