28 lines
840 B
C#
28 lines
840 B
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
|
|
public class ProjectileEnemy : MonoBehaviour
|
|
{
|
|
|
|
[SerializeField] GameObject projectile;
|
|
[SerializeField] GameObject firePoint;
|
|
[SerializeField][Range(0.1f, 3f)] float fireSpeed;
|
|
[SerializeField] float projectileSpeed;
|
|
|
|
// Start is called before the first frame update
|
|
void Start()
|
|
{
|
|
StartCoroutine(Fire());
|
|
}
|
|
|
|
IEnumerator Fire()
|
|
{
|
|
yield return new WaitForSeconds(1 / fireSpeed);
|
|
GameObject newProjectile = Instantiate(projectile, firePoint.transform.position, firePoint.transform.rotation);
|
|
newProjectile.GetComponent<Rigidbody2D>().AddRelativeForce(new Vector2(projectileSpeed, 0));
|
|
newProjectile.transform.Rotate(new Vector3(0, 0, -90));
|
|
StartCoroutine(Fire());
|
|
}
|
|
}
|