参考スクリプトです。
これを元にpublic変数を増やしたり、Updateメソッド内にif文などを追加したりすると色々と敵の動きを変化させることが出来ると思います。
Enemy0Controller
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Enemy0Controller : MonoBehaviour
{
public float sx; // x方向の速度
public float sy; // y方向の速度
public float rs; // 回転スピード
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
// 下に向かって移動する
transform.position += new Vector3(sx, -sy, 0) * Time.deltaTime;
// 回転する
transform.Rotate(new Vector3(0, 0, rs) * Time.deltaTime);
// 画面外に出たら消去
if (!GetComponent<Renderer>().isVisible)
{
Destroy(this.gameObject);
}
}
}
アタッチするスプライトオブジェクトにはCircle Collider 2DなどのColliderコンポーネントを追加すると当たり判定できます。
アタッチ後は、Inspectorウインドウのsx, sy, rsに数値を入れて動きを確認してください。
例)sx=0, sy=4, rs=0とすると敵が下に向かって移動する
コメント