当前位置: 首页>>代码示例>>C#>>正文


C# Pool.ClearAndDestroy方法代码示例

本文整理汇总了C#中Pool.ClearAndDestroy方法的典型用法代码示例。如果您正苦于以下问题:C# Pool.ClearAndDestroy方法的具体用法?C# Pool.ClearAndDestroy怎么用?C# Pool.ClearAndDestroy使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Pool的用法示例。


在下文中一共展示了Pool.ClearAndDestroy方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: PoolArea

    private void PoolArea(Pool pool)
    {
        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("Despawn All", EditorStyles.toolbarButton, GUILayout.Width(80)))

        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);
            m_Target.pools.Remove(pool);
        }

        GUI.color = Color.white;

        GUILayout.EndHorizontal();

        GUILayout.BeginVertical();

        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();
    }
开发者ID:NotYours180,项目名称:Unity-QuickPool,代码行数:44,代码来源:ObjectsPoolEditor.cs

示例2: PoolArea

        private void PoolArea(Pool 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(40)))
                pool.ClearAndDestroy();

            if (GUILayout.Button("Preinstantiate", EditorStyles.toolbarButton, GUILayout.Width(80)))
                pool.Initialize();

            if (GUILayout.Button("X", EditorStyles.toolbarButton, GUILayout.Width(15)))
            {
                pool.ClearAndDestroy();
                if (pool.m_Root != null)
                    GameObject.DestroyImmediate(pool.m_Root.gameObject);
                poolManager.pools.Remove(pool);
            }

            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.allowGrowth = EditorGUILayout.Toggle("Allow more: ", pool.allowGrowth);

                pool.audioSourceHandling = (ComponentHandlingType)EditorGUILayout.EnumMaskField("Audio source: ", pool.audioSourceHandling);
                pool.particleSystemHandling = (ComponentHandlingType)EditorGUILayout.EnumMaskField("Particles: ", pool.particleSystemHandling);

                pool.mode = (DespawnMode)EditorGUILayout.EnumPopup("Despawn mode", pool.mode);
                if (pool.mode == DespawnMode.Move)
                    pool.despawnPos = EditorGUILayout.Vector3Field("Despawn position: ", pool.despawnPos);
            }

            GUILayout.EndVertical();
        }
开发者ID:luochuanyuewu,项目名称:Unity-QuickPool,代码行数:46,代码来源:ObjectsPoolEditor.cs


注:本文中的Pool.ClearAndDestroy方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。