league_service.go 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. package mapLeague
  2. import (
  3. "f1-game/nodes/map/internal/db"
  4. mapFacade "f1-game/nodes/map/internal/facade"
  5. leagueAttr "f1-game/nodes/map/league/attr"
  6. leagueBase "f1-game/nodes/map/league/base"
  7. leagueBuild "f1-game/nodes/map/league/build"
  8. leagueMail "f1-game/nodes/map/league/mail"
  9. leagueMember "f1-game/nodes/map/league/member"
  10. leagueQuest "f1-game/nodes/map/league/quest"
  11. leagueStorage "f1-game/nodes/map/league/storage"
  12. cproto "github.com/cherry-game/cherry/net/proto"
  13. )
  14. func OnInitService() {
  15. LeagueServiceRegister(leagueAttr.Service())
  16. LeagueServiceRegister(leagueStorage.Service())
  17. LeagueServiceRegister(leagueQuest.Service())
  18. LeagueServiceRegister(leagueBuild.Service())
  19. LeagueServiceRegister(leagueBase.Service())
  20. LeagueServiceRegister(leagueMember.Service())
  21. LeagueServiceRegister(leagueMail.Service())
  22. }
  23. var leagueServiceList []mapFacade.ILeagueService[*db.MapLeagueTable]
  24. func LeagueServiceRegister(service mapFacade.ILeagueService[*db.MapLeagueTable]) {
  25. leagueServiceList = append(leagueServiceList, service)
  26. }
  27. func LeagueServiceOnInit(leagueTable *db.MapLeagueTable) {
  28. for _, service := range leagueServiceList {
  29. service.OnInit(leagueTable)
  30. }
  31. }
  32. func LeagueServiceOnReset(leagueTable *db.MapLeagueTable) {
  33. for _, service := range leagueServiceList {
  34. service.OnReset(leagueTable)
  35. }
  36. }
  37. func LeagueServicePush(leagueTable *db.MapLeagueTable, session *cproto.Session) {
  38. for _, service := range leagueServiceList {
  39. service.Push(leagueTable, session)
  40. }
  41. }