Menu
CoddyTech

Методы, которые возвращают значение

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

Одни методы выполняют действие. Другие что-то вычисляют и возвращают ответ, как калькулятор. Для таких методов вместо void указывают тип ответа:

int Double(int n)
{
    return n * 2;
}

int перед именем указывает, что этот метод возвращает значение типа int. return передаёт значение вызывающему коду и завершает метод, поэтому строки после него в том же методе не выполняются.

Вызов метода обозначает ответ, где бы ты его ни использовал:

int big = Double(21);          // big равен 42
Debug.Log("Twice 5 is " + Double(5));

Метод, возвращающий значение, должен дойти до return со значением своего типа; иначе C# откажется запускать скрипт.

challenge icon

Задание

Средне

Заверши Score: монета стоит 1 очко, а драгоценный камень — 5.

  1. В Score(int coins, int gems) найди return 0;.
  2. Замени его на return coins + gems * 5;.

Нажми «Играть»: в Console отображается Score: 23 за 3 монеты и 4 драгоценных камня, а полоса увеличивается. Затем нажми «Проверить».

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

using UnityEngine;

public class ScoreBoard : MonoBehaviour
{
    void Start()
    {
        int score = Score(3, 4);
        Debug.Log("Score: " + score);
        transform.localScale = new Vector3(1, score / 5f, 1);
    }

    // Монета приносит 1 очко, а драгоценный камень — 5 очков.
    int Score(int coins, int gems)
    {
        return 0;
    }
}

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

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