前回の爆弾を避けよ!~4~の続きです。
プレイヤーを制御していくためのスクリプトを作成、記述していきます。
前提条件
前回のおわりまですすめておいてください。矢印ボタンとプレイヤーを設置したまでです。
この記事の「爆弾を避けよ!」の作成の流れ
- Projectウィンドウを整理
- スクリプトを作成
- スクリプトを開く
- スクリプトを記述
- スクリプトをプレイヤーにアタッチ
- 「RightArrow」を押したときのメソッドを設定
- 「LeftArrow」を押したときのメソッドを設定
こちらを行っていきます。
Projectウィンドウを整理
【Projectウィンドウ】→【Create】→【Folder】→【Scriptsと名前をつける】
これからProjectウィンドウがごちゃごちゃしないように、フォルダーを作ります。このフォルダーにスクリプトをいれてきます。
【PlayerController】スクリプトを作成
【Projectウィンドウ】→【Scriptsフォルダををダブルクリック】→【Create】→【C#Script】→【名前をPlayerController】
スクリプトを作成しました。【Scripts】フォルダに【PlayerController】スクリプトが入れられます。
【PlayerController】スクリプトを開く
【PlayerControllerをダブルクリック】
これで開くことができます。
Visual Studioはこんな感じ
スクリプトを開くとこんな感じになります。背景の色とかなんでも良いです。
他のエディタが開いてしまう場合は、そのエディタでも構いません。エディタを変える場合はスクリプトを開くときのエディタを「Visual Studio」から「MonoDevelop」に変えるをみてね。
【PlayerController】スクリプトを記述
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerController : MonoBehaviour {
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
// 右矢印ボタンを押したら移動するメソッド
public void RightArrowDown()
{
transform.Translate(2, 0, 0);
}
// 左矢印ボタンを押したら移動するメソッド
public void LeftArrowDown()
{
transform.Translate(-2, 0, 0);
}
}
transform.Translate(A, 0, 0); | Aの値だけX軸方向に移動する |
// 右矢印ボタンを押したら移動するメソッド
public void RightArrowDown()
{
transform.Translate(2, 0, 0);
}
【RightArrowDown】メソッドが実行されると、X軸方向に2移動します。
// 左矢印ボタンを押したら移動するメソッド
public void LeftArrowDown()
{
transform.Translate(-2, 0, 0);
}
【LeftArrowDown】メソッドが実行されると、X軸方向に-2移動します。
スクリプトを保存しておく
- CTRL+S
- 【File】→【保存】
スクリプトも保存しておきましょう。
【PlayerController】を【Player】にアタッチ
●スクリプトをアタッチする
【Unity(エディタ)に戻る】→【PlayerControllerスクリプトをPlayerにドラッグ&ドロップ】
スクリプトは単体のままでも、オブジェクト単体のままでも意味がありません。オブジェクトとスクリプトをアタッチ(紐付ける)ことによって、はじめてスクリプトが実行されます。
ここで【Player】オブジェクトに【PlayerController】をアタッチしています。
【RightArrow】を押したときのメソッドを設定
【RightArrow選択】→【Inspector】→【On Click】→【+を押す】→【None(Object)にPlayerをドラッグ&ドロップ】→【No Function】→【PlayerController】→【RightArrowDown()】
【RightArrow】ボタンが押されたら、【Player】の【RightArrowDown】メソッドが実行されるようにします。
こんな感じになっていればOK。これでボタンが押されたときのメソッドを実行できます。
「LeftArrow」を押したときのメソッドを設定
【LeftArrow選択】→【Inspector】→【On Click】→【+を押す】→【None(Object)にPlayerをドラッグ&ドロップ】→【No Function】→【PlayerController】→【LeftArrowDown()】
【LeftArrow】ボタンが押されたら、【Player】の【LeftArrowDown】メソッドが実行されるようにします。
こんな感じになっていればOK。
おわりに
こうなっていればOK。
では爆弾を避けよ!~6~に行きましょう。
コメント