APIReferenceCouting.cs 974 B

12345678910111213141516171819202122232425262728293031323334
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Diagnostics;
  4. using UnityEngine;
  5. public class APIReferenceCouting : MonoBehaviour
  6. {
  7. private void Awake()
  8. {
  9. APIReferenceCouting._referenceCountingDict.Add("Effect", new Dictionary<string, int>());
  10. APIReferenceCouting._referenceCountingDict.Add("Audio", new Dictionary<string, int>());
  11. }
  12. [Conditional("UNITY_EDITOR")]
  13. public static void OnUse(string flag, string id)
  14. {
  15. Dictionary<string, int> dictionary = APIReferenceCouting._referenceCountingDict[flag];
  16. if (!dictionary.ContainsKey(id))
  17. {
  18. dictionary.Add(id, 1);
  19. }
  20. else
  21. {
  22. Dictionary<string, int> dictionary2;
  23. (dictionary2 = dictionary)[id] = dictionary2[id] + 1;
  24. }
  25. }
  26. public const string Effect = "Effect";
  27. public const string Audio = "Audio";
  28. private static readonly Dictionary<string, Dictionary<string, int>> _referenceCountingDict = new Dictionary<string, Dictionary<string, int>>();
  29. }