// 기본정보셋팅 public ContentsEventGroup(Hashtable data) { EventInfoList.Clear(); // 셋팅 Name = data["name"].ToString(); EventKey = uint.Parse(data["eventKey"].ToString()); uint contentsId = uint.Parse(data["eventType"].ToString()); ContentsType = (EContentsEvent)contentsId; OpenDungeon = DataDungeon.GetByID(data["openDungeonID"].ToString()); StartDate = DateTime.ParseExact((string)data["startDateTime"], PARSE_STRING_DATE, null); EndDate = DateTime.ParseExact((string)data["endDateTime"], PARSE_STRING_DATE, null); // 기간별 셋팅 Hashtable dayTable = hash["dayTable"] as Hashtable; for (int day = (int)EDayCountOfWeek.Day1; day <= (int)EDayCountOfWeek.Day7; day++) { // 해당 요일 이벤트 체크 if (dayTable.ContainsKey(day.ToString()) == false) { continue; } ContentsEventInfo eventInfo = new ContentsEventInfo(key, dayTable[day.ToString()]); EventInfoList.Add(eventInfo); } }
// Set Event Mission(미션키로 안에 실질적인 내용물 셋팅, 다른 컨텐츠 같은 미션키 존재) static public void SetMission(Hashtable data) { if (data == null) { return; } for (int i = 0; i < AllEventGroupList.Count; i++) { for (int j = 0; j < AllEventGroupList[i].EventInfoList.Count; j++) { ContentsEventInfo info = AllEventGroupList[i].EventInfoList[j]; string key = info.MissionKey.ToString(); if (data.ContainsKey(key)) { Hashtable missionData = (Hashtable)data[key]; info.UpdateMission(missionData); info.UpdateCompleteInfo(); } } } }