private void UpdateItemList() { if (comboCharList.Items.Count == 0) { return; } dataGridItems.Rows.Clear(); if (keepItemState != KeepItemsState.KEEP_NONE) { foreach (int selSlot in comboCharList.SelectedIndices) { CharObject mChar = (CharObject)worldObjects.CharList[selSlot]; if (mChar != null) { ListItemsInCont(mChar); } } } if (dataGridItems.Rows.Count == 0) { dataGridItems.Rows.Add("No items will be exported with this character."); } }
private void ExportCharacters() { if (comboCharList.Items.Count > 0 && comboCharList.SelectedIndices.Count > 0) { folderBrowserDialog.Description = "Select the Location to Export your character(s) to."; if (folderBrowserDialog.ShowDialog() == DialogResult.OK) { progressBar.Value = 0; progressBar.Maximum = comboCharList.SelectedIndices.Count; foreach (int mSelection in comboCharList.SelectedIndices) { CharObject mChar = (CharObject)worldObjects.CharList[mSelection]; if (mChar != null) { string fileName = mChar.Name + "_" + mChar.SerString + ".cef"; string filePath = folderBrowserDialog.SelectedPath + "\\" + fileName; StreamWriter fileOut = File.CreateText(filePath); mChar.Section.Save(fileOut); if (keepItemState != KeepItemsState.KEEP_NONE) { SaveItemsInCont(mChar, fileOut); } fileOut.Close(); progressBar.PerformStep(); } } } } }
private void LoadWorldFile(UOXData.Script.WorldFile90 toAdd, bool doImport) { foreach (UOXData.Script.WorldSection mScript in toAdd.Sections) { if (mScript.SectionName == "CHARACTER") { uint charSerial = UOXData.Conversion.ToUInt32(mScript.FindTag("Serial")); if (charSerial > worldObjects.NextCharSer) { worldObjects.NextCharSer = charSerial + 1; } CharObject mChar = new CharObject(charSerial); mChar.SerString = UOXData.Conversion.ToHexString(charSerial); mChar.Name = mScript.FindTag("Name"); mChar.ID = UOXData.Conversion.ToUInt16(mScript.FindTag("ID")); mChar.Section = mScript; if (doImport) { worldObjects.ImportCharList.Add(mChar); } else { worldObjects.CharList.Add(mChar); } ++totalChars; } else { uint contSerial = UOXData.Conversion.ToUInt32(mScript.FindTag("Cont")); uint itemSerial = UOXData.Conversion.ToUInt32(mScript.FindTag("Serial")); if (itemSerial >= worldObjects.NextItemSer) { worldObjects.NextItemSer = itemSerial + 1; } if (contSerial != 0xFFFFFFFF) { ItemObject mItem = new ItemObject(itemSerial); mItem.Container = contSerial; mItem.SerString = UOXData.Conversion.ToHexString(itemSerial); mItem.Name = mScript.FindTag("Name"); mItem.Section = mScript; mItem.ID = UOXData.Conversion.ToUInt16(mScript.FindTag("ID")); if (doImport) { worldObjects.ImportItemList.Add(mItem); } else { worldObjects.ItemList.Add(mItem); } } ++totalItems; } } }