今回やること
前回やったUnityで簡単なセーブとロードの方法でやったPlayerPrefsを用いて簡易的なランキングを実装しようと思います。
仕様
- 一度ゲームを閉じてもデータが保持される
 - 高い点数を取得したらランキングを更新する
 
これらを実装して組んでいこうと思います。
コード
Ranking.cs
using UnityEngine;
using UnityEngine.UI;
public class Ranking : MonoBehaviour {
	[SerializeField,Header("数値")]
	int point;
	string[] ranking = { "ランキング1位", "ランキング2位", "ランキング3位", "ランキング4位", "ランキング5位" };
	int[] rankingValue = new int[5];
	[SerializeField, Header("表示させるテキスト")]
	Text[] rankingText=new Text[5];
	// Use this for initialization
	void Start ()
	{
		GetRanking();
		SetRanking(point);
		for (int i = 0; i < rankingText.Length; i++)
		{
			rankingText[i].text = rankingValue[i].ToString();
		}
	}
	/// <summary>
	/// ランキング呼び出し
	/// </summary>
	void GetRanking()
	{
		//ランキング呼び出し
		for (int i = 0; i < ranking.Length; i++)
		{
			rankingValue[i]=PlayerPrefs.GetInt(ranking[i]);
		}
	}
	/// <summary>
	/// ランキング書き込み
	/// </summary>
	void SetRanking(int _value)
	{
		//書き込み用
		for (int i = 0; i < ranking.Length; i++)
		{
				//取得した値とRankingの値を比較して入れ替え
				if (_value>rankingValue[i])
				{
					var change = rankingValue[i];
					rankingValue[i] = _value;
					_value = change;
				}
		}
		//入れ替えた値を保存
		for (int i = 0; i < ranking.Length; i++)
		{
			PlayerPrefs.SetInt(ranking[i],rankingValue[i]);
		}
	}
}
これで数値の高い順に並び変えられると思います。