Skip to content

Commit b3951e5

Browse files
committed
fix: remove need for public constructor of ObjectPoolingManager class. Was causing conflict to fields.
1 parent b9456e8 commit b3951e5

2 files changed

Lines changed: 9 additions & 12 deletions

File tree

Assets/Object Pooler/Runtime/ObjectPoolingManager.cs

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,23 +11,20 @@ public class ObjectPoolingManager : MonoBehaviour
1111
#region Fields
1212

1313
private readonly Dictionary<int, object> _recycledObjects = new Dictionary<int, object>();
14-
private readonly ServerObjectManager _serverObjectManager;
15-
internal readonly GameObject Parent;
16-
internal readonly Dictionary<Guid, NetworkIdentity> _objectsAssetIds = new Dictionary<Guid, NetworkIdentity>();
14+
private ServerObjectManager _serverObjectManager;
15+
private GameObject _parent;
16+
private readonly Dictionary<Guid, NetworkIdentity> _objectsAssetIds = new Dictionary<Guid, NetworkIdentity>();
1717

1818

1919
#endregion
2020

21-
public ObjectPoolingManager(ServerObjectManager serverObjectManager)
22-
{
23-
_serverObjectManager = serverObjectManager;
24-
Parent = new GameObject { name = nameof(ObjectPoolingManager) };
25-
}
26-
2721
#region Unity Methods
2822

2923
private void Start()
3024
{
25+
_parent = new GameObject { name = nameof(ObjectPoolingManager) };
26+
_serverObjectManager = FindObjectOfType<ServerObjectManager>();
27+
3128
ClientObjectManager clientObject = FindObjectOfType<ClientObjectManager>();
3229

3330
if (clientObject == null) return;
@@ -122,7 +119,7 @@ public NetworkIdentity NetworkSpawnPool(Vector3 position, Quaternion rotation, G
122119
? (ObjectPooling<NetworkIdentity>)_recycledObjects[prefabId]
123120
: default).NetworkSpawn(position, rotation);
124121

125-
var createParent = new GameObject(_objectsAssetIds[AssetId].name) { transform = { parent = Parent.transform } };
122+
var createParent = new GameObject(_objectsAssetIds[AssetId].name) { transform = { parent = _parent.transform } };
126123

127124
_recycledObjects[prefabId] = new ObjectPooling<NetworkIdentity>(_objectsAssetIds[AssetId], quantity, createParent);
128125

@@ -173,7 +170,7 @@ public T LocalSpawnPool<T>(T gObject, Vector3 position, Quaternion rotation, boo
173170
? (ObjectPooling<T>)_recycledObjects[prefabId]
174171
: default).Spawn(position, rotation);
175172

176-
var createParent = new GameObject(gObject.name) { transform = { parent = Parent.transform } };
173+
var createParent = new GameObject(gObject.name) { transform = { parent = _parent.transform } };
177174

178175
_recycledObjects[prefabId] = new ObjectPooling<T>(gObject, quantity, createParent);
179176

@@ -200,7 +197,7 @@ internal T LocalSpawnPool<T>(T gObject, Transform parentTransform, bool worldSta
200197
? (ObjectPooling<T>)_recycledObjects[prefabId]
201198
: default).Spawn(parentTransform, worldStayPosition);
202199

203-
var createParent = new GameObject(gObject.name) { transform = { parent = Parent.transform } };
200+
var createParent = new GameObject(gObject.name) { transform = { parent = _parent.transform } };
204201

205202
_recycledObjects[prefabId] = new ObjectPooling<T>(gObject, quantity, createParent);
206203

Assets/Object Pooler/Samples~/.keep

Whitespace-only changes.

0 commit comments

Comments
 (0)