Menu
CoddyTech

値を返すメソッド

CoddyのUnityジャーニー「Unityスクリプトの基礎」セクションの一部。レッスン 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;に置き換えましょう。

「プレイ」を押すと、3枚のコインと4個の宝石で、コンソールにScore: 23と表示され、バーが伸びます。その後、「確認」を押しましょう。

自分で試してみよう

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プレイグラウンド