public Area(XmlNode XE) { try { Duty = XE.FindAttribute("Duty"); Name = XE.FindAttribute("Text"); if (Name == string.Empty && isDuty) { Name = Duty; } string ZoneIdVal = XE.FindAttribute("ZoneId").ToUpper(); ZoneId = int.Parse(ZoneIdVal, System.Globalization.NumberStyles.HexNumber); if (isDuty) { XmlNode CXE = XE.FirstChild; try { Tank = byte.Parse(CXE.FindAttribute("Tank")); Healer = byte.Parse(CXE.FindAttribute("Healer")); DPS = byte.Parse(CXE.FindAttribute("DPS")); } catch { Tank = 0; Healer = 0; DPS = 0; } } else { foreach (XmlNode xn in XE.ChildNodes) { if (xn.Name == "FATE") { try { int key = int.Parse(xn.FindAttribute("Id")); if (!FATEList.ContainsKey(key)) { FATEList.Add(key, xn.FindAttribute("Name")); } } catch (Exception ex) { Log.E("돌발임무 추가 오류 : {0}", ex.Message); } } } } } catch (Exception ex) { Log.E("객체 생성 오류 : {0}", ex.GetBaseException().ToString()); } }
public FATE GetFATE(int key) { if (FATEList.ContainsKey(key)) { return(new FATE(key, FATEList[key])); } else { return(new FATE(0, string.Format("알 수 없는 돌발임무 ({0})", key))); } }