public void StartReduceCollision() { if (_navMeshAgent == null) { return; } if (_currentSize == Size.Shrinking && _currentSize == Size.Shrinked) { return; } if (_currentTweening != null) { _currentTweening.Kill(); } _currentSize = Size.Shrinking; _currentTweening = DOTween.To(() => _navMeshAgent.radius, x => _navMeshAgent.radius = x, _originalAgentRadius * _collisionScalerData.CollisionScaleDownPercent, _collisionScalerData.ReduceTime) .OnComplete(() => { _currentSize = Size.Shrinked; }) .OnKill(() => { _currentSize = Size.Shrinked; }); }