This commit is contained in:
dexyfex 2017-12-24 23:36:18 +11:00
parent ad46bc816c
commit 3e15734b20
7 changed files with 88 additions and 13 deletions

View File

@ -420,7 +420,7 @@ namespace CodeWalker
for (int f = 0; f < scannedFiles.Count; f++) for (int f = 0; f < scannedFiles.Count; f++)
{ {
var rpffile = scannedFiles[f]; var rpffile = scannedFiles[f];
totfiles += rpffile.GrandTotalFileCount; totfiles += rpffile.TotalFileCount;
} }

View File

@ -94,6 +94,7 @@
this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator(); this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
this.ListContextExportXmlMenu = new System.Windows.Forms.ToolStripMenuItem(); this.ListContextExportXmlMenu = new System.Windows.Forms.ToolStripMenuItem();
this.ListContextExtractRawMenu = new System.Windows.Forms.ToolStripMenuItem(); this.ListContextExtractRawMenu = new System.Windows.Forms.ToolStripMenuItem();
this.ListContextExtractUncompressedMenu = new System.Windows.Forms.ToolStripMenuItem();
this.ListContextExtractAllMenu = new System.Windows.Forms.ToolStripMenuItem(); this.ListContextExtractAllMenu = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator5 = new System.Windows.Forms.ToolStripSeparator(); this.toolStripSeparator5 = new System.Windows.Forms.ToolStripSeparator();
this.ListContextImportXmlMenu = new System.Windows.Forms.ToolStripMenuItem(); this.ListContextImportXmlMenu = new System.Windows.Forms.ToolStripMenuItem();
@ -120,7 +121,7 @@
this.SaveFileDialog = new System.Windows.Forms.SaveFileDialog(); this.SaveFileDialog = new System.Windows.Forms.SaveFileDialog();
this.OpenFileDialog = new System.Windows.Forms.OpenFileDialog(); this.OpenFileDialog = new System.Windows.Forms.OpenFileDialog();
this.FolderBrowserDialog = new System.Windows.Forms.FolderBrowserDialog(); this.FolderBrowserDialog = new System.Windows.Forms.FolderBrowserDialog();
this.ListContextExtractUncompressedMenu = new System.Windows.Forms.ToolStripMenuItem(); this.ToolsBinSearchMenu = new System.Windows.Forms.ToolStripMenuItem();
this.MainMenu.SuspendLayout(); this.MainMenu.SuspendLayout();
this.MainToolbar.SuspendLayout(); this.MainToolbar.SuspendLayout();
this.StatusBar.SuspendLayout(); this.StatusBar.SuspendLayout();
@ -386,6 +387,7 @@
// ToolsMenu // ToolsMenu
// //
this.ToolsMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { this.ToolsMenu.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.ToolsBinSearchMenu,
this.ToolsRpfBrowserMenu, this.ToolsRpfBrowserMenu,
this.toolStripSeparator7, this.toolStripSeparator7,
this.ToolsOptionsMenu}); this.ToolsOptionsMenu});
@ -733,7 +735,7 @@
this.ListContextEditSeparator, this.ListContextEditSeparator,
this.ListContextSelectAllMenu}); this.ListContextSelectAllMenu});
this.ListContextMenu.Name = "MainContextMenu"; this.ListContextMenu.Name = "MainContextMenu";
this.ListContextMenu.Size = new System.Drawing.Size(208, 414); this.ListContextMenu.Size = new System.Drawing.Size(208, 392);
// //
// ListContextViewMenu // ListContextViewMenu
// //
@ -776,6 +778,13 @@
this.ListContextExtractRawMenu.Text = "Extract Raw..."; this.ListContextExtractRawMenu.Text = "Extract Raw...";
this.ListContextExtractRawMenu.Click += new System.EventHandler(this.ListContextExtractRawMenu_Click); this.ListContextExtractRawMenu.Click += new System.EventHandler(this.ListContextExtractRawMenu_Click);
// //
// ListContextExtractUncompressedMenu
//
this.ListContextExtractUncompressedMenu.Name = "ListContextExtractUncompressedMenu";
this.ListContextExtractUncompressedMenu.Size = new System.Drawing.Size(207, 22);
this.ListContextExtractUncompressedMenu.Text = "Extract Uncompressed...";
this.ListContextExtractUncompressedMenu.Click += new System.EventHandler(this.ListContextExtractUncompressedMenu_Click);
//
// ListContextExtractAllMenu // ListContextExtractAllMenu
// //
this.ListContextExtractAllMenu.Name = "ListContextExtractAllMenu"; this.ListContextExtractAllMenu.Name = "ListContextExtractAllMenu";
@ -949,12 +958,12 @@
this.TreeContextCollapseAllMenu.Text = "Collapse All"; this.TreeContextCollapseAllMenu.Text = "Collapse All";
this.TreeContextCollapseAllMenu.Click += new System.EventHandler(this.TreeContextCollapseAllMenu_Click); this.TreeContextCollapseAllMenu.Click += new System.EventHandler(this.TreeContextCollapseAllMenu_Click);
// //
// ListContextExtractUncompressedMenu // ToolsBinSearchMenu
// //
this.ListContextExtractUncompressedMenu.Name = "ListContextExtractUncompressedMenu"; this.ToolsBinSearchMenu.Name = "ToolsBinSearchMenu";
this.ListContextExtractUncompressedMenu.Size = new System.Drawing.Size(207, 22); this.ToolsBinSearchMenu.Size = new System.Drawing.Size(161, 22);
this.ListContextExtractUncompressedMenu.Text = "Extract Uncompressed..."; this.ToolsBinSearchMenu.Text = "Binary Search...";
this.ListContextExtractUncompressedMenu.Click += new System.EventHandler(this.ListContextExtractUncompressedMenu_Click); this.ToolsBinSearchMenu.Click += new System.EventHandler(this.ToolsBinSearchMenu_Click);
// //
// ExploreForm // ExploreForm
// //
@ -1080,5 +1089,6 @@
private System.Windows.Forms.ToolStripMenuItem ListContextOpenFileLocationMenu; private System.Windows.Forms.ToolStripMenuItem ListContextOpenFileLocationMenu;
private System.Windows.Forms.ToolStripSeparator ListContextOpenFileLocationSeparator; private System.Windows.Forms.ToolStripSeparator ListContextOpenFileLocationSeparator;
private System.Windows.Forms.ToolStripMenuItem ListContextExtractUncompressedMenu; private System.Windows.Forms.ToolStripMenuItem ListContextExtractUncompressedMenu;
private System.Windows.Forms.ToolStripMenuItem ToolsBinSearchMenu;
} }
} }

