using UnityEngine; public class BulletSpawner : MonoBehaviour { public GameObject prefab; public float bulletSpeed = 8f; Transform target; public Transform firePoint; public float min = 0.5f; public float max = 3f; float rate; float time; // Start is called once before the first execution of Update after the MonoBehaviour is created void Start() { time = 0f; rate = Random.Range(min, max); target = FindFirstObjectByType().transform; } // Update is called once per frame void Update() { time += Time.deltaTime; transform.LookAt(target); if(time >= rate) { time = 0f; rate = Random.Range(min, max); GameObject obj = Instantiate(prefab, firePoint.transform.position, firePoint.transform.rotation); obj.transform.LookAt(target); Bullet bulletScript = obj.GetComponent(); if (bulletScript != null) { bulletScript.speed = bulletSpeed; } } } }