DBGrowLvItem ReadData(uint grow_type, uint level) { uint uid = grow_type + level * 100; string query = string.Format("SELECT * FROM {0} WHERE {0}.{1}=\"{2}\" AND {0}.{3}=\"{4}\"", mTableName, "type", grow_type, "lv", level); var reader = DBManager.Instance.ExecuteSqliteQueryToReader(GlobalConfig.DBFile, mTableName, query); if (reader == null) { mInfos[uid] = null; return(null); } if (!reader.HasRows || !reader.Read()) { mInfos[uid] = null; reader.Close(); reader.Dispose(); return(null); } DBGrowLvItem info = new DBGrowLvItem(); info.GrowType = DBTextResource.ParseUI_s(GetReaderString(reader, "type"), 0); info.Lv = DBTextResource.ParseUI_s(GetReaderString(reader, "lv"), 0); info.Exp = DBTextResource.ParseUI_s(GetReaderString(reader, "exp"), 0); info.Cost = DBTextResource.ParseDBGoodsItem(GetReaderString(reader, "cost")); info.GetExp = DBTextResource.ParseUI_s(GetReaderString(reader, "get_exp"), 0); info.AttrArray = DBTextResource.ParseDBAttrItems(GetReaderString(reader, "attr")); //属性加成 mInfos[uid] = info; reader.Close(); reader.Dispose(); return(info); }
public DBPetStepItem GetOneInfo(uint pet_id, uint step) { OneDBPetStep one_pet_step; if (!mInfos.TryGetValue(pet_id, out one_pet_step)) { one_pet_step = new OneDBPetStep(); one_pet_step.Id = pet_id; one_pet_step.OneDBPetStepArray = new Dictionary <uint, DBPetStepItem>(); mInfos.Add(one_pet_step.Id, one_pet_step); } Dictionary <uint, DBPetStepItem> dic = one_pet_step.OneDBPetStepArray; DBPetStepItem info = null; if (!dic.TryGetValue(step, out info)) { string query_str = string.Format("SELECT * FROM {0} WHERE {0}.{1}=\"{2}\" AND {0}.{3}=\"{4}\" ", mTableName, "id", pet_id.ToString(), "step", step.ToString()); var table_reader = DBManager.Instance.ExecuteSqliteQueryToReader(mFileName, mTableName, query_str); if (table_reader == null) { dic[step] = null; return(null); } if (!table_reader.HasRows) { dic[step] = null; table_reader.Close(); table_reader.Dispose(); return(null); } if (!table_reader.Read()) { dic[step] = null; table_reader.Close(); table_reader.Dispose(); return(null); } info = new DBPetStepItem(); info.Id = DBTextResource.ParseUI_s(GetReaderString(table_reader, "id"), 0); info.Step = DBTextResource.ParseUI_s(GetReaderString(table_reader, "step"), 0); info.SelfAttr = DBTextResource.ParseDBAttrItems(GetReaderString(table_reader, "self_attr")); info.OwnerAttr = DBTextResource.ParseDBAttrItems(GetReaderString(table_reader, "owner_attr")); info.CostArray = DBTextResource.ParseDBGoodsItem(GetReaderString(table_reader, "cost")); dic.Add(step, info); table_reader.Close(); table_reader.Dispose(); Debug.Log("load pet step " + pet_id + " " + step); } return(info); }
protected override void ParseData(SqliteDataReader reader) { if (reader == null || !reader.HasRows) { return; } mInfos.Clear(); mSortInfos.Clear(); while (reader.Read()) { var tmp_info = new TrialBossItem(); tmp_info.DgnId = DBTextResource.ParseUI(GetReaderString(reader, "dgn_id")); //副本ID tmp_info.TrialType = DBTextResource.ParseUI(GetReaderString(reader, "type")); tmp_info.Rank = DBTextResource.ParseUI(GetReaderString(reader, "rank")); tmp_info.ActorId = DBTextResource.ParseUI(GetReaderString(reader, "actor_id")); tmp_info.ShowAward = DBTextResource.ParseDBGoodsItem(GetReaderString(reader, "show_award")); tmp_info.ShowAssistAward = DBTextResource.ParseDBGoodsItem(GetReaderString(reader, "show_assist_award")); tmp_info.ModelCameraOffset = DBTextResource.ParseVector3(GetReaderString(reader, "model_camera_offset")); tmp_info.DefaultAngles = DBTextResource.ParseVector3(GetReaderString(reader, "default_angles")); tmp_info.CameraViewField = DBTextResource.ParseF(GetReaderString(reader, "camera_view_field")); tmp_info.CameraRotate = DBTextResource.ParseVector3(GetReaderString(reader, "camera_rotate")); tmp_info.DefaultActionName = GetReaderString(reader, "default_action_name"); tmp_info.Icon = GetReaderString(reader, "icon"); if (mInfos.ContainsKey(tmp_info.DgnId) == false) { mInfos.Add(tmp_info.DgnId, tmp_info); if (mSortInfos.ContainsKey(tmp_info.TrialType) == false) { mSortInfos.Add(tmp_info.TrialType, new List <TrialBossItem>()); } mSortInfos[tmp_info.TrialType].Add(tmp_info); } else { GameDebug.LogError("DBTrialBoss contain the same info; Dgn_id = " + tmp_info.DgnId); } } foreach (var item in mSortInfos) { mSortInfos[item.Key].Sort((a, b) => { if (a.Rank < b.Rank) { return(-1); } else if (a.Rank > b.Rank) { return(1); } return(0); }); } }
//protected override void ParseData(SqliteDataReader reader) //{ // mInfos.Clear(); // DBPetQualItem info; // if (reader != null) // { // if (reader.HasRows == true) // { // while (reader.Read()) // { // info = new DBPetQualItem(); // info.Id = DBTextResource.ParseUI_s(GetReaderString(reader, "id"), 0); // info.Qual = DBTextResource.ParseUI_s(GetReaderString(reader, "qual"), 0); // info.Exp = DBTextResource.ParseUI_s(GetReaderString(reader, "exp"), 0); // info.GetExp = DBTextResource.ParseUI_s(GetReaderString(reader, "get_exp"), 0); // info.OwnerAttr = DBTextResource.ParseDBAttrItems(GetReaderString(reader, "attr")); // info.CostArray = DBTextResource.ParseDBGoodsItem(GetReaderString(reader, "cost")); // if (mInfos.ContainsKey(info.Id) == false) // { // OneDBPetQual one_pet_qual = new OneDBPetQual(); // one_pet_qual.Id = info.Id; // one_pet_qual.MaxQual = 0; // one_pet_qual.OneDBPetQualArray = new Dictionary<uint, DBPetQualItem>(); // mInfos.Add(one_pet_qual.Id, one_pet_qual); // } // if (mInfos[info.Id].MaxQual < info.Qual) // mInfos[info.Id].MaxQual = info.Qual; // mInfos[info.Id].OneDBPetQualArray[info.Qual] = info; // } // } // } //} public DBPetQualItem GetOneInfo(uint pet_id, uint qual) { Dictionary <uint, DBPetQualItem> dic; if (!mInfosDic.TryGetValue(pet_id, out dic)) { dic = new Dictionary <uint, DBPetQualItem>(); mInfosDic.Add(pet_id, dic); } DBPetQualItem item; if (!dic.TryGetValue(qual, out item)) { string query_str = string.Format("SELECT * FROM {0} WHERE {0}.{1}=\"{2}\" AND {0}.{3}=\"{4}\" ", PetQualTableName, "id", pet_id.ToString(), "qual", qual.ToString()); var table_reader = DBManager.Instance.ExecuteSqliteQueryToReader(GlobalConfig.DBFile, PetQualTableName, query_str); if (table_reader == null) { dic[qual] = null; return(null); } if (!table_reader.HasRows) { dic[qual] = null; table_reader.Close(); table_reader.Dispose(); return(null); } if (!table_reader.Read()) { dic[qual] = null; table_reader.Close(); table_reader.Dispose(); return(null); } item = new DBPetQualItem(); item.Id = DBTextResource.ParseUI_s(GetReaderString(table_reader, "id"), 0); item.Qual = DBTextResource.ParseUI_s(GetReaderString(table_reader, "qual"), 0); item.Exp = DBTextResource.ParseUI_s(GetReaderString(table_reader, "exp"), 0); item.GetExp = DBTextResource.ParseUI_s(GetReaderString(table_reader, "get_exp"), 0); item.OwnerAttr = DBTextResource.ParseDBAttrItems(GetReaderString(table_reader, "attr")); item.CostArray = DBTextResource.ParseDBGoodsItem(GetReaderString(table_reader, "cost")); dic.Add(qual, item); table_reader.Close(); table_reader.Dispose(); } return(item); }
/// <summary> /// 通过csv_id来获取指定的套装精炼数据 /// </summary> /// <param name="id"></param> /// <returns></returns> public DBSuitRefineItem GetData(string id) { DBSuitRefineItem ad = null; if (data.TryGetValue(id, out ad)) { return(ad); } string query_str = string.Format("SELECT * FROM {0} WHERE {0}.{1}=\"{2}\"", mTableName, "csv_id", id); var table_reader = DBManager.Instance.ExecuteSqliteQueryToReader(GlobalConfig.DBFile, mTableName, query_str); if (table_reader == null) { data[id] = null; return(null); } if (!table_reader.HasRows) { data[id] = null; table_reader.Close(); table_reader.Dispose(); return(null); } if (!table_reader.Read()) { data[id] = null; table_reader.Close(); table_reader.Dispose(); return(null); } ad = new DBSuitRefineItem(); ad.Id = GetReaderString(table_reader, "csv_id"); ad.Pos = DBTextResource.ParseUI(GetReaderString(table_reader, "pos")); ad.Step = DBTextResource.ParseUI(GetReaderString(table_reader, "step")); ad.Level = DBTextResource.ParseUI(GetReaderString(table_reader, "lv")); ad.Cost = DBTextResource.ParseDBGoodsItem(GetReaderString(table_reader, "costs")); ad.Addition = GetReaderUint(table_reader, "addition"); data[ad.Id] = ad; table_reader.Close(); table_reader.Dispose(); return(ad); }
protected override void ParseData(SqliteDataReader reader) { mInfos.Clear(); mCostInfos.Clear(); DBPetStepItem info; if (reader != null) { if (reader.HasRows == true) { while (reader.Read()) { info = new DBPetStepItem(); info.Id = DBTextResource.ParseUI_s(GetReaderString(reader, "id"), 0); info.Step = DBTextResource.ParseUI_s(GetReaderString(reader, "step"), 0); info.SelfAttr = DBTextResource.ParseDBAttrItems(GetReaderString(reader, "self_attr")); info.OwnerAttr = DBTextResource.ParseDBAttrItems(GetReaderString(reader, "owner_attr")); info.CostArray = DBTextResource.ParseDBGoodsItem(GetReaderString(reader, "cost")); if (mInfos.ContainsKey(info.Id) == false) { OneDBPetStep one_pet_step = new OneDBPetStep(); one_pet_step.Id = info.Id; //one_pet_step.MaxStep = 0; one_pet_step.OneDBPetStepArray = new Dictionary <uint, DBPetStepItem>(); mInfos.Add(one_pet_step.Id, one_pet_step); } //if (mInfos[info.Id].MaxStep < info.Step) // mInfos[info.Id].MaxStep = info.Step; mInfos[info.Id].OneDBPetStepArray[info.Step] = info; if (info.CostArray != null && info.CostArray.Count > 0) { if (mCostInfos.ContainsKey(info.CostArray[0].goods_id) == false) { mCostInfos[info.CostArray[0].goods_id] = info.Id; } } } } } }
public DBHonorItem GetData(uint id) { DBHonorItem ad = null; if (data.TryGetValue(id, out ad)) { return(ad); } string query = string.Format("SELECT * FROM {0} WHERE {0}.{1}=\"{2}\"", mTableName, "id", id); var reader = DBManager.Instance.ExecuteSqliteQueryToReader(GlobalConfig.DBFile, mTableName, query); if (reader == null) { data[id] = null; return(null); } if (!reader.HasRows || !reader.Read()) { data[id] = null; reader.Close(); reader.Dispose(); return(null); } var ret = new DBHonorItem(); ret.Id = DBTextResource.ParseUI(GetReaderString(reader, "id")); ret.Name = GetReaderString(reader, "name"); ret.Icon = GetReaderString(reader, "icon"); ret.NeedPower = DBTextResource.ParseL(GetReaderString(reader, "need_pw")); ret.NeedGoods = DBTextResource.ParseDBGoodsItem(GetReaderString(reader, "need_goods")); ret.AddAttr = DBTextResource.ParseDBAttrItems(GetReaderString(reader, "attr")); ret.Quality = DBTextResource.ParseUI_s(GetReaderString(reader, "qual"), 0); data.Add(ret.Id, ret); reader.Close(); reader.Dispose(); return(ret); }