bool CheckSatisfy_flag(DataMemberInspector term) { var db_flag = SaveDataController.Instance.GetDB_var <FlagDB, SavedDBData_flag>(); var survayData = db_flag.Where(x => x._serchId == term._id).First().flagNum; foreach (var t in term._memberSet) { var staticData = t.data; switch (t._hikaku) { case DataMemberInspector.HIKAKU.EQUAL: if (!(survayData == staticData)) { return(false); } break; case DataMemberInspector.HIKAKU.LESS: if (!(survayData < staticData)) { return(false); } break; case DataMemberInspector.HIKAKU.MORE: if (!(survayData > staticData)) { return(false); } break; } } return(true); }
public static DataMemberInspector SetFlagNum(string id, int Num) { var result = new DataMemberInspector(id); result.AddData("flagNum", Num); return(result); }
bool CheckSatisfy_item(DataMemberInspector term) { var db_item = SaveDataController.Instance.GetDB_var <PartyDB, SavedDBData_party>()[0]; var survayData = db_item.GetHaveItemNum(term._id); foreach (var t in term._memberSet) { var staticData = t.data; switch (t._hikaku) { case DataMemberInspector.HIKAKU.EQUAL: if (!(survayData == staticData)) { return(false); } break; case DataMemberInspector.HIKAKU.LESS: if (!(survayData < staticData)) { return(false); } break; case DataMemberInspector.HIKAKU.MORE: if (!(survayData > staticData)) { return(false); } break; } } return(true); }
public void UpdateData(string id, List <EventDataOperater.ConvertedText> dataSet) { foreach (var data in dataSet) { switch (data._head) { case "text": _codeData._text = string.Join("\n", data._content); break; case "term": _codeData.coalTerm.ResetTerm(); foreach (var con in data._content) { var temp = con.Split(' '); if (temp[0].Equals("ormode", StringComparison.OrdinalIgnoreCase)) //ormodeの設定 { bool flag = temp[1].Equals("true", StringComparison.OrdinalIgnoreCase); _codeData.coalTerm._orMode = flag; } else { int num = int.Parse(temp[2]); var hikaku = DataMemberInspector.CreateHikaku(temp[3]); _codeData.coalTerm.AddTerm(temp[0], temp[1], num, hikaku); } } break; case "next": UpdateData_next(id, data); break; } } }
public static DataMemberInspector AddHaveNum(string id, int num) { var result = new DataMemberInspector(id); var have = SaveDataController.Instance.GetData <ItemDB>(id, "haveNum"); result.AddData("haveNum", have + num); return(result); }
public void SetData <T>(DataMemberInspector data) where T : AbstractDB { foreach (var d in data._memberSet) { SetData <T>(data._id, d.memberName, d.data); //Debug.Log(d.data+":"+d.memberName); } SetMemberSet(); }
public void AddTerm(string id, string member, int data, DataMemberInspector.HIKAKU hikaku) { var target = _termList.Where(x => x._id == id).FirstOrDefault(); if (target == null) { target = new DataMemberInspector(id); } target.AddData(member, data, hikaku); _termList.Add(target); }
public int GetData <T>(DataMemberInspector data) where T : AbstractDB { foreach (var mem in data._memberSet) { var result = GetData <T>(data._id, mem.memberName); //Debug.Log(result+":"+mem.memberName); return(result); } return(-1); }
void SetMemberSet() { _memberSet = new List <DataMemberInspector>(); foreach (var dataList in _saveDataList) { foreach (var data in dataList.Value) { DataMemberInspector temp = null; foreach (var st in data._memberSet_int) { temp = new DataMemberInspector(data._serchId); temp.AddData(st.Key, st.Value, DataMemberInspector.HIKAKU.NONE); } _memberSet.Add(temp); } } }
public void AddTerm(string id, int data, DataMemberInspector.DATATYPE datatype, DataMemberInspector.HIKAKU hikaku) { //内容 var target = _termList.Where(x => x._id == id).FirstOrDefault(); if (target == null) { try { target = new DataMemberInspector(id, datatype); }catch (ArgumentException e) { throw e; } } target.AddData(data, hikaku); _termList.Add(target); }
public void UpdateData(string id, List <EventDataOperater.ConvertedText> dataSet) { foreach (var data in dataSet) { switch (data._head) { case "text": _codeData._text = string.Join("\n", data._content); break; case "term": _codeData.coalTerm.ResetTerm(); foreach (var con in data._content) { var temp = con.Split(' '); if (temp[0].Equals("ormode", StringComparison.OrdinalIgnoreCase)) //ormodeの設定 { try { bool flag = temp[1].Equals("true", StringComparison.OrdinalIgnoreCase); _codeData.coalTerm._orMode = flag; if (!flag && !temp[1].Equals("false", StringComparison.OrdinalIgnoreCase)) //falseを明示したとき以外のfalse { ThrowErrorLog(null, "", "データ内容に誤りがあります", name, $"term,<{con}>"); } }catch (IndexOutOfRangeException e) { ThrowErrorLog(e, "", "文法に誤りがあります", name, $"term,<{con}>"); } } else { try { int num = int.Parse(temp[2]); var datatype = DataMemberInspector.CreateDataType(temp[0]); var hikaku = DataMemberInspector.CreateHikaku(temp[3]); _codeData.coalTerm.AddTerm(temp[1], num, datatype, hikaku); } catch (Exception e) when(e is IndexOutOfRangeException || e is InvalidOperationException || e is FormatException) { ThrowErrorLog(e, "", "文法に誤りがあります", name, $"term,<{con}>"); } catch (Exception e) when(e is ArgumentException) { ThrowErrorLog(e, "", "データ内容に誤りがあります", name, $"term,<{con}>"); } } } break; case "next": UpdateData_next(id, data); break; default: ThrowErrorLog(null, "", "括弧の前のやつが不正な値です", name, data._head); break; } } }