item.go 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. package enum
  2. import "slices"
  3. type ItemUseType int32 // 道具池使用类型
  4. const (
  5. ItemUseRandom ItemUseType = 1 // 权重随机一项
  6. ItemUseGetAll ItemUseType = 2 // 获取全部
  7. ItemUseSelectOne ItemUseType = 3 // 玩家选择一项
  8. )
  9. // 货币类型的id
  10. const (
  11. ItemIDSilver int32 = 1 // 银币
  12. ItemIDGold int32 = 2 // 金币
  13. ItemIDF int32 = 3 // F币
  14. ItemIDStamina int32 = 5 // 精力
  15. ItemIDWood int32 = 101 // 木材
  16. ItemIDIron int32 = 102 // 铁矿
  17. ItemIDStone int32 = 103 // 石料
  18. ItemIDGrain int32 = 104 // 粮食
  19. ItemIDSeasonPoint int32 = 1001 // 赛季积分
  20. ItemIDArm201 int32 = 201 // 民兵
  21. ItemIDArm202 int32 = 202 // 精锐兵1
  22. ItemIDArm203 int32 = 203 // 精锐兵2
  23. ItemIDArm204 int32 = 204 // 精锐兵3
  24. ItemIDArm205 int32 = 205 // 精锐兵4
  25. ItemIDArm206 int32 = 206 // 精锐兵5
  26. ItemIDLordExp int32 = 10001 // 领主经验
  27. ItemIDFeat int32 = 10104 // 个人功勋
  28. )
  29. var (
  30. ItemMaxNumList = []int32{ // 有上限货币道具ID列表
  31. ItemIDWood,
  32. ItemIDIron,
  33. ItemIDStone,
  34. ItemIDGrain,
  35. }
  36. OpsItemInfoList = []int32{ // 后台需要展示的道具ID列表
  37. ItemIDSilver,
  38. ItemIDGold,
  39. ItemIDF,
  40. ItemIDStamina,
  41. ItemIDWood,
  42. ItemIDIron,
  43. ItemIDStone,
  44. ItemIDGrain,
  45. }
  46. // TOD 暂时先这里处理 Map currency id list
  47. MapCurrencyIDList = []int32{
  48. ItemIDWood,
  49. ItemIDIron,
  50. ItemIDStone,
  51. ItemIDGrain,
  52. ItemIDArm201,
  53. ItemIDArm202,
  54. ItemIDArm203,
  55. ItemIDArm204,
  56. ItemIDArm205,
  57. ItemIDArm206,
  58. ItemIDSeasonPoint,
  59. ItemIDFeat,
  60. }
  61. // 个人货币转换为联盟货币(交税映射)
  62. RatioConvertMap = map[int32]int32{
  63. ItemIDWood: LeagueItemIDWood,
  64. ItemIDIron: LeagueItemIDIron,
  65. ItemIDStone: LeagueItemIDStone,
  66. ItemIDGrain: LeagueItemIDGrain,
  67. ItemIDF: LeagueItemIDF,
  68. }
  69. // 地图侦察资源列表
  70. MapScoutItemIDList = []int32{
  71. ItemIDWood,
  72. ItemIDIron,
  73. ItemIDStone,
  74. ItemIDGrain,
  75. }
  76. )
  77. var (
  78. GenPoolTimeType_Hour int32 = 1 // 每小时
  79. GenPoolTimeType_Day int32 = 2 // 每天
  80. GenPoolTimeType_Week int32 = 3 // 每周
  81. GenPoolTimeType_Month int32 = 4 // 每月
  82. )
  83. var (
  84. MedicineType_Energy int32 = 1 // 体力药
  85. MedicineType_Troops int32 = 2 // 补兵药
  86. MedicineType_Injured int32 = 3 // 重伤药
  87. )
  88. // 判断是否是地图货币
  89. func IsMapCurrency(id int32) bool {
  90. return slices.Contains(MapCurrencyIDList, id)
  91. }
  92. // 获取交税联盟映射
  93. func GetLeagueRatioItemID(id int32) (int32, bool) {
  94. leagueItemID, found := RatioConvertMap[id]
  95. return leagueItemID, found
  96. }