このページは、オブジェクトの表示・非表示をベースに作成します。
前回記事:オブジェクトの表示・非表示
前回は、地面に落ちたらボタンが出現する仕組みを作成しました。
これを元に今回は、ボタンを押すとボールが上に移動するスクリプトを作成します。
オブジェクトの座標を変えるスクリプトをつくり、これをボタン側で呼び出せるようにします。
関連記事:
Buttonでオブジェクトの色を変える
ボタンを押せば音が鳴る
ボタンによる5段階の拡大縮小
ボタン押している間だけ実行する
ボタンを押している間だけ転がりをストップ
オブジェクトの座標を変えるスクリプト
ButtonActiveのスクリプトを編集しましょう。
新しく追加したコードには、コメントを入れています。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class ButtonActive : MonoBehaviour { public GameObject button; public GameObject ball;//ボールの変数 void Start() { button.SetActive(false); //Sphereオブジェクトを格納 ball = GameObject.Find("Sphere"); } private void OnTriggerEnter(Collider other) { if (other.gameObject.tag == "button") { button.SetActive(true); } } //SphereのY座標を5にする public void BallUp(){ ball.transform.position = new Vector3(0,5,0); } } |
ボタンの設定
Buntonオブジェクトを選択し、Buttonコンポーネントを以下のように設定します。
ボタンクリックで、ButtonActive.cs の中のBallUp()を実行させます。
プレイして動きを見てみます。
ボタンを押すと、SphereオブジェクトがY座標5の高さまで移動します。
関連記事:
Buttonでオブジェクトの色を変える
ボタンを押せば音が鳴る
ボタンによる5段階の拡大縮小
ボタン押している間だけ実行する
ボタンを押している間だけ転がりをストップ