こんばんはヤス虎です(*’-‘)
今回もNGUIの使い方です~
まず前回作りましたサンプルを修正や追加をして下の様にします
イキナリ変わってますね~(;´・ω・)
では説明します
ヒエラルキービューのCreate>CubeでBoxを作ります
次にBoxが暗いのでCreate>Directional lightで明かりを作ります
あとは前回作ったラベルとボタンです
ボタンは数が足りないので追加しています
サイズや位置は適当にインスペクタービューのTransformから調整します
ボタンの名称はヒエラルキービューに作ったButton>Labelから編集出来ます
ではBlueボタンの処理を作って行きます
ボタンを押した時に音が鳴るようにします
ヒエラルキービューでButtonを選択してインスペクタービューのUIButton Sound(Script)を下の様にします
これで押した時に音が鳴るようになりす
次にボタンが押されたら呼ばれるメッセージを作ります
Buttonが選択された状態でメインメニューの
Component>NGUI>Interaction>Button Messageをクリックすると
インスペクタービューにUIButton Message(Script)が出来るので下の様にします
ついでに同じ様にしてボタンが離されたら呼ばれるメッセージも作ります
以上のボタンの処理をYellow,Redのボタンにもします
UIButton MessageのFunction Nameはボタンのごとに色の名前に変更しています
ラベルはヒエラルキービューから名称をLabel(Color)に変更しています
あとは下のスクリプト(C#)をBoxにドラッグして完成です(о’д’)b
using UnityEngine; using System.Collections; public class box : MonoBehaviour { private int buttonNumber; private UILabel labelColor; //NGUIラベル用 // Use this for initialization void Start () { buttonNumber = 0; renderer.material.color = Color.green; //マテリアル色変更 labelColor = GameObject.Find("Label(Color)").GetComponent(); //NGUIのラベル読込み labelColor.text = "Green"; //NGUIのラベル書込み } // Update is called once per frame void Update () { this.transform.Rotate(0, 100 * Time.deltaTime, 0); //boxが回転する switch (buttonNumber){ case 1: renderer.material.color = Color.blue; //マテリアル色変更 labelColor.text = "Blue"; //NGUIのラベル書込み break; case 2: renderer.material.color = Color.yellow; //マテリアル色変更 labelColor.text = "Yellow"; //NGUIのラベル書込み break; case 3: renderer.material.color = Color.red; //マテリアル色変更 labelColor.text = "Red"; //NGUIのラベル書込み break; default:renderer.material.color = Color.green; //マテリアル色変更 labelColor.text = "Green"; //NGUIのラベル書込み break; } } void BlueButtonPressed() { this.buttonNumber = 1; } void BlueButtonReleased() { this.buttonNumber = 0; } void YellowButtonPressed() { this.buttonNumber = 2; } void YellowButtonReleased() { this.buttonNumber = 0; } void RedButtonPressed() { this.buttonNumber = 3; } void RedButtonReleased() { this.buttonNumber = 0; } }
回転しているBOXの色が押したボタンの色に変わります
最後に決まり文句の間違ってる所が有るかも知れないです(*´Д`)
まだ続く~