Help us understand the problem. What is going on with this article?

[Unity] ハイスコアの実装 & アプリを終了しても記録を残す方法

More than 1 year has passed since last update.

今回はハイスコアの実装と、アプリを終了しても記録を残す方法を同時進行で記述します。

UnityのPlayerPrefsという機能を使って、プロジェクト内に記録を保存して、アプリを終了しても記録が残るようにします。

1. ハイスコアのテキストを配置

Unityの Hierarchy→Create→UI→Text で、Canvas内にハイスコアを表示するテキストを配置します。

スクリーンショット 2017-05-06 0.13.51.png

位置と大きさは自分の好きな様に設定します。

2.スクリプトを記述

宣言は以下の様にします。

今回はスコア機能が実装されている上での説明なので、あらかじめ自分で用意されているスコアの部分の記述は割愛します。

public Text highScoreText; //ハイスコアを表示するText
private int highScore; //ハイスコア用変数
private string key = "HIGH SCORE"; //ハイスコアの保存先キー

次にvoid startの部分に記述する部分です。

        highScore = PlayerPrefs.GetInt(key, 0);
//保存しておいたハイスコアをキーで呼び出し取得し保存されていなければ0になる
        highScoreText.text = "HighScore: " + highScore.ToString();
//ハイスコアを表示

最後にvoid updateの部分です。

//ハイスコアより現在スコアが高い時
if (score > highScore) {

                highScore = score;
//ハイスコア更新

                PlayerPrefs.SetInt(key, highScore);
//ハイスコアを保存

                highScoreText.text = "HighScore: " + highScore.ToString();
//ハイスコアを表示
            }

この部分でのscoreは、各々で設定している名前によって違ってくるかと思います。

3.ScriptにTextを貼り付ける

ScriptをObjectに貼り付け、Textを貼り付けたら完了です!!

スクリーンショット 2017-05-06 0.35.02.png

ゲームを終了しても、ハイスコアが残ってるかと思われます!!

4.ハイスコアを削除する方法

このままではハイスコアをリセットすることができないので、PlayerPrefs内に保存されているハイスコアをリセットしたい時に、次のコードを書けばリセットすることができます。

PlayerPrefs.DeleteAll();

これをvoid startに書いて、一度再生すると、ハイスコアがリセットされます。

以上、unityでハイスコアを実装する方法でした。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした