コード例 #1
0
ファイル: DuckController.cs プロジェクト: skni-kod/DHVRv2
    void Update()
    {
        _distanceTravelled += _speed * Time.deltaTime;

        var travelPercent = _distanceTravelled / _path.length;

        if (travelPercent > _startToFleePercent)
        {
            _startToFleeParticle.gameObject.SetActive(true);
        }

        if (travelPercent >= 1f)
        {
            OnDuckFlee?.Invoke(this);
            _OnDuckFlee.Invoke();

            Destroy(gameObject);
            return;
        }

        transform.position = _path.GetPointAtDistance(_distanceTravelled);
        var forward = _path.GetDirectionAtDistance(_distanceTravelled);
        var rot     = Quaternion.LookRotation(forward, Vector3.up);

        transform.rotation = rot;
    }
コード例 #2
0
 private void Flee()
 {
     OnDuckFlee?.Invoke(this);
     Destroy(gameObject);
 }