private void OnClickReplace(object sender, EventArgs e) { if (listBox.SelectedItems.Count == 1) { using (OpenFileDialog dialog = new OpenFileDialog()) { dialog.Multiselect = false; dialog.Title = "Choose image file to replace"; dialog.CheckFileExists = true; dialog.Filter = "Image files (*.tif;*.tiff;*.bmp)|*.tif;*.tiff;*.bmp"; if (dialog.ShowDialog() == DialogResult.OK) { Bitmap bmp = new Bitmap(dialog.FileName); if (dialog.FileName.Contains(".bmp")) { bmp = Utils.ConvertBmp(bmp); } int i = int.Parse(listBox.Items[listBox.SelectedIndex].ToString()); Gumps.ReplaceGump(i, bmp); ControlEvents.FireGumpChangeEvent(this, i); listBox.Invalidate(); ListBox_SelectedIndexChanged(this, EventArgs.Empty); Options.ChangedUltimaClass["Gumps"] = true; } } } }
public static void PatchGump() { Console.WriteLine("Patching Gumps..."); foreach (Item lItem in FItems) { Bitmap lImage = new Bitmap(lItem.FilePath); lImage.MakeTransparent(lImage.GetPixel(1, 1)); foreach (ushort lPosition in lItem.Positions) { int lPosIndex = (int)lPosition; Gumps.ReplaceGump(lPosIndex, lImage); Console.WriteLine(" -> Replaced [Gump] position: 0x" + lPosIndex.ToString("X4")); } } Console.WriteLine("Patching Gumps done..."); }
private void OnClickCopy(object sender, EventArgs e) { if (listBox2.SelectedIndex == -1) { return; } int i = (int)listBox2.Items[listBox2.SelectedIndex]; if (!SecondGump.IsValidIndex(i)) { return; } Bitmap copy = new Bitmap(SecondGump.GetGump(i)); Gumps.ReplaceGump(i, copy); Options.ChangedUltimaClass["Gumps"] = true; ControlEvents.FireGumpChangeEvent(this, i); _mCompare[i] = true; listBox1.BeginUpdate(); bool done = false; for (int id = 0; id < 0x10000; id++) { if (id > i) { listBox1.Items.Insert(id, i); done = true; break; } if (id == i) { done = true; break; } } if (!done) { listBox1.Items.Add(i); } listBox1.EndUpdate(); listBox1.Invalidate(); listBox2.Invalidate(); Listbox_SelectedChange(listBox1, null); }
public static void PatchDragAndDropPatch(ref List <VMulPatch> aItems) { Console.WriteLine("Patching loaded patch..."); foreach (VMulPatch lItem in aItems) { Bitmap lImage = new Bitmap(lItem.UOBitmap); lImage.MakeTransparent(lImage.GetPixel(1, 1)); FileRecognization lFileRec = (FileRecognization)lItem.PatchHeader.Flag; foreach (ushort lPosition in lItem.FilePositions) { int lPosIndex = (int)lPosition; switch (lFileRec) { case FileRecognization.Art: Art.ReplaceStatic(lPosIndex, lImage); Console.WriteLine(" -> Replaced [Art] position: 0x" + lPosIndex.ToString("X4")); break; case FileRecognization.ArtLand: Art.ReplaceLand(lPosIndex, lImage); Console.WriteLine(" -> Replaced [Land] position: 0x" + lPosIndex.ToString("X4")); break; case FileRecognization.Gump: Gumps.ReplaceGump(lPosIndex, lImage); Console.WriteLine(" -> Replaced [Gump] position: 0x" + lPosIndex.ToString("X4")); break; case FileRecognization.Texture: Textures.Replace(lPosIndex, lImage); Console.WriteLine(" -> Replaced [Texture] position: 0x" + lPosIndex.ToString("X4")); break; } } } Console.WriteLine("Patching loaded patch done..."); }
private void onKeydown_InsertText(object sender, KeyEventArgs e) { if (e.KeyCode != Keys.Enter) { return; } int index; if (Utils.ConvertStringToInt(InsertText.Text, out index, 0, Gumps.GetCount())) { if (Gumps.IsValidIndex(index)) { return; } contextMenuStrip1.Close(); using (OpenFileDialog dialog = new OpenFileDialog()) { dialog.Multiselect = false; dialog.Title = String.Format("Choose image file to insert at 0x{0:X}", index); dialog.CheckFileExists = true; dialog.Filter = "Image files (*.tif;*.tiff;*.bmp)|*.tif;*.tiff;*.bmp"; if (dialog.ShowDialog() == DialogResult.OK) { Bitmap bmp = new Bitmap(dialog.FileName); if (dialog.FileName.Contains(".bmp")) { bmp = Utils.ConvertBmp(bmp); } Gumps.ReplaceGump(index, bmp); FiddlerControls.Events.FireGumpChangeEvent(this, index); bool done = false; for (int i = 0; i < listBox.Items.Count; ++i) { int j = int.Parse(listBox.Items[i].ToString()); if (j > index) { listBox.Items.Insert(i, index); listBox.SelectedIndex = i; done = true; break; } else if (ShowFreeSlots) { if (j == i) { listBox.SelectedIndex = i; done = true; break; } } } if (!done) { listBox.Items.Add(index); listBox.SelectedIndex = listBox.Items.Count - 1; } Options.ChangedUltimaClass["Gumps"] = true; } } } }