yamada_yoshiki Posted by

おはようございます!こんにちは!こんばんは!おやすみなさい!
山田です。

次回に引き続きUnityを使用してゲームを作っていきたいと思います!!!

今回はゲーム用のボタンを設置します。

各ボタンの設置

ヒエラルキーウィンドウ作成→UI→Buttonを選択します。

作成されたButtonの名前をRButtonに変更します。

RButtonインスペクターウィンドウにボタンの画像をドラッグ&ドロップして、アンカーポイントを設定します。
同様にLButtonAButtonBButtonを作成します。

アンカーポイント:オブジェクトの基準となる位置

ボタンが押された時のメソッドを作る

各ボタンが押された時の処理とついでに移動時の処理も変更します。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class player : MonoBehaviour
{
    // スタートメソッド
    void Start() {
        
    }

    // アップデートメソッド
    void Update() {
        // 左矢印キーが押されている間
        if (Input.GetKey(KeyCode.LeftArrow)) {
            // 左に1動かす
            transform.Translate(-1, 0, 0);
        }
        // 右矢印キーが押されている間
        if (Input.GetKey(KeyCode.RightArrow)) {
            // 右に1動かす
            transform.Translate(1, 0, 0);
        }
        // スペースキーが押された時
        if (Input.GetKeyDown(KeyCode.Space)) {
            // 上に1動かす
            transform.Translate(0, 1, 0);
        }
        // Bキーが押された時
        if (Input.GetKeyDown(KeyCode.B)) {
            // 下に1動かす
            transform.Translate(0, -1, 0);
        }
    }
    
    // 左ボタンが押されている間
    public void LButtonDown() {
        // 左に1動かす
        transform.Translate(-1, 0, 0);
    }
    // 右ボタンが押されている間
    public void RButtonDown() {
        // 左に1動かす
        transform.Translate(1, 0, 0);
    }
    // Aボタンが押された時
    public void AButtonDown() {
        // 下に1動かす
        transform.Translate(0, -1, 0);
    }
    // Bボタンが押された時
    public void BButtonDown() {
        // 上に1動かす
        transform.Translate(0, 1, 0);
    }
    
}

 

オブジェクトとメソッドを関連付ける

+ボタンを押して作成したRButtonインスペクターウィンドウにクリックされた際のメソッドを追加します。

ヒエラルキーウィンドウからplayer.csドラッグ&ドロップします。

追加したplayer.csメソッドとボタンを関連付けます。

同様にLButtonAButtonBButtonのオブジェクトと処理を関連付けます。

最後に

今回はUIの設置と設定について紹介しました。

今回のゲームも下記URLから動かすことが可能です。

http://takuan1019.tk/game2/