そういうわけで、NGUI2.7を使ってGUIを刷新できました。日本語フォントはOsakaフォントをなぞって切り文字風にしました。
次は最初に開くスタートメニューの画面もNGUIで作り直す予定。
難易度の表示は、下記のようなスクリプトを「かんたんモード」、「ふつうモード」、「むずかしいモード」の画像を貼ったNGUIの各スプライトに適用し、ゲームのスタート画面で難易度を選択する時に指定されるグローバル変数(varHolderスクリプトのstatic変数difficulty)の持っている値(0が簡単、1がふつう、2がむずかしい)から、そのスプライト自体の表示/非表示を判断します。enabled = trueでそのコンポーネントにチェックが入り、enabled = falseでチェックが外されます。
「.」は「の」と考えるといいです。つまり○○市の△△町の・・・みたいな感じです。データの区切りです。
GetComponent<UISprite>().enabled = true;
と書かれていた場合、UISpriteという名前のスクリプトの使用可能(enable)かどうかを設定します。「true」なので「使う」です。こういう感じで3つのモードのどれかが表示されるようになってます。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
using UnityEngine;
using System.Collections;
public class MenuModeSelectEasy : MonoBehaviour {
// Use this for initialization
void Awake () {
if(varHolder.difficulty == 0){
GetComponent<UISprite>().enabled = true;
}
else if(varHolder.difficulty == 1){
GetComponent<UISprite>().enabled = false;
}
else if(varHolder.difficulty == 2){
GetComponent<UISprite>().enabled = false;
}
}
}
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
そのVarHolderスクリプトというのは、下記な感じです。staticで宣言された変数はそのシーンが破棄されて、別のシーンが呼び出された時も存在し続けますので、新しく呼び出されたシーンからアクセス可能なンです。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
using UnityEngine;
using System.Collections;
public class varHolder : MonoBehaviour {
//テクスチャ番号を保持するstatic変数:carTexture
public static int carTexture;
//難易度情報を保持するstatic変数:difficulty
public static int difficulty;
//その動作確認
// void Update(){
// Debug.Log("car Texture is "+ carTexture);
// Debug.Log("difficulty is "+ difficulty);
// }
}
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー