スコアを記録する
CoddyのUnityジャーニー「物理演算とゲームプレイ」セクションの一部。レッスン 29/63。
チャレンジ
中級コインを数えましょう。各コインは自分の価値を把握し、ボールが合計を保持します。これまでの手順の内容はすべてそのままにして、次を追加します。
Ballに、フィールドpublic int score;と、pointsをscoreに加算して新しい合計をScore: 4としてログに出力するメソッドpublic void AddScore(int points)を追加します。Coinに、フィールドpublic int value = 1;を追加します。Inspectorで大きいコインの値を3に設定します。- ボールがコインを集めたとき、コインは自分の
valueを使ってボールのAddScoreを呼び出し、その後、これまでと同じように非表示になります。
プレイを押して、すべて集めて7ポイントを獲得し、それから確認を押します。
自分で試してみよう
using UnityEngine;
public class Ball : MonoBehaviour
{
public float force = 10f;
private Rigidbody rb;
void Start()
{
rb = GetComponent<Rigidbody>();
}
void FixedUpdate()
{
float x = Input.GetAxis("Horizontal");
float z = Input.GetAxis("Vertical");
rb.AddForce(new Vector3(x, 0f, z) * force);
}
}