package mapFacade import ( facade "f1-game/internal/facade" "f1-game/nodes/map/internal/db" ctime "github.com/cherry-game/cherry/extend/time" cproto "github.com/cherry-game/cherry/net/proto" ) var ( Storage IMapStorage // 货币 ) var ( playerServiceList []facade.IPlayerService[*db.MapPlayerTable] leagueServiceList []ILeagueService[*db.MapLeagueTable] ) func ServiceRegister(service facade.IPlayerService[*db.MapPlayerTable]) { playerServiceList = append(playerServiceList, service) } func ServiceOnLogin(playerTable *db.MapPlayerTable, session *cproto.Session) { for _, service := range playerServiceList { service.OnLogin(playerTable, session) } } func ServiceOnLogined(playerTable *db.MapPlayerTable, session *cproto.Session) { for _, service := range playerServiceList { service.OnLogined(playerTable, session) } } func ServiceOnLogout(playerTable *db.MapPlayerTable) { for _, service := range playerServiceList { service.OnLogout(playerTable) } } func ServiceOnReset(playerTable *db.MapPlayerTable, time *ctime.CherryTime, byLogin bool) { for _, service := range playerServiceList { service.OnReset(playerTable, time, byLogin) } } func ServicePush(playerTable *db.MapPlayerTable, session *cproto.Session) { for _, service := range playerServiceList { service.Push(playerTable, session) } } func LeagueServiceRegister(service ILeagueService[*db.MapLeagueTable]) { leagueServiceList = append(leagueServiceList, service) } func LeagueServiceOnInit(leagueTable *db.MapLeagueTable) { for _, service := range leagueServiceList { service.OnInit(leagueTable) } } func LeagueServiceOnReset(leagueTable *db.MapLeagueTable, dayReset bool, weekReset bool) { for _, service := range leagueServiceList { service.OnReset(leagueTable, dayReset, weekReset) } } func LeagueServicePush(leagueTable *db.MapLeagueTable, session *cproto.Session) { for _, service := range leagueServiceList { service.Push(leagueTable, session) } }