Exemple #1
0
    private void OnEnable()
    {
        _startAimTime = Time.time + _startTime;
        _endAimTime   = _startAimTime + _aimTime;

        _playerTransform = BarrageBase.GetPlayerTransform();
    }
Exemple #2
0
    private void Update()
    {
        if (Time.time < _startAimTime)
        {
            return;
        }

        if (_playerTransform != null)
        {
            float rate = Mathf.Min(1, Mathf.InverseLerp(_startAimTime, _endAimTime, Time.time));

            Quaternion targetRotation = BarrageBase.GetAimRotation(_bulletMove.transform.position, _playerTransform.position);
            _bulletMove.rotation = Quaternion.Lerp(_bulletMove.rotation, targetRotation, rate);
        }
        else
        {
            _playerTransform = BarrageBase.GetPlayerTransform();
        }

        if (Time.time > _endAimTime)
        {
            enabled = false;
        }
    }