private void Move() // method that moves enemy to next waypoint until final endpoint { if (waypointIndex <= waypoints.Count - 1) { var targetPosition = waypoints[waypointIndex].position; var movementInFrame = waveConfig.GetEnemyMoveSpeed() * Time.deltaTime; transform.position = Vector2.MoveTowards( transform.position, targetPosition, movementInFrame); if (transform.position == targetPosition) { waypointIndex++; } } else { Destroy(gameObject); } }