0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

はじめに

前回ステージを作成し、🦀の動きに合わせてカメラが追従するようにしました。
今回はゲームオーバー要員となる敵を一定時間経過ごとに増やしていきます。

前回の記事

やったこと

敵を増やすスクリプト作成を試すために、一定時間が経過するとランダムな場所から敵(🦐)が降ってくるようにしました。

🦐に対するスクリプトを変更する

現在エビには左横移動するスクリプトが当たっているため、空から降ってくるスクリプトに変更しました。

transform.Translate(0, -0.1f, 0);

if (transform.position.y < -5)
{
    Destroy(gameObject);
}

敵を時間経過で増やす

前回ステージを作成した時と同じ要領でPrefabを作成します。
原本をプロジェクトウィンドウへ。
image.png

作成したPrefabの名前は「ebiPrefab」に。
image.png

今回はステージを作成した時とは違い、一定時間経過でPrefabを増やさないといけません。
そのため、シーンビューに追加するのではなく、スクリプトをかきます。

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

public class EnemyGenerator : MonoBehaviour
{
    public GameObject ebiPrefab;
    float span = 2.0f;
    float delta = 0;
    // Start is called before the first frame update
    void Start()
    {
        
    }

    // Update is called once per frame
    void Update()
    {
        this.delta += Time.deltaTime;
        if (this.delta > this.span)
        {
            this.delta = 0;
            GameObject go = Instantiate(ebiPrefab) as GameObject;
            Debug.Log(go);
            int px = Random.Range(0, 20);
            go.transform.position = new Vector3(px, 5, 0);
        }
    }
}

2秒間隔で🦐を生成しています。

スクリプトがかけたら、空のオブジェクトを作成し、そこにスクリプトをアタッチします。
このオブジェクトに敵生成スクリプトをアタッチすることによって、このオブジェクトは敵生成工場オブジェクトとして機能することになります。

image.png

オブジェクト名はEbiGenerator
image.png

動かしてみると、エラーがでて動かなくなりました。
image.png

オブジェクトの実態がないため発生したようです。
ここでオブジェクトを差し込む必要がありました。
ここには先ほどのスクリプトでpublic宣言をした変数が表示されます。
image.png

変数へプロジェクトウィンドウの🦐Prefabをドラッグアンドドロップで移動させて差し込みます。
image.png

エラーを解消して動かしてみると、一定時間でエビが空から降ってくるようになりました。

おわりに

一定時間経過でランダムな場所に敵を増殖させることができ、どんどんゲームっぽくなりました。
(🦐が空から降ってきてカオスですが)

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?