void ResetConnectingState() { ConnectState = eConnectState.idle; PlayerInfo = null; #if !FINAL_BUILD CheatCommandHandlers.Uninitialize(); #endif }
void OnConnect(C2G.Connect packet, C2G.ConnectAck ack) { Debug.Log("OnConnect : "); DailyIndex = ack.daily_index; WeeklyIndex = ack.weekly_index; ServerTimeSpan = ack.server_time - DateTime.Now; GameConfig.Instance.Init(ack.config_values); EventHottimeManager.Instance.Init(ack.events); if (ack.info_files != null) { SHSavedData.Instance.SaveGameInfo(ack.info_files, ack.info_version); } SHSavedData.Instance.LoadData(); PlayerInfo = new ClientPlayerData(ack.player_info); GuildManager.Instance.SetGuildInfo(ack.guild); #if !FINAL_BUILD CheatCommandHandlers.Uninitialize(); if (PlayerInfo.can_cheat == true) { CheatCommandHandlers.Initialize(); } #endif QuestManager.Instance.Init(ack.player_info.quests); if (ack.detail_data != null) { SaveDataManger.Instance.InitFromData(ack.detail_data); } else { if (SaveDataManger.Instance.InitFromFile() == false) { C2G.Connect _Connect = new C2G.Connect(); _Connect.request_info = true; _Connect.request_data = true; game_server.JsonAsync <C2G.Connect, C2G.ConnectAck>(_Connect, OnConnect); return; } } switch (ack.player_info.unread_mail) { case pe_UnreadMailState.MainMenuOpen: SetUnreadMail(pe_UnreadMailState.MainMenuOpen); break; case pe_UnreadMailState.UnreadMail: SetUnreadMail(pe_UnreadMailState.UnreadMail); break; } if (string.IsNullOrEmpty(PlayerInfo.nickname) == true) { Popup.Instance.Show(ePopupMode.Nickname, false, new EventDelegate.Callback(OnNicknameSetCallback)); } else { ConnectState = eConnectState.connected; ChattingMain.Instance.Init(); } }