void ReadRoleData() { DataDBSBagItem.Read(GetDataPath(GTDataKey.Data_BagItems), EDataKeyType.Pos); DataDBSEquip.Read(GetDataPath(GTDataKey.Data_Equips), EDataKeyType.Instance); DataDBSDressEquip.Read(GetDataPath(GTDataKey.Data_DressEquips), EDataKeyType.Pos); DataDBSMoney.Read(GetDataPath(GTDataKey.Data_Moneys), EDataKeyType.Id); DataDBSAction.Read(GetDataPath(GTDataKey.Data_Actions), EDataKeyType.Id); DataDBSSoul.Read(GetDataPath(GTDataKey.Data_Souls), EDataKeyType.Id); DataDBSBagGem.Read(GetDataPath(GTDataKey.Data_BagGems), EDataKeyType.Pos); DataDBSGem.Read(GetDataPath(GTDataKey.Data_Gems), EDataKeyType.Instance); DataDBSDressGem.Read(GetDataPath(GTDataKey.Data_DressGems), EDataKeyType.Pos); DataDBSBagChip.Read(GetDataPath(GTDataKey.Data_BagChips), EDataKeyType.Pos); DataDBSBagFashion.Read(GetDataPath(GTDataKey.Data_BagFashions), EDataKeyType.Pos); DataDBSBagRune.Read(GetDataPath(GTDataKey.Data_BagRunes), EDataKeyType.Pos); DataDBSDressRune.Read(GetDataPath(GTDataKey.Data_DressRunes), EDataKeyType.Pos); DataDBSDressFashion.Read(GetDataPath(GTDataKey.Data_DressFashions), EDataKeyType.Pos); DataDBSRune.Read(GetDataPath(GTDataKey.Data_Runes), EDataKeyType.Instance); DataDBSCopy.Read(GetDataPath(GTDataKey.Data_Copys), EDataKeyType.Id); DataDBSMainChapter.Read(GetDataPath(GTDataKey.Data_MainChapters), EDataKeyType.Id); DataDBSRaid.Read(GetDataPath(GTDataKey.Data_Raid), EDataKeyType.Id); DataDBSPartner.Read(GetDataPath(GTDataKey.Data_Partners), EDataKeyType.Id); DataDBSMount.Read(GetDataPath(GTDataKey.Data_Mounts), EDataKeyType.Id); DataDBSRelics.Read(GetDataPath(GTDataKey.Data_Relics), EDataKeyType.Id); DataDBSPet.Read(GetDataPath(GTDataKey.Data_Pets), EDataKeyType.Id); DataDBSGuide.Read(GetDataPath(GTDataKey.Data_Guides), EDataKeyType.Id); DataDBSThreadTask.Read(GetDataPath(GTDataKey.Data_MainTasks), EDataKeyType.Id); DataDBSBranchTask.Read(GetDataPath(GTDataKey.Data_BranchTasks), EDataKeyType.Id); DataDBSDailyTask.Read(GetDataPath(GTDataKey.Data_DailyTasks), EDataKeyType.Id); }
void DumpRoleData() { DataDBSMoney.Clear(); DataDBSAction.Clear(); DataDBSSoul.Clear(); DataDBSBagItem.Clear(); DataDBSBagGem.Clear(); DataDBSBagChip.Clear(); DataDBSBagRune.Clear(); DataDBSBagFashion.Clear(); DataDBSDressEquip.Clear(); DataDBSDressFashion.Clear(); DataDBSDressGem.Clear(); DataDBSDressRune.Clear(); DataDBSEquip.Clear(); DataDBSGem.Clear(); DataDBSRune.Clear(); DataDBSMainChapter.Clear(); DataDBSCopy.Clear(); DataDBSRaid.Clear(); DataDBSRelics.Clear(); DataDBSMount.Clear(); DataDBSPartner.Clear(); DataDBSPet.Clear(); DataDBSGuide.Clear(); DataDBSThreadTask.Clear(); DataDBSBranchTask.Clear(); DataDBSDailyTask.Clear(); }
public static Dictionary <EAttr, int> GetAllGemPropertysByIndex(int index) { if (!DataDBSDressEquip.ContainsKey(index)) { return(New()); } Dictionary <EAttr, int> attrValues = New(); for (int i = 1; i <= 5; i++) { int gemPos = MLGem.Instance.GetDressGemPosByIndexAndTargetPos(index, i); XItem item = DataDBSDressGem.GetDataById(gemPos); if (item == null) { continue; } XGem gem = DataDBSGem.GetDataById(item.Instance); if (gem != null) { continue; } CalcGemStrenthLevel(attrValues, gem); } CalcMaxAttrValue(ref attrValues); return(attrValues); }
private void OnAck_DressGem(MessageRecv obj) { System.IO.MemoryStream ms = new System.IO.MemoryStream(obj.Data); AckDressGem ack = Serializer.Deserialize <AckDressGem>(ms); int srcPos = ack.SrcPos; int tarPos = ack.TarPos; int index = ack.Index; XItem sourceGem = DataDBSBagGem.GetDataById(srcPos); DGem gemDB = ReadCfgGem.GetDataById(sourceGem.Id); int pos = MLGem.Instance.GetDressGemPosByIndexAndTargetPos(index, gemDB.Pos); XItem dressGem = DataDBSDressGem.GetDataById(pos); if (dressGem != null) { int sourceInstanceID = sourceGem.Instance; int sourceId = sourceGem.Id; sourceGem.Instance = dressGem.Instance; sourceGem.Id = dressGem.Id; dressGem.Instance = sourceInstanceID; dressGem.Id = sourceId; DataDBSDressGem.Update(dressGem.Pos, dressGem); DataDBSBagGem.Update(sourceGem.Pos, sourceGem); } else { dressGem = new XItem(); dressGem.Instance = sourceGem.Instance; dressGem.Pos = pos; dressGem.PosType = (int)EPosType.RoleGem; dressGem.Id = sourceGem.Id; dressGem.Num = 1; DataDBSDressGem.Insert(pos, dressGem); DataDBSBagGem.Delete(sourceGem.Pos); } GTWorld.Instance.SyncMainPlayerData(ESyncDataType.TYPE_BASEATTR); GTEventCenter.FireEvent(GTEventID.TYPE_BAG_DRESS_GEM, srcPos, tarPos); GTEventCenter.FireEvent(GTEventID.TYPE_CHANGE_FIGHTVALUE); }
public int GetActiveSameSuitsCountByPos(int pos) { if (!DataDBSDressGem.ContainsKey(pos)) { return(0); } XItem dressGem = DataDBSDressGem.GetDataById(pos); if (!DataDBSGem.ContainsKey(dressGem.Instance)) { return(0); } XGem gem = DataDBSGem.GetDataById(dressGem.Instance); int p = (int)(pos / 5.1f); List <int> sameSuits = GetSameSuitIDListByID(gem.Id); int count = 0; for (int i = 0; i < sameSuits.Count; i++) { int suitPos = p * 5 + i + 1; if (!DataDBSDressGem.ContainsKey(suitPos)) { continue; } XItem item = DataDBSDressGem.GetDataById(suitPos); if (!DataDBSGem.ContainsKey(item.Instance)) { continue; } XGem g = DataDBSGem.GetDataById(item.Instance); if (sameSuits.Contains(g.Id)) { count++; } } return(count); }
private void OnAck_UnloadGem(MessageRecv obj) { System.IO.MemoryStream ms = new System.IO.MemoryStream(obj.Data); AckUnloadGem ack = Serializer.Deserialize <AckUnloadGem>(ms); int newPos = ack.NewPos; int tarPos = ack.TarPos; XItem dressGem = DataDBSDressGem.GetDataById(tarPos); XItem bagGem = new XItem(); bagGem.Instance = dressGem.Instance; bagGem.Pos = newPos; bagGem.PosType = (int)EPosType.BagGem; bagGem.Id = dressGem.Id; bagGem.Num = 1; DataDBSBagGem.Insert(newPos, bagGem); DataDBSDressGem.Delete(tarPos); GTWorld.Instance.SyncMainPlayerData(ESyncDataType.TYPE_CURRATTR); GTEventCenter.FireEvent(GTEventID.TYPE_BAG_UNLOAD_GEM, newPos, tarPos); GTEventCenter.FireEvent(GTEventID.TYPE_CHANGE_FIGHTVALUE); }