public List <DataStage> stageList; //보유한 스테이지 public DataChapter(int number, bool isHard, NetData.StageStarRewardData rewardData, List <DataStage> stageList) //int totalClearGrade, { IsHard = isHard; this.name = _LowDataMgr.instance.GetStringStageData(stageList[0]._StageLowData.ChapName); GetClearGrade = rewardData.Value; StarReward = _LowDataMgr.instance.GetLowDataChapterReward((byte)number, (byte)(IsHard ? 2 : 1)); CurRewardBoxID = rewardData.BoxID; this.number = number; this.stageList = stageList; }
/// <summary> 테이블 데이터 셋팅 </summary> void SetDataTable(List <DataChapter> dataList, uint addStageId) { Dictionary <uint, NetData.ClearSingleStageData> clearStageDic = NetData.instance.GetUserInfo().ClearSingleStageDic; bool curStage = false; int chapCount = addStageId >= 10000 ? 6 : (int)SystemDefine.MaxChapter; int stageCount = addStageId >= 10000 ? 3 : (int)SystemDefine.MaxChapter; //일반 스테이지 for (int i = 0; i < /*SystemDefine.MaxChapter*/ chapCount; i++) { int chapterNumber = i + 1; int totalClearGrade = 0; List <DataStage> stageList = new List <DataStage>(); for (int j = 0; j < /*SystemDefine.MaxStage*/ stageCount; j++) { DataStage data = new DataStage(); byte[] clearGrade = new byte[3]; short state = 0;//1;//클리어한 지역. uint stageId = addStageId + (uint)((chapterNumber * 100) + (j + 1)); int clearCount = 0; NetData.ClearSingleStageData clearStageData = null; if (!clearStageDic.TryGetValue(stageId, out clearStageData)) { //추후에 살려놔야함 지금은 모든걸 오픈 if (!curStage) { curStage = true; state = 0; } else//활성화 되지 않은 지역. { state = -1; } } else { state = 1; clearGrade[0] = clearStageData.Clear_0; clearGrade[1] = clearStageData.Clear_1; clearGrade[2] = clearStageData.Clear_2; totalClearGrade += clearStageData.Clear_0 + clearStageData.Clear_1 + clearStageData.Clear_2; clearCount = clearStageData.DailyClearCount; } if (data.InitStageData(stageId, clearGrade, state, clearCount)) { stageList.Add(data); } else//어려움일 경우 이럴수 있다 아니라면 문제가있는것. { break; } } if (stageList.Count <= 0) { break; } NetData.StageStarRewardData rewardData = new NetData.StageStarRewardData(); DataChapter dataChap = new DataChapter(chapterNumber, stageList[0]._StageLowData.type == 2, rewardData, stageList);//totalClearGrade, dataList.Add(dataChap); } }