private void UpdateView() { for (int i = m_saveGameButtonViewModelList.Count - 1; i >= 0; --i) { Destroy(m_saveGameButtonViewModelList[i].gameObject); } m_saveGameButtonViewModelList = new List <SaveGameButtonView>(m_viewModel.SaveGameViewModelList.Count); foreach (SaveGameViewModel sgViewModel in m_viewModel.SaveGameViewModelList) { var buttonView = Instantiate(m_saveGameButtonPrefab, m_contentTransform) as SaveGameButtonView; buttonView.transform.SetAsLastSibling(); buttonView.Init(sgViewModel); SaveGameSession saveGame = sgViewModel.MySaveGame.saveGameSession; buttonView.MyButton.interactable = saveGame.CurrentRound < saveGame.SessionParameters.RoundCount; m_saveGameButtonViewModelList.Add(buttonView); } foreach (var saveGameButton in m_saveGameButtonViewModelList) { if (saveGameButton.MyButton.IsInteractable()) { continue; } saveGameButton.transform.SetAsLastSibling(); } }
/// <summary> /// Returns the save game info of this game instance /// </summary> public SaveGameSession CreateSaveGame() { SaveGameSession sessionSaveGame = new SaveGameSession(); sessionSaveGame.CurrentRound = ActiveRoundIndex; sessionSaveGame.SessionParameters = m_sessionParameter; sessionSaveGame.TransmissionWord = m_TransmissionWord; return(sessionSaveGame); }