GetSuitItemController.cs 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. using System.Collections.Generic;
  2. namespace GFGGame
  3. {
  4. public class GetSuitItemController
  5. {
  6. public static bool enable = true;
  7. private static List<int> _waitingToShowSuit = new List<int>();
  8. public static void Clear()
  9. {
  10. _waitingToShowSuit.Clear();
  11. }
  12. public static void AddItemId(int itemId)
  13. {
  14. if (!enable || !GameGlobal.PreDataInited)
  15. {
  16. return;
  17. }
  18. int suitId = SuitCfgArray.Instance.GetSuitIdOfItem(itemId);
  19. if (_waitingToShowSuit.IndexOf(suitId) < 0)
  20. {
  21. _waitingToShowSuit.Add(suitId);
  22. }
  23. }
  24. public static bool GetSuitWaitingToId(int itemId)
  25. {
  26. int suitId = SuitCfgArray.Instance.GetSuitIdOfItem(itemId);
  27. int index = _waitingToShowSuit.IndexOf(suitId);
  28. return index >= 0;
  29. }
  30. public static int TryShow(int itemId)
  31. {
  32. int suitId = 0;
  33. if (itemId > 0)
  34. {
  35. // int index = _waitingToShowList.IndexOf(itemId);
  36. suitId = SuitCfgArray.Instance.GetSuitIdOfItem(itemId);
  37. int index = _waitingToShowSuit.IndexOf(suitId);
  38. if (index >= 0)
  39. {
  40. _waitingToShowSuit.RemoveAt(index);
  41. ViewManager.Show<GetSuitItemVIew>(suitId);
  42. }
  43. }
  44. else if (_waitingToShowSuit.Count > 0)
  45. {
  46. suitId = _waitingToShowSuit[0];
  47. _waitingToShowSuit.RemoveAt(0);
  48. ViewManager.Show<GetSuitItemVIew>(suitId);
  49. }
  50. return suitId;
  51. }
  52. }
  53. }