コード例 #1
0
    private void Point()
    {
        _petState = PetState.Targeted;
        PlayerWatchData playerWatchData = _camera.GetComponent <PlayerWatchData>();

        if (playerWatchData)
        {
            (GameObject hit, Transform potentialTarget, float touchDistance) = playerWatchData.GetRaycast();
            if (hit.GetComponent <ObjectiveCompanionReachPoint>() || hit.GetComponent <Bush>())
            {
                _currentTarget       = potentialTarget;
                _interactionDistance = touchDistance;
                Move(potentialTarget, touchDistance);
            }

            else
            {
                Debug.Log(string.Format("Hit missed. Reason: {0} {1} {2}", hit, hit.GetComponent <ObjectiveCompanionReachPoint>(), potentialTarget));
                _petState = PetState.Follow;
            }
        }

        else
        {
            _petState = PetState.Follow;
            return;
        }
    }