public void UpdateAchieveInfoTable(SAchieveInfo info) { if (m_sAchieveInfoTable.ContainsKey(info.achCode)) { m_sAchieveInfoTable[info.achCode] = info; } else { m_sAchieveInfoTable.Add(info.achCode, info); } }
public bool GetDailyTabAchieveInfoList(out List <AchievementInfo>[] infoListArray) { infoListArray = new List <AchievementInfo> [3]; infoListArray[0] = new List <AchievementInfo>(); infoListArray[1] = new List <AchievementInfo>(m_achieveInfoTable[ACHIEVE_TYPE.TYPE_DAILY_RANDOM]); infoListArray[2] = new List <AchievementInfo>(m_achieveInfoTable[ACHIEVE_TYPE.TYPE_WEEKLY_RANDOM]); for (int i = 1; i < 3; i++) { for (int j = infoListArray[i].Count - 1; j >= 0; j--) { SAchieveInfo sInfo = GetServerAchieveInfo(infoListArray[i][j].index); if (sInfo.GetProgressType.Equals(ACHIEVE_PROGRESS_TYPE.TYPE_CLEAR)) { infoListArray[0].Add(infoListArray[i][j]); infoListArray[i].RemoveAt(j); } } } return(true); }
public void UpdateItem(AchievementInfo info, Vector3 position, bool isLastPosition = false) { m_achieveInfo = info; m_serverInfo = AchievementManager.instance.GetServerAchieveInfo(info.index); m_itemIndex = info.rewardIndex; m_transform.localPosition = position; m_spriteArray[(int)SPRITE_TYPE.TYPE_LINE].gameObject.SetActive(!isLastPosition); bool isActive = !m_serverInfo.GetProgressType.Equals(ACHIEVE_PROGRESS_TYPE.TYPE_NONE); m_viewGroup.SetActive(isActive); m_hideGroup.SetActive(!isActive); #region Info UpdateTitleIcon(info); int completeValue = m_serverInfo.GetProgressType.Equals(ACHIEVE_PROGRESS_TYPE.TYPE_COMPLETE) ? info.value : m_serverInfo.achVal; m_labelArray[(int)LABEL_TYPE.TYPE_TITLE].text = info.GetTitle; m_labelArray[(int)LABEL_TYPE.TYPE_DESC].text = info.GetDesc; m_labelArray[(int)LABEL_TYPE.TYPE_HIDE_DESC].text = info.hintDesc; m_labelArray[(int)LABEL_TYPE.TYPE_SLIDER_VALUE].text = string.Format("{0}/{1}", completeValue, info.value); m_slider.value = (float)completeValue / (float)info.value; #endregion #region Reward UpdateRewardIcon(info); UpdateCompleteButton(m_serverInfo.GetProgressType.Equals(ACHIEVE_PROGRESS_TYPE.TYPE_CLEAR), m_serverInfo.GetProgressType.Equals(ACHIEVE_PROGRESS_TYPE.TYPE_COMPLETE)); #endregion SetActive(true); }