private void OnLoadGameStateDataMessageReceived(GameStateDataMessage message)
        {
            if (this.m_sessionManager.TryGet(message.SessionId, out HomeSession session))
            {
                switch (message.State.GetGameStateType())
                {
                case GameStateType.HOME:
                    session.SetGameMode(GameMode.LoadHomeState(session, (GameHomeState)message.State));
                    break;

                case GameStateType.NPC_ATTACK:
                    session.SetGameMode(GameMode.LoadNpcAttackState(session, (GameNpcAttackState)message.State));
                    break;

                case GameStateType.NPC_DUEL:
                    session.SetGameMode(GameMode.LoadNpcDuelState(session, (GameNpcDuelState)message.State));
                    break;

                case GameStateType.MATCHED_ATTACK:
                    session.SetGameMode(GameMode.LoadMatchedAttackState(session, (GameMatchedAttackState)message.State));
                    break;

                case GameStateType.VISIT:
                    session.SetGameMode(GameMode.LoadVisitAttackState(session, (GameVisitState)message.State));
                    break;

                default:
                    Logging.Error("GameModeCluster.onLoadGameStateDataMessageReceived: unknown game state: " + message.State.GetGameStateType());
                    break;
                }
            }
        }
        private void OnLoadGameStateDataMessageReceived(GameStateDataMessage message)
        {
            if (this.m_sessionManager.TryGet(message.SessionId, out BattleSession session))
            {
                switch (message.State.GetGameStateType())
                {
                case GameStateType.CHALLENGE_ATTACK:
                    session.SetGameMode(GameMode.LoadChallengeAttackState(session, (GameChallengeAttackState)message.State));
                    break;

                case GameStateType.FAKE_ATTACK:
                    session.SetGameMode(GameMode.LoadFakeAttackState(session, (GameFakeAttackState)message.State));
                    break;

                default:
                    Logging.Error("GameModeCluster.onLoadGameStateDataMessageReceived: unknown game state: " + message.State.GetGameStateType());
                    break;
                }
            }
        }