123456789101112131415161718192021222324252627282930313233343536373839404142 |
- package mhayaActor
- import cfacade "github.com/mhaya/facade"
- var (
- Name = "actor_component"
- )
- type Component struct {
- cfacade.Component
- *System
- actorHandlers []cfacade.IActorHandler
- }
- func New() *Component {
- return &Component{
- System: NewSystem(),
- }
- }
- func (c *Component) Name() string {
- return Name
- }
- func (c *Component) Init() {
- c.System.SetApp(c.App())
- }
- func (c *Component) OnAfterInit() {
- // Register actor
- for _, actor := range c.actorHandlers {
- c.CreateActor(actor.AliasID(), actor)
- }
- }
- func (c *Component) OnStop() {
- c.System.Stop()
- }
- func (c *Component) Add(actors ...cfacade.IActorHandler) {
- c.actorHandlers = append(c.actorHandlers, actors...)
- }
|