示例#1
0
        public async Task <bool> Init()
        {
            m_GMainEntry    = GrainFactory.GetGrain <IMainEntry>(0);
            m_INetUserEntry = await m_GMainEntry.GetINetUserEntry();

            m_TableRoomInfo = new TableRoomInfo();

            m_TableRoomInfo.TableRoomState = ETableRoomState.ERoom_InActive;
            m_TableRoomInfo.IMaxRoomPlayer = GameConstant.IMaxTableRoomPlayer;
            m_TableRoomInfo.Ls_User.Clear();
            m_TableRoomInfo.Id          = this.GetPrimaryKeyString();
            m_TableRoomInfo.RoomOwnerId = string.Empty;


            {
                TableRoomState = ETableRoomState.ERoom_InActive;
                var tr_idle     = new TR_Idle();
                var tr_ready    = new TR_Ready();
                var tr_loading  = new TR_Loading();
                var tr_ingame   = new TR_InGame();
                var tr_gameover = new TR_GameOver();
                var tr_inactive = new TR_InActive();
                var tr_cleanup  = new TR_CleanUp();
                m_Fsm = new Fsm <GTableRoom>(this.GetType().FullName, this,
                                             tr_inactive, tr_idle, tr_ready, tr_loading, tr_ingame, tr_gameover, tr_cleanup);
                m_Fsm.Start <TR_InActive>();
            }
            Log.Debug($"TableRoom Init {m_TableRoomInfo.Id}");
            var bret = true;

            return(bret);//Task.FromResult(bret);
        }
示例#2
0
 public Task <INetUserEntry> GetINetUserEntry()
 {
     if (m_INetUserEntry == null)
     {
         m_INetUserEntry = GrainFactory.GetGrain <INetUserEntry>(0);
     }
     return(Task.FromResult(m_INetUserEntry));
 }
示例#3
0
        public override bool Init()
        {
            var bret = base.Init();

            m_IClusterClient  = InitialiseClient();
            m_IMainEntry      = m_IClusterClient.GetGrain <IMainEntry>(0);
            m_INetUserEntry   = m_IMainEntry.GetINetUserEntry().Result;
            m_ITableRoomEntry = m_IMainEntry.GetITableRoomEntry().Result;

            Log.Debug("SiloClientModule:Init");

            return(bret);
        }