2015年6月19日金曜日

[Unity]質問があったのでまとめておく

PlayerPrefsを使ってGlobalWorksの値を保存したり復元したりして見るコード

public static class GlobalWorks {

public static int mScore;
public static string mUserName;
static GlobalWorks(){
// コンストラクタ(必ず最初に実行される)
mScore = PlayerPrefs.GetInt("Score", 0 );
mUserName = PlayerPrefs.GetString("UserName", "default user");
}

static void SaveDatas() {
PlayerPrefs.SetInt("Score", mScore);
PlayerPrefs.SetString("UserName", mUserName);
}

}

以上。別のGameObjectのスクリプトから GlobalWorks.SaveDatas()とすればデータが保存され
Unityをrunすると保存されたデータが自動的に復元される。

[Unity}いきなりUnityに変更wsceneごとに共通させるデータを保持する簡単な方法

c#にてstatic classを作る。ソースはpluginsフォルダをassetsの下に作ってそこに
たとえばGlobalWorks.csを作る。以下な感じで

public static class GlobalWorks {

public static int mData;
}

アクセス方法
普通にGlobalWorks.mDataでアクセスできる

これだけ。後は必要なだけ変数を追加すればいい