define.go 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. package gameFacade
  2. import (
  3. facade "f1-game/internal/facade"
  4. "f1-game/nodes/game/internal/db"
  5. ctime "github.com/cherry-game/cherry/extend/time"
  6. cproto "github.com/cherry-game/cherry/net/proto"
  7. )
  8. var (
  9. // Currency currency // 货币
  10. // Item item // 道具
  11. Asset asset // 资产
  12. Hero hero // 英雄
  13. Lord lord // 领主
  14. Equip equip // 装备
  15. Chat chat // 聊天
  16. Lineup lineup // 部队
  17. Vip vip // 会员
  18. )
  19. var (
  20. playerServiceList []facade.IPlayerService[*db.PlayerTable]
  21. )
  22. func ServiceRegister(service facade.IPlayerService[*db.PlayerTable]) {
  23. playerServiceList = append(playerServiceList, service)
  24. }
  25. func ServiceOnLogin(playerTable *db.PlayerTable, session *cproto.Session) {
  26. for _, service := range playerServiceList {
  27. service.OnLogin(playerTable, session)
  28. }
  29. }
  30. func ServiceOnLogined(playerTable *db.PlayerTable, session *cproto.Session) {
  31. for _, service := range playerServiceList {
  32. service.OnLogined(playerTable, session)
  33. }
  34. }
  35. func ServiceOnLogout(playerTable *db.PlayerTable) {
  36. for _, service := range playerServiceList {
  37. service.OnLogout(playerTable)
  38. }
  39. }
  40. func ServiceOnReset(playerTable *db.PlayerTable, time *ctime.CherryTime, byLogin bool) {
  41. for _, service := range playerServiceList {
  42. service.OnReset(playerTable, time, byLogin)
  43. }
  44. }
  45. func ServicePush(playerTable *db.PlayerTable, session *cproto.Session) {
  46. for _, service := range playerServiceList {
  47. service.Push(playerTable, session)
  48. }
  49. }