View File

@ -2453,6 +2453,12 @@ namespace CodeWalker
BrowseForm f = new BrowseForm(); BrowseForm f = new BrowseForm();
f.Show(this); f.Show(this);
} }
private void ToolsBinSearchMenu_Click(object sender, EventArgs e)
{
BinarySearchForm f = new BinarySearchForm(FileCache);
f.Show(this);
}
} }

View File

@ -300,7 +300,7 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADo ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADo
HwAAAk1TRnQBSQFMAgEBGAEAAZgBAAGYAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo HwAAAk1TRnQBSQFMAgEBGAEAAaABAAGgAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
AwABQAMAAXADAAEBAQABCAYAARwYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA AwABQAMAAXADAAEBAQABCAYAARwYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5 AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA

View File

@ -9,6 +9,43 @@ using TC = System.ComponentModel.TypeConverterAttribute;
using EXP = System.ComponentModel.ExpandableObjectConverter; using EXP = System.ComponentModel.ExpandableObjectConverter;
using SharpDX; using SharpDX;
/*
Parts of this are adapted from CamxxCore's RageAudioTool, although it's been completely reworked for CW.
-dexyfex
https://github.com/CamxxCore/RageAudioTool
MIT License
Copyright (c) 2017 Cameron Berry
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
*/
namespace CodeWalker.GameFiles namespace CodeWalker.GameFiles
{ {
[TC(typeof(EXP))] public class RelFile : PackedFile [TC(typeof(EXP))] public class RelFile : PackedFile

View File

@ -29,7 +29,29 @@
/*
Copyright (c) 2017 Cameron Berry
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
*/

View File

@ -21,12 +21,12 @@ in the default location (C:\Program Files (x86)\Steam\SteamApps\common\Grand The
be skipped automatically. be skipped automatically.
The World View will load by default. It will take a while to load. The World View will load by default. It will take a while to load.
Use the WASD keys to move the camera. Use the WASD keys to move the camera. Hold shift to move faster.
Drag the left mouse button to rotate the view. Drag the left mouse button to rotate the view.
Use the mouse wheel to zoom in/out, and change the movement speed. (Zoom in = slower motion) Use the mouse wheel to zoom in/out, and change the base movement speed. (Zoom in = slower motion)
XBox controller input is also supported. XBox controller input is also supported.
The Toolbox can be shown by clicking the "<<" button in the top right-hand corner of the screen. The Toolbox can be shown by clicking the "<<" button in the top right-hand corner of the screen.
T opens the toolbar. T opens the main toolbar.
First-person mode can be activated with the P key, or by pressing the Start button on the XBox controller. First-person mode can be activated with the P key, or by pressing the Start button on the XBox controller.
While in first-person mode, the left mouse button (or right trigger) will fire an egg. While in first-person mode, the left mouse button (or right trigger) will fire an egg.