예제 #1
0
        public void Execute(float deltaTime)
        {
            Vector3 position = new Vector3();

            _input.GetMousePosition(ref position);

            Ray ray = _camera.ScreenPointToRay(position);

            if (!Physics.Raycast(ray, out RaycastHit hit))
            {
                return;
            }

            if (_input.IsLeftMouseClicked())
            {
                if (hit.collider.gameObject.CompareTag("Enemy"))
                {
                    _managedPerson.HitToPoint(hit.point);
                }
                else if (hit.collider.gameObject.CompareTag("Loot"))
                {
                    _managedPerson.TakeLoot(hit.point);
                }
                else
                {
                    GoToPoint(hit.point);
                }
            }

            Current_Point?.Invoke(hit.point);
        }