using System; using UnityEngine; namespace Patterns_And_Principles.Patterns.Object_Pool_Pattern.BasicPool.Script { public class BulletPoolExample : MonoBehaviour { [SerializeField] private SimpleBullet prefab; private ObjectPool _bulletPool; private void Start() { _bulletPool = new ObjectPool(prefab, transform, 20, false); } private void Update() { if (Input.GetKeyDown(KeyCode.Space)) { SimpleBullet bullet = _bulletPool.Get(); bullet.transform.position = transform.position; } } public void ReturnBullet(SimpleBullet bullet) { _bulletPool.Release(bullet); } } }