SingleEffectEvla.cs 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. #if UNITY_EDITOR
  2. using System.Collections;
  3. using System.Collections.Generic;
  4. using UnityEditor;
  5. using UnityEngine;
  6. /// <summary>
  7. /// 处理单个特效的像素点
  8. /// </summary>
  9. public class SingleEffectEvla {
  10. private EffectEvlaData[] _effectEvlaData;
  11. private int _qualityIndex = 0;
  12. public GameObject _effectObj;
  13. public static string[] Qualitys = { "High", "Middle", "Low" };
  14. public SingleEffectEvla(int qualityIndex)
  15. {
  16. _effectEvlaData = new EffectEvlaData[Qualitys.Length];
  17. for (int i = 0; i < _effectEvlaData.Length; i++)
  18. {
  19. _effectEvlaData[i] = new EffectEvlaData();
  20. _effectEvlaData[i].quality = Qualitys[i];
  21. }
  22. ChangeQuality(qualityIndex);
  23. }
  24. public void UpdateOneData(int pixDraw, int pixActualDraw)
  25. {
  26. if (pixDraw <= 0 && pixActualDraw <= 0)
  27. {
  28. return;
  29. }
  30. EffectEvlaData effectEvlaData = GetEffectEvlaData();
  31. effectEvlaData.pixTotal = effectEvlaData.pixTotal + pixDraw;
  32. effectEvlaData.pixActualDrawTotal = effectEvlaData.pixActualDrawTotal + pixActualDraw;
  33. effectEvlaData.pixDrawTimes = effectEvlaData.pixDrawTimes + 1;
  34. }
  35. public EffectEvlaData GetEffectEvlaData()
  36. {
  37. return _effectEvlaData[_qualityIndex-1];
  38. }
  39. public EffectEvlaData[] GetEffectEvlaDatas()
  40. {
  41. return _effectEvlaData;
  42. }
  43. public void ChangeQuality(int qualityIndex)
  44. {
  45. _qualityIndex = qualityIndex;
  46. }
  47. }
  48. #endif