示例#1
0
 private void createSingleModToolStripMenuItem_Click(object sender, EventArgs e)
 {
     int n = listBox1.SelectedIndex;
     if (n == -1)
         return;
     MessageBox.Show("Please select replacement texture (same size)");
     OpenFileDialog d = new OpenFileDialog();
     d.Filter = "*.dds|*.dds";
     if (d.ShowDialog() == System.Windows.Forms.DialogResult.OK)
     {
         byte[] data = File.ReadAllBytes(d.FileName);
         MessageBox.Show("Please select mod save location");
         SaveFileDialog d2 = new SaveFileDialog();
         d2.Filter = "*.DAIMWV|*.DAIMWV";
         if (d2.ShowDialog() == System.Windows.Forms.DialogResult.OK)
         {
             Mod mod = new Mod();
             mod.jobs = new List<Mod.ModJob>();
             Mod.ModJob mj = new Mod.ModJob();
             mj.type = 0;
             mj.bundlePaths = new List<string>();
             mj.tocPaths = new List<string>();
             int plen = GlobalStuff.FindSetting("gamepath").Length;
             DBAccess.BundleInformation buni = bil[n];
             DBAccess.TextureInformation ti = new DBAccess.TextureInformation();
             foreach (DBAccess.TextureInformation t in til)
                 if (t.bundleIndex == buni.index)
                     ti = t;
             DBAccess.TOCInformation toci = DBAccess.GetTocInformationByIndex(buni.tocIndex);
             mj.respath = ti.name;
             mj.bundlePaths.Add(buni.bundlepath);
             mj.tocPaths.Add(toci.path.Substring(plen, toci.path.Length - plen));
             MemoryStream m = new MemoryStream();
             m.Write(data, 0x80, data.Length - 0x80);
             mj.data = m.ToArray();
             mod.jobs.Add(mj);
             mod.Save(d2.FileName);
             MessageBox.Show("Done.");
         }
     }
 }
示例#2
0
 private void createSingleModToolStripMenuItem_Click(object sender, EventArgs e)
 {
     int n = listBox2.SelectedIndex;
     if (n == -1)
         return;
     MessageBox.Show("Please select replacement data");
     OpenFileDialog d = new OpenFileDialog();
     d.Filter = "*.bin|*.bin";
     if (d.ShowDialog() == System.Windows.Forms.DialogResult.OK)
     {
         byte[] data = File.ReadAllBytes(d.FileName);
         MessageBox.Show("Please select mod save location");
         SaveFileDialog d2 = new SaveFileDialog();
         d2.Filter = "*.DAIMWV|*.DAIMWV";
         if (d2.ShowDialog() == System.Windows.Forms.DialogResult.OK)
         {
             Mod mod = new Mod();
             mod.jobs = new List<Mod.ModJob>();
             Mod.ModJob mj = new Mod.ModJob();
             mj.type = 1;
             mj.bundlePaths = new List<string>();
             mj.tocPaths = new List<string>();
             int plen = GlobalStuff.FindSetting("gamepath").Length;
             DBAccess.RESInformation resi = ttprevlist[n];
             mj.respath = resi.resname;
             mj.bundlePaths.Add(resi.bundlepath);
             mj.tocPaths.Add(resi.tocfilepath.Substring(plen));
             MemoryStream m = new MemoryStream();
             m.Write(data, 0x80, data.Length - 0x80);
             mj.data = m.ToArray();
             mj.restype = types[toolStripComboBox1.SelectedIndex];
             mod.jobs.Add(mj);
             mod.Save(d2.FileName);
             MessageBox.Show("Done.");
         }
     }
 }
