component.go 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. // 导入所有配置
  2. package data
  3. import (
  4. mhayaDataConfig "github.com/mhaya/components/data-config"
  5. "github.com/mhaya/game/game_cluster/internal/types"
  6. mhayaMapStructure "github.com/mhaya/extend/mapstructure"
  7. )
  8. var (
  9. achieveTaskConfig = &achieveTaskConfig{}
  10. dailyTaskConfig = &dailyTaskConfig{}
  11. discreteRuleConfig = &discreteRuleConfig{}
  12. drawConfig = &drawConfig{}
  13. itemConfig = &itemConfig{}
  14. levelConfig = &levelConfig{}
  15. rankConfig = &rankConfig{}
  16. rankRewardConfig = &rankRewardConfig{}
  17. sdkConfig = &sdkConfig{}
  18. weeklySignInConfig = &weeklySignInConfig{}
  19. )
  20. func New() *mhayaDataConfig.Component {
  21. dataConfig := mhayaDataConfig.New()
  22. dataConfig.Register(
  23. achieveTaskConfig,
  24. dailyTaskConfig,
  25. discreteRuleConfig,
  26. drawConfig,
  27. itemConfig,
  28. levelConfig,
  29. rankConfig,
  30. rankRewardConfig,
  31. sdkConfig,
  32. weeklySignInConfig,
  33. )
  34. return dataConfig
  35. }
  36. func DecodeData(input interface{}, output interface{}) error {
  37. return mhayaMapStructure.HookDecode(
  38. input,
  39. output,
  40. "json",
  41. types.GetDecodeHooks(),
  42. )
  43. }