item.go 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  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. ItemIDArm201 int32 = 201 // 民兵
  20. ItemIDArm202 int32 = 202 // 精锐兵1
  21. ItemIDArm203 int32 = 203 // 精锐兵2
  22. ItemIDArm204 int32 = 204 // 精锐兵3
  23. ItemIDArm205 int32 = 205 // 精锐兵4
  24. ItemIDArm206 int32 = 206 // 精锐兵5
  25. ItemIDLordExp int32 = 10001 // 领主经验
  26. ItemIDFeat int32 = 10104 // 个人功勋
  27. )
  28. var (
  29. ItemMaxNumList = []int32{ // 有上限货币道具ID列表
  30. ItemIDWood,
  31. ItemIDIron,
  32. ItemIDStone,
  33. ItemIDGrain,
  34. }
  35. OpsItemInfoList = []int32{ // 后台需要展示的道具ID列表
  36. ItemIDSilver,
  37. ItemIDGold,
  38. ItemIDF,
  39. ItemIDStamina,
  40. ItemIDWood,
  41. ItemIDIron,
  42. ItemIDStone,
  43. ItemIDGrain,
  44. }
  45. // TOD 暂时先这里处理 Map currency id list
  46. MapCurrencyIDList = []int32{
  47. ItemIDWood,
  48. ItemIDIron,
  49. ItemIDStone,
  50. ItemIDGrain,
  51. ItemIDF,
  52. ItemIDArm201,
  53. ItemIDArm202,
  54. ItemIDArm203,
  55. ItemIDArm204,
  56. ItemIDArm205,
  57. ItemIDArm206,
  58. }
  59. // 个人货币转换为联盟货币(交税映射)
  60. RatioConvertMap = map[int32]int32{
  61. ItemIDWood: LeagueItemIDWood,
  62. ItemIDIron: LeagueItemIDIron,
  63. ItemIDStone: LeagueItemIDStone,
  64. ItemIDGrain: LeagueItemIDGrain,
  65. ItemIDF: LeagueItemIDF,
  66. }
  67. )
  68. var (
  69. GenPoolTimeType_Hour int32 = 1 // 每小时
  70. GenPoolTimeType_Day int32 = 2 // 每天
  71. GenPoolTimeType_Week int32 = 3 // 每周
  72. GenPoolTimeType_Month int32 = 4 // 每月
  73. )
  74. var (
  75. MedicineType_Energy int32 = 1 // 体力药
  76. MedicineType_Troops int32 = 2 // 补兵药
  77. MedicineType_Injured int32 = 3 // 重伤药
  78. )
  79. // 判断是否是地图货币
  80. func IsMapCurrency(id int32) bool {
  81. return slices.Contains(MapCurrencyIDList, id)
  82. }
  83. // 获取交税联盟映射
  84. func GetLeagueRatioItemID(id int32) (int32, bool) {
  85. leagueItemID, found := RatioConvertMap[id]
  86. return leagueItemID, found
  87. }