private void PoolArea(QuickPool pool) { GUILayout.BeginVertical(poolBackground); GUILayout.BeginHorizontal(EditorStyles.toolbar); GUILayout.Space(10f); pool.foldout = EditorGUILayout.Foldout(pool.foldout, pool.poolName); GUILayout.FlexibleSpace(); if (Application.isPlaying) { GUILayout.Label("Spawned: " + pool.spawnedCount + "/" + pool.totalCount); } if (GUILayout.Button("Clear", EditorStyles.toolbarButton, GUILayout.Width(80))) { pool.ClearAndDestroy(); } if (GUILayout.Button("Preinstantiate", EditorStyles.toolbarButton, GUILayout.Width(80))) { pool.PreInstantiate(); } GUI.color = Color.red; if (GUILayout.Button("-", EditorStyles.toolbarButton, GUILayout.Width(15))) { pool.ClearAndDestroy(); if (pool.m_Root != null) { GameObject.DestroyImmediate(pool.m_Root.gameObject); } poolManager.pools.Remove(pool); } GUI.color = Color.white; GUILayout.EndHorizontal(); if (pool.foldout) { pool.Prefab = EditorGUILayout.ObjectField("Prefab: ", pool.Prefab, typeof(GameObject), false) as GameObject; pool.size = EditorGUILayout.IntField("Pool size: ", pool.size); pool.allowMore = EditorGUILayout.Toggle("Allow more: ", pool.allowMore); pool.debugMessages = EditorGUILayout.Toggle("Debug messages: ", pool.debugMessages); } GUILayout.EndVertical(); }