123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- //------------------------------------------------------------
- // Game Framework
- // Copyright © 2013-2021 loyalsoft. All rights reserved.
- // Homepage: http://www.game7000.com/
- // Feedback: http://www.game7000.com/
- //------------------------------------------------------------
- using GameFramework;
- using UnityEngine;
- namespace UnityGameFramework.Runtime
- {
- /// <summary>
- /// 基础组件。
- /// </summary>
- [DisallowMultipleComponent]
- [AddComponentMenu("Game Framework/ReferencePool")]
- public sealed class ReferencePoolComponent : GameFrameworkComponent
- {
- [SerializeField]
- private ReferenceStrictCheckType m_EnableStrictCheck = ReferenceStrictCheckType.AlwaysEnable;
- /// <summary>
- /// 获取或设置是否开启强制检查。
- /// </summary>
- public bool EnableStrictCheck
- {
- get
- {
- return ReferencePool.EnableStrictCheck;
- }
- set
- {
- ReferencePool.EnableStrictCheck = value;
- if (value)
- {
- Log.Info("Strict checking is enabled for the Reference Pool. It will drastically affect the performance.");
- }
- }
- }
- /// <summary>
- /// 游戏框架组件初始化。
- /// </summary>
- protected override void Awake()
- {
- base.Awake();
- }
- private void Start()
- {
- switch (m_EnableStrictCheck)
- {
- case ReferenceStrictCheckType.AlwaysEnable:
- EnableStrictCheck = true;
- break;
- case ReferenceStrictCheckType.OnlyEnableWhenDevelopment:
- EnableStrictCheck = Debug.isDebugBuild;
- break;
- case ReferenceStrictCheckType.OnlyEnableInEditor:
- EnableStrictCheck = Application.isEditor;
- break;
- default:
- EnableStrictCheck = false;
- break;
- }
- }
- }
- }
|