示例#1
0
    private void Move()
    {
        if (waypointIndex <= waypoints.Count - 1)
        {
            var targetPosition    = waypoints[waypointIndex].transform.position;
            var movementThisFrame = enemyType.GetMoveSpeed() * Time.deltaTime;
            transform.position = Vector3.MoveTowards(transform.position, targetPosition, movementThisFrame);

            if (transform.position == targetPosition)
            {
                if (waypointIndex == waypoints.Count - 1)
                {
                    waypointIndex--;
                }
                else
                {
                    waypointIndex++;
                }
            }
        }
        else
        {
            Destroy(gameObject);
        }
    }