Menu
CoddyTech

Повторение с for

Часть раздела Основы скриптинга в Unity путешествия по Unity на Coddy. Урок 37 из 85.

Цикл for снова и снова выполняет свои строки, ведя отсчёт:

for (int i = 0; i < 5; i++)
{
    Debug.Log("Round " + i);
}

В скобках указаны три части: начальное значение счётчика (int i = 0), условие продолжения цикла (i < 5) и действие после каждого прохода (i++). Этот цикл выполняется 5 раз, а значения i — 0, 1, 2, 3 и 4.

Со счётчиком можно выполнять математические операции: i * 2 даёт 0, 2, 4, 6 и 8.

PlaceCrate — это метод, написанный для тебя: именованная группа строк. Вызов PlaceCrate(3); выполняет их и помещает ящик в точку x = 3. Позже в этой главе ты напишешь собственные методы.

challenge icon

Задание

Средне

Размести 5 ящиков в ряд с помощью цикла for.

  1. В Start() замени PlaceCrate(0); на for (int i = 0; i < 5; i++) и его фигурные скобки.
  2. Внутри цикла вызови PlaceCrate(i * 2 - 4);, что задаёт значения x = -4, -2, 0, 2 и 4.

Нажми «Играть»: пять ящиков стоят в ряд на расстоянии 2 друг от друга. Затем нажми «Проверить».

Попробуйте сами

using UnityEngine;

public class CrateRow : MonoBehaviour
{
    void Start()
    {
        // Разместите 5 ящиков: при x = -4, -2, 0, 2 и 4.
        PlaceCrate(0);
    }

    void PlaceCrate(float x)
    {
        GameObject crate = GameObject.CreatePrimitive(PrimitiveType.Cube);
        crate.name = "Crate";
        crate.transform.position = new Vector3(x, 0.5f, 0);
        crate.GetComponent<Renderer>().material.color = new Color(0.8f, 0.55f, 0.3f);
    }
}

Все уроки раздела Основы скриптинга в Unity

Потренируйтесь самостоятельно: Песочница Unity