remote.go 885 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. package actorRemote
  2. import (
  3. cherryApp "f1-game/internal/cherry_app"
  4. "f1-game/internal/constant"
  5. )
  6. var (
  7. GateUser = newGateUser()
  8. )
  9. var (
  10. CenterDev = newCenterDev()
  11. CenterOps = newCenterOps()
  12. CenterPlayer = newCenterPlayer()
  13. )
  14. var (
  15. GameOrder = newGameOrder()
  16. )
  17. var (
  18. GameOps = newGameOps()
  19. GamePlayer = newGamePlayer()
  20. GameMail = newGameMail()
  21. )
  22. var (
  23. Chat = newChat()
  24. )
  25. var (
  26. GenPool = newGenPool()
  27. )
  28. var (
  29. MapPlayer = newMapPlayer()
  30. )
  31. func centerNodeID() string {
  32. member, found := cherryApp.Discovery().Random(constant.NodeCenter)
  33. if !found {
  34. return ""
  35. }
  36. return member.GetNodeID()
  37. }
  38. func chatNodeID(chatID int64) string {
  39. list := cherryApp.Discovery().ListByType(constant.NodeChat)
  40. listLen := len(list)
  41. if listLen < 1 {
  42. return ""
  43. }
  44. if listLen == 1 {
  45. return list[0].GetNodeID()
  46. }
  47. return list[chatID%int64(listLen)].GetNodeID()
  48. }