package mapLeague import ( "f1-game/nodes/map/internal/db" mapFacade "f1-game/nodes/map/internal/facade" leagueAttr "f1-game/nodes/map/league/attr" leagueBase "f1-game/nodes/map/league/base" leagueBuild "f1-game/nodes/map/league/build" leagueMail "f1-game/nodes/map/league/mail" leagueMember "f1-game/nodes/map/league/member" leagueQuest "f1-game/nodes/map/league/quest" leagueStorage "f1-game/nodes/map/league/storage" cproto "github.com/cherry-game/cherry/net/proto" ) func OnInitService() { LeagueServiceRegister(leagueAttr.Service()) LeagueServiceRegister(leagueStorage.Service()) LeagueServiceRegister(leagueQuest.Service()) LeagueServiceRegister(leagueBuild.Service()) LeagueServiceRegister(leagueBase.Service()) LeagueServiceRegister(leagueMember.Service()) LeagueServiceRegister(leagueMail.Service()) } var leagueServiceList []mapFacade.ILeagueService[*db.MapLeagueTable] func LeagueServiceRegister(service mapFacade.ILeagueService[*db.MapLeagueTable]) { leagueServiceList = append(leagueServiceList, service) } func LeagueServiceOnInit(leagueTable *db.MapLeagueTable) { for _, service := range leagueServiceList { service.OnInit(leagueTable) } } func LeagueServiceOnReset(leagueTable *db.MapLeagueTable) { for _, service := range leagueServiceList { service.OnReset(leagueTable) } } func LeagueServicePush(leagueTable *db.MapLeagueTable, session *cproto.Session) { for _, service := range leagueServiceList { service.Push(leagueTable, session) } }