chat.go 940 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. package chat
  2. import (
  3. cherryApp "f1-game/internal/cherry_app"
  4. funcLoad "f1-game/internal/component/func_load"
  5. cgops "f1-game/internal/component/gops"
  6. "f1-game/internal/component/redis"
  7. "f1-game/internal/data"
  8. "f1-game/internal/sessions"
  9. "github.com/cherry-game/cherry"
  10. cfacade "github.com/cherry-game/cherry/facade"
  11. )
  12. func Run(node cfacade.INode) {
  13. app := cherry.ConfigureNode(
  14. node,
  15. false,
  16. cherry.Cluster,
  17. )
  18. app.Register(initBeforeFunc())
  19. app.Register(cgops.New())
  20. app.Register(data.NewConfigs(
  21. data.Lua,
  22. data.Const,
  23. data.ChatType,
  24. ))
  25. app.Register(redis.NewClients(
  26. redis.GUID,
  27. redis.Chat,
  28. redis.Game,
  29. ))
  30. app.AddActors(
  31. sessions.NewActor(false),
  32. NewActorGame(),
  33. NewActorGroup(),
  34. NewActorLeague(),
  35. NewActorMap(),
  36. )
  37. app.Startup()
  38. }
  39. func initBeforeFunc() cfacade.IComponent {
  40. fn := func(app cfacade.IApplication) {
  41. cherryApp.Init(app)
  42. }
  43. return funcLoad.New("initBeforeFunc", fn)
  44. }