LeagueDataManager.cs 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. using System.Collections.Generic;
  2. using ET;
  3. namespace GFGGame
  4. {
  5. public class LeagueDataManager : SingletonBase<LeagueDataManager>
  6. {
  7. public int Type = 2;// 1:已经加入军团 2:未加入军团
  8. public LeagueData LeagueData;//联盟信息
  9. public Dictionary<long, LeagueListData> ListDatas = new Dictionary<long, LeagueListData>();//联盟列表
  10. public Dictionary<long, OtherRoleInfoData> ListApplyDatas = new Dictionary<long, OtherRoleInfoData>();//联盟申请列表
  11. public List<LeagueLogData> ListLogDatas = new List<LeagueLogData>();//日志数据
  12. public void Clear()
  13. {
  14. Type = 2;
  15. ListDatas.Clear();
  16. LeagueData = null;
  17. ListApplyDatas.Clear();
  18. ListLogDatas.Clear();
  19. }
  20. public void UpdateNumeric(LeagueData LeagueData, int type, long value)
  21. {
  22. switch (type)
  23. {
  24. case LeagueNumericType.HallLevel:
  25. LeagueData.HallLevel = (int)value;
  26. break;
  27. case LeagueNumericType.HotelLevel:
  28. LeagueData.HotelLevel = (int)value;
  29. break;
  30. case LeagueNumericType.StoreLevel:
  31. LeagueData.StoreLevel = (int)value;
  32. break;
  33. case LeagueNumericType.LowKeepDay:
  34. LeagueData.LowKeepDay = value;
  35. break;
  36. case LeagueNumericType.LeagueCoin:
  37. LeagueData.LeagueCoin = value;
  38. break;
  39. case LeagueNumericType.DayAdd:
  40. LeagueData.DayAdd = value;
  41. break;
  42. case LeagueNumericType.NeedAudit:
  43. LeagueData.NeedAudit = value == 0 ? false : true; //0不用 1需要
  44. break;
  45. }
  46. }
  47. public long GetNumericValue(LeagueData LeagueData, int type)
  48. {
  49. switch (type)
  50. {
  51. case LeagueNumericType.HallLevel:
  52. return LeagueData.HallLevel;
  53. case LeagueNumericType.HotelLevel:
  54. return LeagueData.HotelLevel;
  55. case LeagueNumericType.StoreLevel:
  56. return LeagueData.StoreLevel;
  57. case LeagueNumericType.LowKeepDay:
  58. return LeagueData.LowKeepDay;
  59. case LeagueNumericType.LeagueCoin:
  60. return LeagueData.LeagueCoin;
  61. case LeagueNumericType.DayAdd:
  62. return LeagueData.DayAdd;
  63. default:
  64. return 0;
  65. }
  66. }
  67. public string GetMemberTitle(int pos)
  68. {
  69. string title = "";
  70. switch (pos)
  71. {
  72. case LeaguePos.Owner:
  73. title = "社长";
  74. break;
  75. case LeaguePos.SubOwner:
  76. title = "副社长";
  77. break;
  78. case LeaguePos.Flower:
  79. title = "御史";
  80. break;
  81. case LeaguePos.Member:
  82. title = "成员";
  83. break;
  84. }
  85. return title;
  86. }
  87. public int GetMyPos()
  88. {
  89. if (LeagueDataManager.Instance.LeagueData.LeagueMemberDatas.TryGetValue(RoleDataManager.roleId, out LeagueMemberData memberData))
  90. {
  91. return memberData.Pos;
  92. }
  93. return LeaguePos.Member;
  94. }
  95. // //判断一个玩家是否是会长副会长
  96. // public bool CheckPlayerIsLeader()
  97. // {
  98. // }
  99. /// <summary>
  100. /// 根据祈福类型获取祈福次数
  101. /// </summary>
  102. /// <returns></returns>
  103. public int GetPrayTimesByType(int prayType)
  104. {
  105. int curCount = 0;
  106. switch (prayType)
  107. {
  108. case LeaguePrayType.First:
  109. curCount = RoleDataManager.LeagueType1PrayTimes;
  110. break;
  111. case LeaguePrayType.Second:
  112. curCount = RoleDataManager.LeagueType2PrayTimes;
  113. break;
  114. case LeaguePrayType.Third:
  115. curCount = RoleDataManager.LeagueType3PrayTimes;
  116. break;
  117. }
  118. return curCount;
  119. }
  120. }
  121. }