/// <summary> /// 创建所有的成就项 /// </summary> private void CreateAchievementItem() { #region 创建json文件 /*UserAchievementData data = new UserAchievementData(); * data.userAchievementList = new List<MissionObject>(); * MissionObject mission = new MissionObject(); * mission.ID = 1; * mission.icon = null; * mission.iconName = "chengjiu1.png"; * mission.title = "成就一"; * mission.description = "完成第八关即可完成此成就!"; * mission.isDone = false; * mission.rewords = new List<RewordObject>(); * RewordObject rewordObject = new RewordObject(); * rewordObject.ID = 1; * rewordObject.icon = null; * rewordObject.iconName = "reword.png"; * rewordObject.title = "奇怪的人头"; * rewordObject.description = "xxxxxxxxxxx"; * RewordObject rewordObject1 = new RewordObject(); * rewordObject1.ID = 2; * rewordObject1.icon = null; * rewordObject1.iconName = "reword.png"; * rewordObject1.title = "奇怪的人头"; * rewordObject1.description = "xxxxxxxxxxx"; * RewordObject rewordObject3 = new RewordObject(); * rewordObject3.ID = 3; * rewordObject3.icon = null; * rewordObject3.iconName = "reword.png"; * rewordObject3.title = "奇怪的人头"; * rewordObject3.description = "xxxxxxxxxxx"; * mission.rewords.Add(rewordObject); * mission.rewords.Add(rewordObject1); * mission.rewords.Add(rewordObject3); * data.userAchievementList.Add(mission); * //print(JsonUtility.ToJson(data));*/ #endregion achievementList = new List <GameObject>(); //读取临时的json文件相当于配表数据 string json = File.ReadAllText(Application.dataPath + "/Resources/Config/UserAchievement.json"); userAchievementData = JsonUtility.FromJson <UserAchievementData>(json); //获取要创建成就项的父节点 //根据临时数据依次创建成就项 foreach (MissionObject item in userAchievementData.userAchievementList) { GameObject achieve = Instantiate(achievementItem, Vector3.zero, Quaternion.identity, parentTrans); //SetAchievementName(achieve, item.title); SetAchievementState(achieve, item, CheckUserAchievementIsFinished(item.ID)); SetEventToButton(achieve, item); achievementList.Add(achieve); } achieveCount.text = isFinishAchieveCount.ToString() + "/" + userAchievementData.userAchievementList.Count; }
/// <summary> /// 初始化任务数据源 /// </summary> /// <param name="taskType">任务类型</param> private void InitUserDataClass(TaskType taskType) { string json = File.ReadAllText(Application.dataPath + "/Resources/Config/TaskConfig.json"); TaskConfig.Instance.Fill(json); userAchievementData = new UserAchievementData(); userAchievementData.userAchievementList = new List <MissionObject>(); taskIdArray = new int[ServerMutually.ResponseMessageFromServer(taskType).Keys.Count]; ServerMutually.ResponseMessageFromServer(taskType).Keys.CopyTo(taskIdArray, 0); for (int i = 0; i < taskIdArray.Length; i++) { MissionObject missionObject = new MissionObject(); missionObject.ID = taskIdArray[i]; missionObject.missionType = GetTaskType(int.Parse(TaskConfig.Instance.GetTaskConfigByIdAndKey(taskIdArray[i], "task_type"))); missionObject.title = TaskConfig.Instance.GetTaskConfigByIdAndKey(taskIdArray[i], "task_name"); missionObject.description = TaskConfig.Instance.GetTaskConfigByIdAndKey(taskIdArray[i], "task_desc"); userAchievementData.userAchievementList.Add(missionObject); } }