(注意)
この連載は、ある程度ゲームを作ったことある人の
ためのものです。「アタッチ」とか「C#スクリプト
の作成」とか「カメラアングルの変更」とか、その
レベルの話は省略しています。よろしくお願いしま
す。
前回の続きです。
積んでいくと、カメラの位置が上へ。そして、射出(Gene)
も一緒に上へ動いていくようにしましょう。
メインカメラの取得と、その動かし方はいろいろなゲームの
参考になるかな?と思いますので。
(GameCの改変です 赤字が追加分です。)
//インスタンス用
public GameObject blk;
//スコア
public int Score = 0;
//フラグ
public int flag = 0;
//スタート位置
Vector3 stPos;
//メインカメラ本体
private GameObject MCamera;
// Start is called before the first frame update
void Start()
{
//スタート位置を取得
stPos = transform.position;
//カメラを発見する
MCamera = GameObject.Find("Main Camera");
}
// Update is called once per frame
void Update()
{
if (Input.GetKey(KeyCode.Space)&&flag==0)
{
//オブジェクトを生成する
Instantiate(blk, new Vector3(transform.position.x, transform.position.y - 1, transform.position.z), Quaternion.identity);
//フラグを立てて
flag = 1;
//スコアを加算する
Score += 1;
//高さを加算する
stPos.y += 1;
}
//射出の左右の動き
transform.position = new Vector3(Mathf.Sin(Time.time) * 4.0f + stPos.x, stPos.y, stPos.z);
//メインカメラの位置の更新
MCamera.transform.position = new Vector3(0, stPos.y+5, -12);
}
あとは、音が出たりスコアが出たり。
あと、ブロックが全部消えたらカメラや射出位置も
リセットされるようにしたほうがいいですね。
あと、2回くらいで完成しそうです!
質問があればDMやらコメントをお願いします。
それではよきプログラミングライフを!
またね。