talent.go 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. package conv
  2. import (
  3. "encoding/json"
  4. "gadmin/utility"
  5. "github.com/sirupsen/logrus"
  6. )
  7. var Talents = new(cTalents)
  8. type cTalents struct {
  9. version string
  10. lst []*Talent
  11. }
  12. // Talent 前端样式
  13. type Talent struct {
  14. TalentId int `json:"talent_Id"`
  15. TalentName string `json:"talent_name"`
  16. Description string `json:"description"`
  17. Unit int `json:"unit"`
  18. Quality int `json:"quality"`
  19. MaxLevel int `json:"max_level"`
  20. BaseValue string `json:"base_value"`
  21. ValueUp string `json:"value_up"`
  22. }
  23. func (j *cTalents) Extract(version string) {
  24. logrus.Info("cTalents Extract...")
  25. j.setVersion(version).convert().save()
  26. }
  27. func (j *cTalents) setVersion(version string) *cTalents {
  28. j.version = version
  29. return j
  30. }
  31. func (j *cTalents) convert() *cTalents {
  32. b, err := GetUrlBody(j.version, "talent.json")
  33. if err != nil {
  34. logrus.Fatalf("GetUrlBody err:%+v", err)
  35. }
  36. if err = json.Unmarshal(b, &j.lst); err != nil {
  37. logrus.Fatalf("conv.cTalents convert err:%v", err)
  38. }
  39. return j
  40. }
  41. func (j *cTalents) save() {
  42. filePath := utility.LocalJsonPath(j.version, "talent.json")
  43. SaveJsonPath(filePath, j.lst)
  44. }