Exemple #1
0
    private void OrdinaryMovement()
    {
        Vector2 newTarget;

        if (!TargetInZone)
        {
            newTarget = PersonTerritory.GetPoint();
        }
        else
        {
            newTarget = PastPosition;
        }
        Search = TargetMovementCheck(newTarget);
        if (Search)
        {
            TargetInZone = true;
            SearchPath(newTarget);
            PastPosition = newTarget;
            Index        = WayToTarget.Count - 1;
        }
        else
        {
            Index--;
        }
        if (WayToTarget.Count > 0 && Index >= 0)
        {
            DeterminationDirection();
        }
        else
        {
            //TODO: Заменить скип на продолжение пути
            ResetPastPosition();
            TargetInZone = false;
        }
    }