private void FinishPart() { Vector2 index = finish.transform.position / Field.SIZE; index -= offset; if (fieldMap.IsPathVisited((int)index.x, (int)index.y)) { part++; if (part < mapData.Finishes.Length) { StartCoroutine(InitNextPart()); if (OnPartCompleted != null) { OnPartCompleted(); } } else { FinishLevel(); } } }