示例#3
0
 private void createForAllDupsModToolStripMenuItem_Click(object sender, EventArgs e)
 {
     MessageBox.Show("Please select replacement texture (same size)");
     OpenFileDialog d = new OpenFileDialog();
     d.Filter = "*.dds|*.dds";
     if (d.ShowDialog() == System.Windows.Forms.DialogResult.OK)
     {
         byte[] data = File.ReadAllBytes(d.FileName);
         MessageBox.Show("Please select mod save location");
         SaveFileDialog d2 = new SaveFileDialog();
         d2.Filter = "*.DAIMWV|*.DAIMWV";
         if (d2.ShowDialog() == System.Windows.Forms.DialogResult.OK)
         {
             Mod mod = new Mod();
             mod.jobs = new List<Mod.ModJob>();
             Mod.ModJob mj = new Mod.ModJob();
             mj.type = 0;
             mj.bundlePaths = new List<string>();
             mj.tocPaths = new List<string>();
             int plen = GlobalStuff.FindSetting("gamepath").Length;
             bool skip = false;
             for (int i = 0; i < bil.Length; i++)
             {
                 DBAccess.BundleInformation buni = bil[i];
                 DBAccess.TextureInformation ti = new DBAccess.TextureInformation();
                 foreach (DBAccess.TextureInformation t in til)
                     if (t.bundleIndex == buni.index)
                         ti = t;
                 DBAccess.TOCInformation toci = DBAccess.GetTocInformationByIndex(buni.tocIndex);
                 mj.respath = ti.name;
                 skip = false;
                 foreach (string p in mj.bundlePaths)
                     if (p == buni.bundlepath)
                     {
                         skip = true;
                         break;
                     }
                 if (!skip)
                     mj.bundlePaths.Add(buni.bundlepath);
                 string tpath = toci.path.Substring(plen, toci.path.Length - plen);
                 skip = false;
                 foreach (string p in mj.tocPaths)
                     if (p == tpath)
                     {
                         skip = true;
                         break;
                     }
                 if (tpath.ToLower().Contains("\\patch\\"))
                     skip = true;
                 if (!skip)
                     mj.tocPaths.Add(tpath);
             }
             MemoryStream m = new MemoryStream();
             m.Write(data, 0x80, data.Length - 0x80);
             mj.data = m.ToArray();
             mod.jobs.Add(mj);
             mod.Save(d2.FileName);
             MessageBox.Show("Done.");
         }
     }
 }
示例#4
0
 private void createForAllDupsModToolStripMenuItem_Click(object sender, EventArgs e)
 {
     MessageBox.Show("Please select replacement data");
     OpenFileDialog d = new OpenFileDialog();
     d.Filter = "*.bin|*.bin";
     if (d.ShowDialog() == System.Windows.Forms.DialogResult.OK)
     {
         Mod mod = new Mod();
         mod.jobs = new List<Mod.ModJob>();
         Mod.ModJob mj = new Mod.ModJob();
         mj.data = File.ReadAllBytes(d.FileName);
         MessageBox.Show("Please select mod save location");
         SaveFileDialog d2 = new SaveFileDialog();
         d2.Filter = "*.DAIMWV|*.DAIMWV";
         if (d2.ShowDialog() == System.Windows.Forms.DialogResult.OK)
         {
             int plen = GlobalStuff.FindSetting("gamepath").Length;
             mj.type = 1;
             mj.bundlePaths = new List<string>();
             mj.tocPaths = new List<string>();
             bool skip = false;
             for (int i = 0; i < ttprevlist.Count; i++)
             {
                 DBAccess.RESInformation resi = ttprevlist[i];
                 mj.respath = resi.resname;
                 skip = false;
                 foreach (string p in mj.bundlePaths)
                     if (p == resi.bundlepath)
                     {
                         skip = true;
                         break;
                     }
                 if (!skip)
                     mj.bundlePaths.Add(resi.bundlepath);
                 skip = false;
                 foreach (string p in mj.tocPaths)
                     if (p == resi.tocfilepath.Substring(plen))
                     {
                         skip = true;
                         break;
                     }
                 if (!skip && !resi.tocfilepath.ToLower().Contains("\\patch\\"))
                     mj.tocPaths.Add(resi.tocfilepath.Substring(plen));
             }
             mj.restype = types[toolStripComboBox1.SelectedIndex];
             mod.jobs.Add(mj);
             mod.Save(d2.FileName);
             MessageBox.Show("Done.");
         }
     }
 }