diff --git a/NetMFAPatcher/DotNetCTFDumper.csproj b/NetMFAPatcher/DotNetCTFDumper.csproj index e114f0d..3640951 100644 --- a/NetMFAPatcher/DotNetCTFDumper.csproj +++ b/NetMFAPatcher/DotNetCTFDumper.csproj @@ -186,7 +186,7 @@ - + diff --git a/NetMFAPatcher/GUI/MainForm.Designer.cs b/NetMFAPatcher/GUI/MainForm.Designer.cs index 890434e..abde6c8 100644 --- a/NetMFAPatcher/GUI/MainForm.Designer.cs +++ b/NetMFAPatcher/GUI/MainForm.Designer.cs @@ -434,45 +434,31 @@ namespace NetMFAPatcher.GUI this.PerformLayout(); } - private System.Windows.Forms.Button packDataBtn; - - private System.Windows.Forms.ToolStripMenuItem saveChunkBtn; - private System.Windows.Forms.ToolStripMenuItem viewHexBtn; - + private System.Windows.Forms.Button button1; + private System.Windows.Forms.CheckBox ChunkBox; private System.Windows.Forms.ContextMenuStrip ChunkCombo; - - private System.Windows.Forms.Button dumpSortedBtn; - - private System.Windows.Forms.Button showHexBtn; - private System.Windows.Forms.Button cryptKeyBtn; - - private System.Windows.Forms.Label loadingLabel; - - private System.Windows.Forms.Button ImagesButton; - - private System.Windows.Forms.Button SoundsButton; - + private System.Windows.Forms.Button dumpSortedBtn; private System.Windows.Forms.Button FolderBTN; - private System.Windows.Forms.Button MFABtn; - - private System.Windows.Forms.ProgressBar SoundBar; - private System.Windows.Forms.Label SoundsLabel; - - private System.Windows.Forms.Label ImagesLabel; - - private System.Windows.Forms.ProgressBar ImagesBar; - - private System.Windows.Forms.CheckBox ChunkBox; - private System.Windows.Forms.CheckBox ImageBox; - private System.Windows.Forms.CheckBox SoundBox; - - private System.Windows.Forms.Button button1; private System.Windows.Forms.Label GameInfo; + private System.Windows.Forms.CheckBox ImageBox; + private System.Windows.Forms.ProgressBar ImagesBar; + private System.Windows.Forms.Button ImagesButton; + private System.Windows.Forms.Label ImagesLabel; private System.Windows.Forms.Label label1; private System.Windows.Forms.ListBox listBox1; + private System.Windows.Forms.Label loadingLabel; + private System.Windows.Forms.Button MFABtn; private System.Windows.Forms.OpenFileDialog openFileDialog1; + private System.Windows.Forms.Button packDataBtn; + private System.Windows.Forms.ToolStripMenuItem saveChunkBtn; + private System.Windows.Forms.Button showHexBtn; + private System.Windows.Forms.ProgressBar SoundBar; + private System.Windows.Forms.CheckBox SoundBox; + private System.Windows.Forms.Button SoundsButton; + private System.Windows.Forms.Label SoundsLabel; private System.Windows.Forms.TreeView treeView1; + private System.Windows.Forms.ToolStripMenuItem viewHexBtn; #endregion } diff --git a/NetMFAPatcher/GUI/MainForm.cs b/NetMFAPatcher/GUI/MainForm.cs index 308958a..137036c 100644 --- a/NetMFAPatcher/GUI/MainForm.cs +++ b/NetMFAPatcher/GUI/MainForm.cs @@ -20,39 +20,39 @@ namespace NetMFAPatcher.GUI public static bool BreakImages; public static bool BreakSounds; public Thread LoaderThread; - public Color colorTheme = Color.FromArgb(223,114,38); + public Color ColorTheme = Color.FromArgb(223,114,38); public PackDataForm PackForm; public MainForm() { //Buttons InitializeComponent(); - cryptKeyBtn.ForeColor = colorTheme; - dumpSortedBtn.ForeColor = colorTheme; - showHexBtn.ForeColor = colorTheme; - FolderBTN.ForeColor = colorTheme; - MFABtn.ForeColor = colorTheme; - ImagesButton.ForeColor = colorTheme; - SoundsButton.ForeColor = colorTheme; - packDataBtn.ForeColor = colorTheme; + cryptKeyBtn.ForeColor = ColorTheme; + dumpSortedBtn.ForeColor = ColorTheme; + showHexBtn.ForeColor = ColorTheme; + FolderBTN.ForeColor = ColorTheme; + MFABtn.ForeColor = ColorTheme; + ImagesButton.ForeColor = ColorTheme; + SoundsButton.ForeColor = ColorTheme; + packDataBtn.ForeColor = ColorTheme; //Menu - saveChunkBtn.ForeColor = colorTheme; + saveChunkBtn.ForeColor = ColorTheme; saveChunkBtn.BackColor=Color.Black; - viewHexBtn.ForeColor = colorTheme; + viewHexBtn.ForeColor = ColorTheme; viewHexBtn.BackColor=Color.Black; //Labels - label1.ForeColor = colorTheme; + label1.ForeColor = ColorTheme; label1.Text = Settings.DumperVersion; - button1.ForeColor = colorTheme; - GameInfo.ForeColor = colorTheme; - loadingLabel.ForeColor = colorTheme; - ImagesLabel.ForeColor = colorTheme; - SoundsLabel.ForeColor=colorTheme; + button1.ForeColor = ColorTheme; + GameInfo.ForeColor = ColorTheme; + loadingLabel.ForeColor = ColorTheme; + ImagesLabel.ForeColor = ColorTheme; + SoundsLabel.ForeColor=ColorTheme; //Other - treeView1.ForeColor = colorTheme; - listBox1.ForeColor = colorTheme; - ImagesBar.ForeColor = colorTheme; - SoundBar.ForeColor = colorTheme; + treeView1.ForeColor = ColorTheme; + listBox1.ForeColor = ColorTheme; + ImagesBar.ForeColor = ColorTheme; + SoundBar.ForeColor = ColorTheme; } @@ -386,7 +386,7 @@ namespace NetMFAPatcher.GUI rawData += Settings.Copyright; } - var KeyForm = new CryptoKeyForm(rawData,colorTheme); + var KeyForm = new CryptoKeyForm(rawData,ColorTheme); KeyForm.Show(); } @@ -403,7 +403,7 @@ namespace NetMFAPatcher.GUI var node = ((ChunkNode) treeView1.SelectedNode); HexViewForm hexform = null; - hexform = new HexViewForm(node.chunk.ChunkData,node.chunk.RawData,colorTheme,$"Hew View: {node.chunk.Name}"); + hexform = new HexViewForm(node.chunk.ChunkData,node.chunk.RawData,ColorTheme,$"Hew View: {node.chunk.Name}"); hexform.Show(); } @@ -439,7 +439,7 @@ namespace NetMFAPatcher.GUI private void packDataBtn_Click(object sender, EventArgs e) { - if(PackForm==null)PackForm = new PackDataForm(Exe.LatestInst.PackData,colorTheme); + if(PackForm==null)PackForm = new PackDataForm(Exe.LatestInst.PackData,ColorTheme); PackForm.Show(); } } diff --git a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Events.cs b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Events.cs index a0f5a7a..1193949 100644 --- a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Events.cs +++ b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Events.cs @@ -87,7 +87,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Events List _objects = new List(); public Quailifer(Chunk chunk) : base(chunk) { } - public Quailifer(ByteIO reader) : base(reader) { } + public Quailifer(ByteReader reader) : base(reader) { } public override void Print(bool ext) { @@ -120,7 +120,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Events public List Actions = new List(); public EventGroup(Chunk chunk) : base(chunk) { } - public EventGroup(ByteIO reader) : base(reader) { } + public EventGroup(ByteReader reader) : base(reader) { } public override void Print(bool ext) { diff --git a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/EventsParts.cs b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/EventsParts.cs index eb79b21..b71f2f3 100644 --- a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/EventsParts.cs +++ b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/EventsParts.cs @@ -21,7 +21,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Events public int Identifier; public int ObjectInfoList; public List Items = new List(); - public Condition(ByteIO reader) : base(reader) { } + public Condition(ByteReader reader) : base(reader) { } public override void Print() { throw new NotImplementedException(); @@ -68,7 +68,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Events public int ObjectInfo; public int ObjectInfoList; public List Items = new List(); - public Action(ByteIO reader) : base(reader) { } + public Action(ByteReader reader) : base(reader) { } public override void Print( ) { throw new NotImplementedException(); @@ -108,7 +108,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Events public int Code; public DataLoader Loader; - public Parameter(ByteIO reader) : base(reader) { } + public Parameter(ByteReader reader) : base(reader) { } public override void Print() { diff --git a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Expressions/Expression.cs b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Expressions/Expression.cs index 45cc5cc..0227c74 100644 --- a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Expressions/Expression.cs +++ b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Expressions/Expression.cs @@ -10,7 +10,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Events.Expressions public int Num; public int ObjectInfo; public int ObjectInfoList; - public Expression(ByteIO reader) : base(reader) { } + public Expression(ByteReader reader) : base(reader) { } public override void Print() { throw new NotImplementedException(); diff --git a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/AlterableValue.cs b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/AlterableValue.cs index 7bf9bc7..22537c5 100644 --- a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/AlterableValue.cs +++ b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/AlterableValue.cs @@ -10,7 +10,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Events.Parameters class AlterableValue : Short { - public AlterableValue(ByteIO reader) : base(reader) { } + public AlterableValue(ByteReader reader) : base(reader) { } public override void Read() { base.Read(); diff --git a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Colour.cs b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Colour.cs index c93d467..e4c9a80 100644 --- a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Colour.cs +++ b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Colour.cs @@ -7,7 +7,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Events.Parameters { public Color Value; - public Colour(ByteIO reader) : base(reader) { } + public Colour(ByteReader reader) : base(reader) { } public override void Read() { var bytes = Reader.ReadBytes(4); diff --git a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Create.cs b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Create.cs index 5d3b82b..9c11265 100644 --- a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Create.cs +++ b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Create.cs @@ -8,7 +8,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Events.Parameters public int ObjectInfo; public Position Position; - public Create(ByteIO reader) : base(reader) { } + public Create(ByteReader reader) : base(reader) { } public override void Read() { Position = new Position(Reader); diff --git a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Every.cs b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Every.cs index 746febc..88f491e 100644 --- a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Every.cs +++ b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Every.cs @@ -8,7 +8,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Events.Parameters public int Compteur; - public Every(ByteIO reader) : base(reader) { } + public Every(ByteReader reader) : base(reader) { } public override void Read() { Delay = Reader.ReadInt32(); diff --git a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Float.cs b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Float.cs index e477539..1c284ef 100644 --- a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Float.cs +++ b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Float.cs @@ -6,7 +6,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Events.Parameters { public float Value; - public Float(ByteIO reader) : base(reader) { } + public Float(ByteReader reader) : base(reader) { } public override void Read() { Value = Reader.ReadSingle(); diff --git a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/GlobalValue.cs b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/GlobalValue.cs index 57b38de..b421fac 100644 --- a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/GlobalValue.cs +++ b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/GlobalValue.cs @@ -7,7 +7,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Events.Parameters { - public GlobalValue(ByteIO reader) : base(reader) { } + public GlobalValue(ByteReader reader) : base(reader) { } public override void Read() { base.Read(); diff --git a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Int.cs b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Int.cs index d511120..3ca24c0 100644 --- a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Int.cs +++ b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Int.cs @@ -6,7 +6,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Events.Parameters { - public Int(ByteIO reader) : base(reader) { } + public Int(ByteReader reader) : base(reader) { } public override void Read() { Value = (short)Reader.ReadInt32(); diff --git a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/ParamObject.cs b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/ParamObject.cs index 8b6feac..dca0bc7 100644 --- a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/ParamObject.cs +++ b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/ParamObject.cs @@ -7,7 +7,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Events.Parameters public int ObjectInfoList; public int ObjectInfo; public int ObjectType; - public ParamObject(ByteIO reader) : base(reader) { } + public ParamObject(ByteReader reader) : base(reader) { } public override void Read() { ObjectInfoList = Reader.ReadInt16(); diff --git a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/ParameterCommon.cs b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/ParameterCommon.cs index 10b8956..8159cb3 100644 --- a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/ParameterCommon.cs +++ b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/ParameterCommon.cs @@ -8,7 +8,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Events.Parameters { - public ParameterCommon(ByteIO reader) : base(reader) { } + public ParameterCommon(ByteReader reader) : base(reader) { } public override void Print() { throw new NotImplementedException(); diff --git a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Position.cs b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Position.cs index 5012558..4fcdbcf 100644 --- a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Position.cs +++ b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Position.cs @@ -15,7 +15,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Events.Parameters public int ObjectInfoList; public int Layer; - public Position(ByteIO reader) : base(reader) { } + public Position(ByteReader reader) : base(reader) { } public override void Read() { ObjectInfoParent = Reader.ReadInt16(); diff --git a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Remark.cs b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Remark.cs index 9b7daa6..91c7110 100644 --- a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Remark.cs +++ b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Remark.cs @@ -6,7 +6,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Events.Parameters { - public Remark(ByteIO reader) : base(reader) { } + public Remark(ByteReader reader) : base(reader) { } public override void Read() { //TODO diff --git a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Sample.cs b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Sample.cs index b8e68e5..80c69c7 100644 --- a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Sample.cs +++ b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Sample.cs @@ -8,7 +8,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Events.Parameters public string Name; public int Flags; - public Sample(ByteIO reader) : base(reader) { } + public Sample(ByteReader reader) : base(reader) { } public override void Read() { Handle = Reader.ReadInt16(); diff --git a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Short.cs b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Short.cs index 65c6b38..b10a8da 100644 --- a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Short.cs +++ b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Short.cs @@ -6,7 +6,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Events.Parameters { public short Value; - public Short(ByteIO reader) : base(reader) { } + public Short(ByteReader reader) : base(reader) { } public override void Read() { Value = Reader.ReadInt16(); diff --git a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Time.cs b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Time.cs index 84063ba..9c71409 100644 --- a/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Time.cs +++ b/NetMFAPatcher/MMFParser/ChunkLoaders/Events/Parameters/Time.cs @@ -7,7 +7,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Events.Parameters public int Timer; public int Loops; - public Time(ByteIO reader) : base(reader) { } + public Time(ByteReader reader) : base(reader) { } public override void Read() { Timer = Reader.ReadInt32(); diff --git a/NetMFAPatcher/MMFParser/ChunkLoaders/Globals.cs b/NetMFAPatcher/MMFParser/ChunkLoaders/Globals.cs index b4786e8..8891c9a 100644 --- a/NetMFAPatcher/MMFParser/ChunkLoaders/Globals.cs +++ b/NetMFAPatcher/MMFParser/ChunkLoaders/Globals.cs @@ -25,10 +25,10 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders public override void Read() { var numberOfItems = Reader.ReadUInt16(); - var templist = new List(); + var templist = new List(); for (int i = 0; i < numberOfItems; i++) { - templist.Add(new ByteIO(Reader.ReadBytes(4))); + templist.Add(new ByteReader(Reader.ReadBytes(4))); } foreach (var item in templist) { diff --git a/NetMFAPatcher/MMFParser/ChunkLoaders/ObjectNames.cs b/NetMFAPatcher/MMFParser/ChunkLoaders/ObjectNames.cs index 34449a8..067477c 100644 --- a/NetMFAPatcher/MMFParser/ChunkLoaders/ObjectNames.cs +++ b/NetMFAPatcher/MMFParser/ChunkLoaders/ObjectNames.cs @@ -33,7 +33,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders } } - public ObjectNames(ByteIO reader) : base(reader) { } + public ObjectNames(ByteReader reader) : base(reader) { } public ObjectNames(Chunk chunk) : base(chunk) { } } } diff --git a/NetMFAPatcher/MMFParser/ChunkLoaders/Objects/Animations.cs b/NetMFAPatcher/MMFParser/ChunkLoaders/Objects/Animations.cs index c55d7f8..299d88a 100644 --- a/NetMFAPatcher/MMFParser/ChunkLoaders/Objects/Animations.cs +++ b/NetMFAPatcher/MMFParser/ChunkLoaders/Objects/Animations.cs @@ -9,7 +9,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Objects { public Dictionary AnimationDict; - public Animations(ByteIO reader) : base(reader) + public Animations(ByteReader reader) : base(reader) { } @@ -63,7 +63,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Objects { public Dictionary DirectionDict; - public Animation(ByteIO reader) : base(reader) + public Animation(ByteReader reader) : base(reader) { } @@ -113,7 +113,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Objects public int Repeat; public int BackTo; public List Frames = new List(); - public AnimationDirection(ByteIO reader) : base(reader) + public AnimationDirection(ByteReader reader) : base(reader) { } diff --git a/NetMFAPatcher/MMFParser/ChunkLoaders/Objects/ObjectCommon.cs b/NetMFAPatcher/MMFParser/ChunkLoaders/Objects/ObjectCommon.cs index 4bff3ab..48f14df 100644 --- a/NetMFAPatcher/MMFParser/ChunkLoaders/Objects/ObjectCommon.cs +++ b/NetMFAPatcher/MMFParser/ChunkLoaders/Objects/ObjectCommon.cs @@ -1,14 +1,17 @@ using System; using System.Collections.Generic; +using System.Diagnostics; +using System.Drawing; using NetMFAPatcher.MMFParser.Data; using NetMFAPatcher.Utils; namespace NetMFAPatcher.MMFParser.ChunkLoaders.Objects { - public class ObjectCommon:ChunkLoader + public class ObjectCommon : ChunkLoader { private short _valuesOffset; private short _stringsOffset; + private byte[] Identifier; private int _fadeinOffset; private int _fadeoutOffset; private ushort _movementsOffset; @@ -19,8 +22,62 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Objects public Animations Animations; private long _end; + private BitDict preferences = new BitDict(new string[] + { + "Backsave", + "ScrollingIndependant", + "QuickDisplay", + "Sleep", + "LoadOnCall", + "Global", + "BackEffects", + "Kill", + "InkEffects", + "Transitions", + "FineCollisions", + "AppletProblems" + } + ); + + private BitDict flags = new BitDict(new string[] + { + "DisplayInFront", + "Background", + "Backsave", + "RunBeforeFadeIn", + "Movements", + "Animations", + "TabStop", + "WindowProc", + "Values", + "Sprites", + "InternalBacksave", + "ScrollingIndependant", + "QuickDisplay", + "NeverKill", + "NeverSleep", + "ManualSleep", + "Text", + "DoNotCreateAtStart", + "FakeSprite", + "FakeCollisions" + } + ); - public ObjectCommon(ByteIO reader) : base(reader) + private BitDict new_flags = new BitDict(new string[] + { + "DoNotSaveBackground", + "SolidBackground", + "CollisionBox", + "VisibleAtStart", + "ObstacleSolid", + "ObstaclePlatform", + "AutomaticRotation" + } + ); + + + public ObjectCommon(ByteReader reader) : base(reader) { } @@ -30,68 +87,67 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Objects public override void Read() { - - var currentPosition = Reader.Tell(); - var size = Reader.ReadInt32(); - var newobj = Settings.Build > 284; - var newobj2 = true; - if (newobj&&newobj2) + long currentPosition = Reader.Tell(); + int size = Reader.ReadInt32(); + bool newobj = Settings.Build > 284; + if (newobj && true) { _animationsOffset = (short) Reader.ReadUInt16(); _movementsOffset = Reader.ReadUInt16(); - var Version = Reader.ReadInt16(); + short version = Reader.ReadInt16(); Reader.ReadBytes(2); - var extensionOffset = Reader.ReadUInt16(); - var counterOffset = Reader.ReadUInt16(); - var flags = Reader.ReadUInt32(); + ushort extensionOffset = Reader.ReadUInt16(); + ushort counterOffset = Reader.ReadUInt16(); + flags.flag = Reader.ReadUInt32(); - var end = Reader.Tell() + 16; + long end = Reader.Tell() + 16; - var qualifiers = new List(); + List qualifiers = new List(); for (int i = 0; i < 8; i++) { - var qualifier = Reader.ReadInt16(); + short qualifier = Reader.ReadInt16(); if (qualifier == -1) break; qualifiers.Add(qualifier); } - + Reader.Seek(end); - var systemObjectOffset = Reader.ReadInt16(); + short systemObjectOffset = Reader.ReadInt16(); + _valuesOffset = Reader.ReadInt16(); _stringsOffset = Reader.ReadInt16(); - var newFlags = Reader.ReadUInt16(); - var preferences = Reader.ReadFourCc(); - var backColor = Reader.ReadColor(); - var fadeinOffset = Reader.ReadInt32(); - var fadeoutOffset = Reader.ReadInt32(); - + new_flags.flag = Reader.ReadUInt16(); + preferences.flag = Reader.ReadUInt16(); + Identifier = Reader.ReadFourCc(); + Color backColor = Reader.ReadColor(); + int fadeinOffset = Reader.ReadInt32(); + int fadeoutOffset = Reader.ReadInt32(); } else if (newobj) { _counterOffset = Reader.ReadInt16(); - var version = Reader.ReadInt16(); + short version = Reader.ReadInt16(); Reader.ReadBytes(2); _movementsOffset = (ushort) Reader.ReadInt16(); _extensionOffset = Reader.ReadInt16(); _animationsOffset = Reader.ReadInt16(); - var flags = Reader.ReadUInt32(); - var end = Reader.Tell() + 16; - var qualifiers = new List(); + uint flags = Reader.ReadUInt32(); + long end = Reader.Tell() + 16; + List qualifiers = new List(); for (int i = 0; i < 8; i++) { - var qualifier = Reader.ReadInt16(); + short qualifier = Reader.ReadInt16(); if (qualifier == -1) break; qualifiers.Add(qualifier); } - + Reader.Seek(end); - + _valuesOffset = Reader.ReadInt16(); _stringsOffset = Reader.ReadInt16(); - var newFlags = Reader.ReadUInt16(); - var preferences = Reader.ReadFourCc(); - var backColor = Reader.ReadColor(); + ushort newFlags = Reader.ReadUInt16(); + byte[] preferences = Reader.ReadFourCc(); + Color backColor = Reader.ReadColor(); _fadeinOffset = Reader.ReadInt32(); _fadeoutOffset = Reader.ReadInt32(); } @@ -99,32 +155,32 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Objects { _movementsOffset = Reader.ReadUInt16(); _animationsOffset = Reader.ReadInt16(); - var version = Reader.ReadInt16(); + short version = Reader.ReadInt16(); _counterOffset = Reader.ReadInt16(); _systemObjectOffset = Reader.ReadInt16(); Reader.ReadBytes(2); - var flags = Reader.ReadUInt32(); - + flags.flag = Reader.ReadUInt32(); + _end = Reader.Tell() + 16; - - var qualifiers = new List(); + + List qualifiers = new List(); for (int i = 0; i < 8; i++) { - var qualifier = Reader.ReadInt16(); + short qualifier = Reader.ReadInt16(); if (qualifier == -1) break; qualifiers.Add(qualifier); } - + Reader.Seek(_end); - + _extensionOffset = Reader.ReadInt16(); - + _valuesOffset = Reader.ReadInt16(); _stringsOffset = Reader.ReadInt16(); - var newFlags = Reader.ReadUInt16(); - var preferences = Reader.ReadUInt16(); - var identifier = Reader.ReadFourCc(); - var backColor = Reader.ReadColor(); + new_flags.flag = Reader.ReadUInt16(); + preferences.flag = Reader.ReadUInt16(); + byte[] identifier = Reader.ReadFourCc(); + Color backColor = Reader.ReadColor(); _fadeinOffset = Reader.ReadInt32(); _fadeoutOffset = Reader.ReadInt32(); } @@ -135,38 +191,35 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Objects //var movements = new Movements(Reader); //movements.Read(); } + Console.WriteLine("Movements done"); if (_valuesOffset != 0) { - Reader.Seek(currentPosition+_valuesOffset); - var values = new AlterableValues(Reader); + Reader.Seek(currentPosition + _valuesOffset); + AlterableValues values = new AlterableValues(Reader); values.Read(); } + Console.WriteLine("Values done"); if (_stringsOffset != 0) { - Reader.Seek(currentPosition+_stringsOffset); - var strings = new AlterableStrings(Reader); + Reader.Seek(currentPosition + _stringsOffset); + AlterableStrings strings = new AlterableStrings(Reader); strings.Read(); } + Console.WriteLine("Strings done"); if (_animationsOffset != 0) { - Reader.Seek(currentPosition+_stringsOffset); + Reader.Seek(currentPosition + _stringsOffset); Animations = new Animations(Reader); - + Animations.Read(); } - Console.WriteLine("Animations done"); - Console.WriteLine("SysObjOff: "+_systemObjectOffset); - Console.WriteLine("ExtOff: "+_extensionOffset); - - - - - - + Console.WriteLine("Animations done"); + Console.WriteLine("SysObjOff: " + _systemObjectOffset); + Console.WriteLine("ExtOff: " + _extensionOffset); } public override void Print(bool ext) diff --git a/NetMFAPatcher/MMFParser/ChunkLoaders/Objects/Value.cs b/NetMFAPatcher/MMFParser/ChunkLoaders/Objects/Value.cs index 06d812c..e7e0f69 100644 --- a/NetMFAPatcher/MMFParser/ChunkLoaders/Objects/Value.cs +++ b/NetMFAPatcher/MMFParser/ChunkLoaders/Objects/Value.cs @@ -8,7 +8,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Objects { public class AlterableValues:ChunkLoader { - public AlterableValues(ByteIO reader) : base(reader) + public AlterableValues(ByteReader reader) : base(reader) { } @@ -44,7 +44,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Objects } public class AlterableStrings:ChunkLoader { - public AlterableStrings(ByteIO reader) : base(reader) + public AlterableStrings(ByteReader reader) : base(reader) { } diff --git a/NetMFAPatcher/MMFParser/Data/ChunkList.cs b/NetMFAPatcher/MMFParser/Data/ChunkList.cs index b7f2170..a3c5ccc 100644 --- a/NetMFAPatcher/MMFParser/Data/ChunkList.cs +++ b/NetMFAPatcher/MMFParser/Data/ChunkList.cs @@ -15,7 +15,7 @@ namespace NetMFAPatcher.MMFParser.Data public bool Verbose = false; public List Frames = new List(); - public void Read(ByteIO exeReader) + public void Read(ByteReader exeReader) { Chunks.Clear(); while (true) @@ -77,12 +77,12 @@ namespace NetMFAPatcher.MMFParser.Data _chunkList = actualChunkList; } - public ByteIO get_reader() + public ByteReader get_reader() { - return new ByteIO(ChunkData); + return new ByteReader(ChunkData); } - public void Read(ByteIO exeReader) + public void Read(ByteReader exeReader) { Id = exeReader.ReadInt16(); Name = this.ActualName(); diff --git a/NetMFAPatcher/MMFParser/Data/DataLoader.cs b/NetMFAPatcher/MMFParser/Data/DataLoader.cs index 38d4287..e904bd5 100644 --- a/NetMFAPatcher/MMFParser/Data/DataLoader.cs +++ b/NetMFAPatcher/MMFParser/Data/DataLoader.cs @@ -6,10 +6,10 @@ namespace NetMFAPatcher.MMFParser.Data public abstract class DataLoader { private Chunk _chunk; - public ByteIO Reader; + public ByteReader Reader; public bool Verbose = true; - protected DataLoader(ByteIO reader) + protected DataLoader(ByteReader reader) { this.Reader = reader; } diff --git a/NetMFAPatcher/MMFParser/Data/EXE.cs b/NetMFAPatcher/MMFParser/Data/EXE.cs index 42d4c0d..396cc47 100644 --- a/NetMFAPatcher/MMFParser/Data/EXE.cs +++ b/NetMFAPatcher/MMFParser/Data/EXE.cs @@ -13,7 +13,7 @@ namespace NetMFAPatcher.MMFParser.Data public PackData PackData; public GameData GameData; public static Exe LatestInst; - public void ParseExe(ByteIO exeReader) + public void ParseExe(ByteReader exeReader) { Exe.LatestInst = this; Logger.Log($"Executable: {Settings.GameName}\n", true, ConsoleColor.DarkRed); diff --git a/NetMFAPatcher/MMFParser/Data/GameData.cs b/NetMFAPatcher/MMFParser/Data/GameData.cs index 084bb6f..c90a3c9 100644 --- a/NetMFAPatcher/MMFParser/Data/GameData.cs +++ b/NetMFAPatcher/MMFParser/Data/GameData.cs @@ -53,7 +53,7 @@ namespace NetMFAPatcher.MMFParser.Data public List Frames = new List(); - public void Read(ByteIO exeReader) + public void Read(ByteReader exeReader) { string magic = exeReader.ReadAscii(4); //Reading header diff --git a/NetMFAPatcher/MMFParser/Data/MFA.cs b/NetMFAPatcher/MMFParser/Data/MFA.cs index f21a3dc..2a0b52d 100644 --- a/NetMFAPatcher/MMFParser/Data/MFA.cs +++ b/NetMFAPatcher/MMFParser/Data/MFA.cs @@ -383,7 +383,7 @@ namespace NetMFAPatcher.MMFParser.Data } - public MFA(ByteIO reader) : base(reader) + public MFA(ByteReader reader) : base(reader) { } diff --git a/NetMFAPatcher/MMFParser/Data/PackData.cs b/NetMFAPatcher/MMFParser/Data/PackData.cs index 548c748..ab20665 100644 --- a/NetMFAPatcher/MMFParser/Data/PackData.cs +++ b/NetMFAPatcher/MMFParser/Data/PackData.cs @@ -17,7 +17,7 @@ namespace NetMFAPatcher.MMFParser.Data { } - public void Read(ByteIO exeReader) + public void Read(ByteReader exeReader) { long start = exeReader.Tell(); byte[] header = exeReader.ReadBytes(8); @@ -70,7 +70,7 @@ namespace NetMFAPatcher.MMFParser.Data int _bingo = 0; public byte[] Data; - public void Read(ByteIO exeReader) + public void Read(ByteReader exeReader) { UInt16 len = exeReader.ReadUInt16(); PackFilename = exeReader.ReadWideString(len); diff --git a/NetMFAPatcher/MMFParser/Decompiling/MFAGenerator.cs b/NetMFAPatcher/MMFParser/Decompiling/MFAGenerator.cs index 6826cad..3e48ec3 100644 --- a/NetMFAPatcher/MMFParser/Decompiling/MFAGenerator.cs +++ b/NetMFAPatcher/MMFParser/Decompiling/MFAGenerator.cs @@ -11,7 +11,7 @@ namespace NetMFAPatcher.MMFParser.Decompiling public static void BuildMFA() { Settings.DoMFA = true; - var mfaReader = new ByteIO(TemplatePath, FileMode.Open); + var mfaReader = new ByteReader(TemplatePath, FileMode.Open); var template = new MFA(mfaReader); template.Read(); //Loading template @@ -27,7 +27,7 @@ namespace NetMFAPatcher.MMFParser.Decompiling public static void ReadTestMFA() { - var mfaReader = new ByteIO(TemplatePath, FileMode.Open); + var mfaReader = new ByteReader(TemplatePath, FileMode.Open); var template = new MFA(mfaReader); template.Read(); var mfaWriter = new ByteWriter("outTest.mfa", FileMode.Create); diff --git a/NetMFAPatcher/Program.cs b/NetMFAPatcher/Program.cs index b853949..4d03f47 100644 --- a/NetMFAPatcher/Program.cs +++ b/NetMFAPatcher/Program.cs @@ -79,7 +79,7 @@ namespace NetMFAPatcher { Settings.DoMFA = false; - var exeReader = new ByteIO(path, FileMode.OpenOrCreate); + var exeReader = new ByteReader(path, FileMode.OpenOrCreate); var currentExe = new Exe(); currentExe.ParseExe(exeReader); Logger.Log("Finished!", true, ConsoleColor.Yellow); diff --git a/NetMFAPatcher/Utils/BitDict.cs b/NetMFAPatcher/Utils/BitDict.cs index af320db..b94e1da 100644 --- a/NetMFAPatcher/Utils/BitDict.cs +++ b/NetMFAPatcher/Utils/BitDict.cs @@ -17,6 +17,7 @@ namespace NetMFAPatcher.Utils public bool this[String key] { get => GetFlag(key); + // set => SetFlag(key,value); } public bool GetFlag(String key) diff --git a/NetMFAPatcher/Utils/ByteIO.cs b/NetMFAPatcher/Utils/ByteReader.cs similarity index 85% rename from NetMFAPatcher/Utils/ByteIO.cs rename to NetMFAPatcher/Utils/ByteReader.cs index 0ae6e33..8e299eb 100644 --- a/NetMFAPatcher/Utils/ByteIO.cs +++ b/NetMFAPatcher/Utils/ByteReader.cs @@ -5,25 +5,25 @@ using System.Text; namespace NetMFAPatcher.Utils { - public class ByteIO : BinaryReader + public class ByteReader : BinaryReader { - public ByteIO(Stream input) : base(input) + public ByteReader(Stream input) : base(input) { } - public ByteIO(Stream input, Encoding encoding) : base(input, encoding) + public ByteReader(Stream input, Encoding encoding) : base(input, encoding) { } - public ByteIO(Stream input, Encoding encoding, bool leaveOpen) : base(input, encoding, leaveOpen) + public ByteReader(Stream input, Encoding encoding, bool leaveOpen) : base(input, encoding, leaveOpen) { } - public ByteIO(byte[] data) : base(new MemoryStream(data)) + public ByteReader(byte[] data) : base(new MemoryStream(data)) { } - public ByteIO(string path, FileMode fileMode) : base(new FileStream(path, fileMode)) + public ByteReader(string path, FileMode fileMode) : base(new FileStream(path, fileMode)) { } diff --git a/NetMFAPatcher/Utils/Decompressor.cs b/NetMFAPatcher/Utils/Decompressor.cs index 1f6107b..c3dd08e 100644 --- a/NetMFAPatcher/Utils/Decompressor.cs +++ b/NetMFAPatcher/Utils/Decompressor.cs @@ -6,7 +6,7 @@ namespace NetMFAPatcher.Utils { public static class Decompressor { - public static byte[] Decompress(ByteIO exeReader, out int decompressed) + public static byte[] Decompress(ByteReader exeReader, out int decompressed) { Int32 decompSize = exeReader.ReadInt32(); Int32 compSize = exeReader.ReadInt32(); @@ -14,7 +14,7 @@ namespace NetMFAPatcher.Utils return decompress_block(exeReader, compSize, decompSize); } - public static ByteIO DecompressAsReader(ByteIO exeReader, out int decompressed) + public static ByteReader DecompressAsReader(ByteReader exeReader, out int decompressed) { Int32 decompSize = exeReader.ReadInt32(); Int32 compSize = exeReader.ReadInt32(); @@ -22,19 +22,19 @@ namespace NetMFAPatcher.Utils byte[] actualData = Ionic.Zlib.ZlibStream.UncompressBuffer(compressedData); Debug.Assert(actualData.Length == decompSize); decompressed = decompSize; - return new ByteIO(actualData); + return new ByteReader(actualData); } - public static byte[] decompress_block(ByteIO reader, int size, int decompSize) + public static byte[] decompress_block(ByteReader reader, int size, int decompSize) { byte[] compressedData = reader.ReadBytes(size); byte[] actualData = Ionic.Zlib.ZlibStream.UncompressBuffer(compressedData); return actualData; } - public static ByteIO decompress_asReader(ByteIO imageData, int v, int decompressedSize) + public static ByteReader decompress_asReader(ByteReader imageData, int v, int decompressedSize) { - return new ByteIO(decompress_block(imageData, v, decompressedSize)); + return new ByteReader(decompress_block(imageData, v, decompressedSize)); } diff --git a/NetMFAPatcher/Utils/Decryption.cs b/NetMFAPatcher/Utils/Decryption.cs index b327e8b..eb751e9 100644 --- a/NetMFAPatcher/Utils/Decryption.cs +++ b/NetMFAPatcher/Utils/Decryption.cs @@ -51,7 +51,7 @@ namespace NetMFAPatcher.Utils public static byte[] DecodeMode3(byte[] chunkData, int chunkSize, int chunkId, out int decompressed) { - var reader = new ByteIO(chunkData); + var reader = new ByteReader(chunkData); var decompressedSize = reader.ReadUInt32(); var rawData = reader.ReadBytes((int) reader.Size()); @@ -61,7 +61,7 @@ namespace NetMFAPatcher.Utils } rawData = DecodeChunk(rawData, chunkSize); - using (var data = new ByteIO(rawData)) + using (var data = new ByteReader(rawData)) { var compressedSize = data.ReadUInt32(); decompressed = (int) decompressedSize; diff --git a/NetMFAPatcher/Utils/Helper.cs b/NetMFAPatcher/Utils/Helper.cs index 31c8eab..08f91a4 100644 --- a/NetMFAPatcher/Utils/Helper.cs +++ b/NetMFAPatcher/Utils/Helper.cs @@ -15,13 +15,12 @@ namespace NetMFAPatcher.Utils { static class Helper { - public static string CleanInput(string strIn) { try { return Regex.Replace(strIn, @"[^\w\.@-]", "", - RegexOptions.None, TimeSpan.FromSeconds(1.5)); + RegexOptions.None, TimeSpan.FromSeconds(1.5)); } catch (RegexMatchTimeoutException) @@ -29,7 +28,7 @@ namespace NetMFAPatcher.Utils return String.Empty; } } - + public static string Log(this byte[] bytes, bool log = true, string format = "") { string temp = String.Empty; @@ -39,55 +38,58 @@ namespace NetMFAPatcher.Utils if (i > 0) { temp += " " + item.ToString(format); - } else { temp += item.ToString(format); } - } + if (log) { - - Console.WriteLine(temp); } - return temp; - + return temp; } - public static string AutoReadUnicode(ByteIO reader) + + public static string AutoReadUnicode(ByteReader reader) { var len = reader.ReadInt16(); reader.Skip(2); return reader.ReadWideString(len); } - public static void AutoWriteUnicode(this ByteWriter writer,string value) + + public static void AutoWriteUnicode(this ByteWriter writer, string value) { - writer.WriteInt16((short)value.Length); + writer.WriteInt16((short) value.Length); writer.Skip(2); writer.WriteUnicode(value); } - public static DataLoader LoadParameter(int code, ByteIO reader) + + public static DataLoader LoadParameter(int code, ByteReader reader) { DataLoader item = null; if (code == 1) { item = new ParamObject(reader); } + if (code == 2) { item = new Time(reader); } - if (code==3|| code == 10|| code == 11 || code == 12 || code == 17 || code == 26 || code == 31 || code == 43 || code == 57 || code == 58 || code == 60 || code == 61) + + if (code == 3 || code == 10 || code == 11 || code == 12 || code == 17 || code == 26 || code == 31 || + code == 43 || code == 57 || code == 58 || code == 60 || code == 61) { - item = new Short(reader); + item = new Short(reader); } - return item; + return item; } - public static string GetHex(this byte[] data, int count=-1,int position=0) + + public static string GetHex(this byte[] data, int count = -1, int position = 0) { var actualCount = count; if (actualCount == -1) actualCount = data.Length; @@ -97,9 +99,10 @@ namespace NetMFAPatcher.Utils temp += data[i].ToString("X2"); temp += " "; } + return temp; } - + public static void PrintHex(this byte[] data) { var blockSize = 16; @@ -112,13 +115,10 @@ namespace NetMFAPatcher.Utils if (b < 128 && b > 32) charAcc += Convert.ToChar(b); else charAcc += '.'; } + var bLen = block.Count(); //var accLen= - - } - - } public static byte[] GetContents(this ByteWriter wrt) @@ -126,12 +126,12 @@ namespace NetMFAPatcher.Utils var buff = new byte[wrt.BaseStream.Length]; for (int i = 0; i < wrt.BaseStream.Length; i++) { - buff.Append((byte)wrt.BaseStream.ReadByte()); - + buff.Append((byte) wrt.BaseStream.ReadByte()); } return buff; } + /// /// Splits an array into several smaller arrays. /// @@ -141,7 +141,7 @@ namespace NetMFAPatcher.Utils /// An array containing smaller arrays. public static IEnumerable> Split(this T[] array, int size) { - for (var i = 0; i < (float)array.Length / size; i++) + for (var i = 0; i < (float) array.Length / size; i++) { yield return array.Skip(i * size).Take(size); } @@ -150,7 +150,7 @@ namespace NetMFAPatcher.Utils public static List GetColors(this byte[] bytes) { List colors = new List(); - for (int i = 0; i < bytes.Length; i+=4) + for (int i = 0; i < bytes.Length; i += 4) { var color = Color.FromArgb(bytes[i], bytes[i + 1], bytes[i + 2], bytes[i + 3]); colors.Add(color); @@ -161,10 +161,11 @@ namespace NetMFAPatcher.Utils public static void CheckPattern(object source, object pattern) { - if (source.GetType() != pattern.GetType()) throw new InvalidDataException("Data is not valid: types are different"); + if (source.GetType() != pattern.GetType()) + throw new InvalidDataException("Data is not valid: types are different"); if (source is string) { - if ((string)source != (string)pattern) + if ((string) source != (string) pattern) { throw new InvalidDataException($"Data is not valid: {source} != {pattern}"); } @@ -178,13 +179,14 @@ namespace NetMFAPatcher.Utils } } - public static void OnImageSaved(int index,int all) + public static void OnImageSaved(int index, int all) { - Program.MyForm.UpdateImageBar(index,all); + Program.MyForm.UpdateImageBar(index, all); } - public static void OnSoundSaved(int index,int all) + + public static void OnSoundSaved(int index, int all) { - Program.MyForm.UpdateSoundBar(index,all); + Program.MyForm.UpdateSoundBar(index, all); } private const long OneKb = 1024; @@ -194,65 +196,65 @@ namespace NetMFAPatcher.Utils public static string ToPrettySize(this int value, int decimalPlaces = 0) { - return ((long)value).ToPrettySize(decimalPlaces); + return ((long) value).ToPrettySize(decimalPlaces); } public static string ToPrettySize(this long value, int decimalPlaces = 0) { - var asTb = Math.Round((double)value / OneTb, decimalPlaces); - var asGb = Math.Round((double)value / OneGb, decimalPlaces); - var asMb = Math.Round((double)value / OneMb, decimalPlaces); - var asKb = Math.Round((double)value / OneKb, decimalPlaces); - string chosenValue = asTb > 1 ? string.Format("{0} TB",asTb) - : asGb > 1 ? string.Format("{0} GB",asGb) - : asMb > 1 ? string.Format("{0} MB",asMb) - : asKb > 1 ? string.Format("{0} KB",asKb) - : string.Format("{0} B", Math.Round((double)value, decimalPlaces)); + var asTb = Math.Round((double) value / OneTb, decimalPlaces); + var asGb = Math.Round((double) value / OneGb, decimalPlaces); + var asMb = Math.Round((double) value / OneMb, decimalPlaces); + var asKb = Math.Round((double) value / OneKb, decimalPlaces); + string chosenValue = asTb > 1 ? string.Format("{0} TB", asTb) + : asGb > 1 ? string.Format("{0} GB", asGb) + : asMb > 1 ? string.Format("{0} MB", asMb) + : asKb > 1 ? string.Format("{0} KB", asKb) + : string.Format("{0} B", Math.Round((double) value, decimalPlaces)); return chosenValue; } public static string ActualName(this ChunkList.Chunk chunk) { - var constName = ((Constants.ChunkNames)chunk.Id).ToString(); + var constName = ((Constants.ChunkNames) chunk.Id).ToString(); int tempId = 0; - int.TryParse(constName,out tempId); + int.TryParse(constName, out tempId); if (tempId != chunk.Id) return constName; else return $"Unknown-{chunk.Id}"; - } - public static ChunkNode GetChunkNode(ChunkList.Chunk chunk,string customName = "[DEFAULT-NAME]") + public static ChunkNode GetChunkNode(ChunkList.Chunk chunk, string customName = "[DEFAULT-NAME]") { ChunkNode node = null; if (chunk.Loader != null) { - node = new ChunkNode(chunk.Name,chunk.Loader); - + node = new ChunkNode(chunk.Name, chunk.Loader); } else { - node = new ChunkNode(chunk.Name,chunk); - + node = new ChunkNode(chunk.Name, chunk); } + if (customName != "[DEFAULT-NAME]") { node.Text = customName; } - return node; + + return node; } - public static Animation GetClosestAnimation(int index, Dictionary animDict,int count) + public static Animation GetClosestAnimation(int index, Dictionary animDict, int count) { try { return animDict[index]; } - catch {} + catch + { + } return null; - - } + [DllImport("kernel32.dll")] public static extern IntPtr GetConsoleWindow(); @@ -261,9 +263,26 @@ namespace NetMFAPatcher.Utils public const int SW_HIDE = 0; public const int SW_SHOW = 5; - - + public static T[] To1DArray(T[,] input) + { + // Step 1: get total size of 2D array, and allocate 1D array. + int size = input.Length; + T[] result = new T[size]; + + // Step 2: copy 2D array elements into a 1D array. + int write = 0; + for (int i = 0; i <= input.GetUpperBound(0); i++) + { + for (int z = 0; z <= input.GetUpperBound(1); z++) + { + result[write++] = input[i, z]; + } + } + + // Step 3: return the new array. + return result; + } } -} +} \ No newline at end of file diff --git a/NetMFAPatcher/mmfparser/chunkloaders/AppHeader.cs b/NetMFAPatcher/mmfparser/chunkloaders/AppHeader.cs index 13566d5..db87643 100644 --- a/NetMFAPatcher/mmfparser/chunkloaders/AppHeader.cs +++ b/NetMFAPatcher/mmfparser/chunkloaders/AppHeader.cs @@ -64,7 +64,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders public override void Read() { - Reader = new ByteIO(Chunk.ChunkData); + Reader = new ByteReader(Chunk.ChunkData); Size = Reader.ReadInt32(); Flags.flag=(uint) Reader.ReadInt16();//I finally got my balls back @@ -105,7 +105,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders } - public AppHeader(ByteIO reader) : base(reader) + public AppHeader(ByteReader reader) : base(reader) { } @@ -119,7 +119,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders { public List Items; - public Controls(ByteIO reader) : base(reader) + public Controls(ByteReader reader) : base(reader) { this.Reader = reader; } @@ -155,10 +155,10 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders public class PlayerControl { int _controlType = 0; - ByteIO _reader; + ByteReader _reader; Keys _keys; - public PlayerControl(ByteIO reader) + public PlayerControl(ByteReader reader) { this._reader = reader; } @@ -188,9 +188,9 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders int _button2; int _button3; int _button4; - ByteIO _reader; + ByteReader _reader; - public Keys(ByteIO reader) + public Keys(ByteReader reader) { this._reader = reader; } diff --git a/NetMFAPatcher/mmfparser/chunkloaders/AppMenu.cs b/NetMFAPatcher/mmfparser/chunkloaders/AppMenu.cs index 9f28c77..9d22f62 100644 --- a/NetMFAPatcher/mmfparser/chunkloaders/AppMenu.cs +++ b/NetMFAPatcher/mmfparser/chunkloaders/AppMenu.cs @@ -16,7 +16,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders public List AccelKey; public List AccelId; - public AppMenu(ByteIO reader) : base(reader) + public AppMenu(ByteReader reader) : base(reader) { } @@ -62,7 +62,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders } } - public void Load(ByteIO reader) + public void Load(ByteReader reader) { while(true) { @@ -94,7 +94,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders public int Flags = 0; public int Id = 0; public string Mnemonic = ""; - public AppMenuItem(ByteIO reader) : base(reader) + public AppMenuItem(ByteReader reader) : base(reader) { } diff --git a/NetMFAPatcher/mmfparser/chunkloaders/ChunkLoader.cs b/NetMFAPatcher/mmfparser/chunkloaders/ChunkLoader.cs index 9a21c08..b1c90c9 100644 --- a/NetMFAPatcher/mmfparser/chunkloaders/ChunkLoader.cs +++ b/NetMFAPatcher/mmfparser/chunkloaders/ChunkLoader.cs @@ -6,10 +6,10 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders public abstract class ChunkLoader//:DataLoader { public Chunk Chunk; - public ByteIO Reader; + public ByteReader Reader; public bool Verbose = false; - protected ChunkLoader(ByteIO reader) + protected ChunkLoader(ByteReader reader) { this.Reader = reader; } diff --git a/NetMFAPatcher/mmfparser/chunkloaders/Frame.cs b/NetMFAPatcher/mmfparser/chunkloaders/Frame.cs index 5ab3c0f..5d6f8b0 100644 --- a/NetMFAPatcher/mmfparser/chunkloaders/Frame.cs +++ b/NetMFAPatcher/mmfparser/chunkloaders/Frame.cs @@ -16,7 +16,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders { class FrameName : StringChunk { - public FrameName(ByteIO reader) : base(reader) + public FrameName(ByteReader reader) : base(reader) { } @@ -27,7 +27,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders class FramePassword : StringChunk { - public FramePassword(ByteIO reader) : base(reader) + public FramePassword(ByteReader reader) : base(reader) { } @@ -76,7 +76,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders public override void Read() { - var frameReader = new ByteIO(Chunk.ChunkData); + var frameReader = new ByteReader(Chunk.ChunkData); Chunks = new ChunkList(); Chunks.Verbose = false; @@ -122,7 +122,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders } - public Frame(ByteIO reader) : base(reader) + public Frame(ByteReader reader) : base(reader) { } @@ -150,7 +150,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders }); public byte[] Background; - public FrameHeader(ByteIO reader) : base(reader) + public FrameHeader(ByteReader reader) : base(reader) { } @@ -191,7 +191,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders public int CountOfObjects=0; public List Items = new List(); - public ObjectInstances(ByteIO reader) : base(reader) + public ObjectInstances(ByteReader reader) : base(reader) { } @@ -237,7 +237,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders public string Name; public short ParentHandle; - public ObjectInstance(ByteIO reader) : base(reader) + public ObjectInstance(ByteReader reader) : base(reader) { } @@ -292,7 +292,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders class Layer : ChunkLoader { - public Layer(ByteIO reader) : base(reader) + public Layer(ByteReader reader) : base(reader) { } diff --git a/NetMFAPatcher/mmfparser/chunkloaders/FrameItems.cs b/NetMFAPatcher/mmfparser/chunkloaders/FrameItems.cs index 68af016..f7f4d0f 100644 --- a/NetMFAPatcher/mmfparser/chunkloaders/FrameItems.cs +++ b/NetMFAPatcher/mmfparser/chunkloaders/FrameItems.cs @@ -17,7 +17,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders public List Names = new List(); public int NumberOfItems; public FrameItems(Chunk chunk) : base(chunk) { } - public FrameItems(ByteIO reader) : base(reader) { } + public FrameItems(ByteReader reader) : base(reader) { } public override void Print(bool ext) { diff --git a/NetMFAPatcher/mmfparser/chunkloaders/ObjectInfo.cs b/NetMFAPatcher/mmfparser/chunkloaders/ObjectInfo.cs index a9653e8..f994657 100644 --- a/NetMFAPatcher/mmfparser/chunkloaders/ObjectInfo.cs +++ b/NetMFAPatcher/mmfparser/chunkloaders/ObjectInfo.cs @@ -28,7 +28,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders { } - public ObjectInfo(ByteIO reader) : base(reader) + public ObjectInfo(ByteReader reader) : base(reader) { } @@ -91,7 +91,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders public class ObjectName : StringChunk { - public ObjectName(ByteIO reader) : base(reader) + public ObjectName(ByteReader reader) : base(reader) { } @@ -105,7 +105,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders public bool IsCommon; public ObjectCommon Loader; - public ObjectProperties(ByteIO reader) : base(reader) + public ObjectProperties(ByteReader reader) : base(reader) { } @@ -151,7 +151,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders public UInt32 InkEffect; public UInt32 InkEffectParameter; - public ObjectHeader(ByteIO reader) : base(reader) + public ObjectHeader(ByteReader reader) : base(reader) { } diff --git a/NetMFAPatcher/mmfparser/chunkloaders/StringChunk.cs b/NetMFAPatcher/mmfparser/chunkloaders/StringChunk.cs index 73521e7..d918628 100644 --- a/NetMFAPatcher/mmfparser/chunkloaders/StringChunk.cs +++ b/NetMFAPatcher/mmfparser/chunkloaders/StringChunk.cs @@ -17,7 +17,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders public override void Read() { - Reader = new ByteIO(Chunk.ChunkData); + Reader = new ByteReader(Chunk.ChunkData); Value = Reader.ReadWideString(); } @@ -36,7 +36,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders } - public StringChunk(ByteIO reader) : base(reader) + public StringChunk(ByteReader reader) : base(reader) { } @@ -47,7 +47,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders class AppName : StringChunk { - public AppName(ByteIO reader) : base(reader) + public AppName(ByteReader reader) : base(reader) { } @@ -58,7 +58,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders class AppAuthor : StringChunk { - public AppAuthor(ByteIO reader) : base(reader) + public AppAuthor(ByteReader reader) : base(reader) { } @@ -69,7 +69,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders class ExtPath : StringChunk { - public ExtPath(ByteIO reader) : base(reader) + public ExtPath(ByteReader reader) : base(reader) { } @@ -80,7 +80,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders class EditorFilename : StringChunk { - public EditorFilename(ByteIO reader) : base(reader) + public EditorFilename(ByteReader reader) : base(reader) { } @@ -91,7 +91,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders class TargetFilename : StringChunk { - public TargetFilename(ByteIO reader) : base(reader) + public TargetFilename(ByteReader reader) : base(reader) { } @@ -102,7 +102,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders class AppDoc : StringChunk { - public AppDoc(ByteIO reader) : base(reader) + public AppDoc(ByteReader reader) : base(reader) { } @@ -113,7 +113,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders class AboutText : StringChunk { - public AboutText(ByteIO reader) : base(reader) + public AboutText(ByteReader reader) : base(reader) { } @@ -124,7 +124,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders class Copyright : StringChunk { - public Copyright(ByteIO reader) : base(reader) + public Copyright(ByteReader reader) : base(reader) { } @@ -135,7 +135,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders class DemoFilePath : StringChunk { - public DemoFilePath(ByteIO reader) : base(reader) + public DemoFilePath(ByteReader reader) : base(reader) { } diff --git a/NetMFAPatcher/mmfparser/chunkloaders/banks/FontBank.cs b/NetMFAPatcher/mmfparser/chunkloaders/banks/FontBank.cs index 63e4cd1..3abc2be 100644 --- a/NetMFAPatcher/mmfparser/chunkloaders/banks/FontBank.cs +++ b/NetMFAPatcher/mmfparser/chunkloaders/banks/FontBank.cs @@ -26,7 +26,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Banks //i am testing with no fonts suck pinus haha } - public FontBank(ByteIO reader) : base(reader) + public FontBank(ByteReader reader) : base(reader) { } diff --git a/NetMFAPatcher/mmfparser/chunkloaders/banks/ImageBank.cs b/NetMFAPatcher/mmfparser/chunkloaders/banks/ImageBank.cs index 3bb2ff3..0bd2811 100644 --- a/NetMFAPatcher/mmfparser/chunkloaders/banks/ImageBank.cs +++ b/NetMFAPatcher/mmfparser/chunkloaders/banks/ImageBank.cs @@ -5,11 +5,11 @@ using System.Drawing; using System.Drawing.Imaging; using System.IO; using System.Runtime.InteropServices; +using System.Security.Cryptography.X509Certificates; using System.Windows.Forms; using NetMFAPatcher.GUI; using NetMFAPatcher.MMFParser.Data; using NetMFAPatcher.Utils; - using static NetMFAPatcher.MMFParser.Data.ChunkList; namespace NetMFAPatcher.MMFParser.ChunkLoaders.Banks @@ -19,7 +19,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Banks public Dictionary Images = new Dictionary(); public uint NumberOfItems; - public ImageBank(ByteIO reader) : base(reader) + public ImageBank(ByteReader reader) : base(reader) { } @@ -35,19 +35,18 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Banks { return new string[] { - $"Number of images: {NumberOfItems}" + $"Number of images: {NumberOfItems}" }; } public override void Read() { - - Reader.Seek(0);//Reset the reader to avoid bugs when dumping more than once - + Reader.Seek(0); //Reset the reader to avoid bugs when dumping more than once + NumberOfItems = Reader.ReadUInt32(); - + Console.WriteLine($"Found {NumberOfItems} images"); - + if (!Settings.DumpImages) return; for (int i = 0; i < NumberOfItems; i++) { @@ -56,15 +55,15 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Banks MainForm.BreakImages = false; break; } + var item = new ImageItem(Reader); item.Read(); - Images.Add(item.Handle,item); + Images.Add(item.Handle, item); if (Settings.DumpImages) { - item.Save($"{Settings.ImagePath}\\" + item.Handle.ToString() + ".png"); Console.ReadKey(); - Helper.OnImageSaved(i,(int) NumberOfItems); + Helper.OnImageSaved(i, (int) NumberOfItems); } if (Exe.LatestInst.GameData.ProductBuild >= 284) @@ -108,6 +107,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Banks int _indexed; public byte[] rawImg; + public byte[] rawAlpha; public bool Debug = false; @@ -122,7 +122,6 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Banks public override void Print(bool ext) { - } public override string[] GetReadableData() @@ -133,7 +132,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Banks public void Load() { Reader.Seek(Position); - ByteIO imageReader; + ByteReader imageReader; imageReader = Debug ? Reader : Decompressor.DecompressAsReader(Reader, out var a); @@ -145,7 +144,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Banks if (Debug) { - imageReader = new ByteIO(imageReader.ReadBytes(Size + 20)); + imageReader = new ByteReader(imageReader.ReadBytes(Size + 20)); } _width = imageReader.ReadInt16(); @@ -160,44 +159,26 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Banks _actionY = imageReader.ReadInt16(); _transparent = imageReader.ReadBytes(4); Logger.Log($"Loading image {Handle.ToString(),4} Size: {_width,4}x{_height,4}"); - byte[] imageData = new byte[1]; - if (Debug2 == 1) - { - var imgLen = imageReader.Size() - imageReader.Tell(); - var data = imageReader.ReadBytes((int) imgLen); - imageReader.BaseStream.Position -= imgLen; - File.WriteAllBytes("CumImage.bin", Ionic.Zlib.DeflateStream.CompressBuffer(data)); - } - - if (Debug2 == 2) - { - imageData = File.ReadAllBytes("CumImage.bin"); - } + byte[] imageData; if (Flags["LZX"]) { - var DecompressedSize = imageReader.ReadUInt32(); + uint decompressedSize = imageReader.ReadUInt32(); imageData = Decompressor.decompress_block(imageReader, (int) (imageReader.Size() - imageReader.Tell()), - (int) DecompressedSize); - + (int) decompressedSize); } else { imageData = imageReader.ReadBytes((int) (imageReader.Size() - imageReader.Tell())); } - - - int bytesRead = 0; + int bytesRead = 0; rawImg = imageData; if (Flags["RLE"] || Flags["RLEW"] || Flags["RLET"]) { } - - else { - switch (_graphicMode) { case 4: @@ -222,6 +203,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Banks if (Flags["Alpha"]) { byte[,] alpha = ImageHelper.ReadAlpha(imageData, _width, _height, Size - alphaSize); + rawAlpha = Helper.To1DArray(alpha); int stride = _width * 4; for (int y = 0; y < _height; y++) { @@ -256,44 +238,41 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Banks public void Write(ByteWriter writer) { - writer.WriteInt32(_checksum); - writer.WriteInt32(_references); - writer.WriteInt32(_colorArray.Length); - writer.WriteInt16((short) _width); - writer.WriteInt16((short) _height); - writer.WriteInt8(4); + ByteWriter chunk = new ByteWriter(new MemoryStream()); + chunk.WriteInt32(_checksum); + chunk.WriteInt32(_references); + chunk.WriteInt32(_colorArray.Length); + chunk.WriteInt16((short) _width); + chunk.WriteInt16((short) _height); + chunk.WriteInt8((byte) _graphicMode); if (Flags["Alpha"]) { - writer.WriteInt8(16); + chunk.WriteInt8(16); } else { - writer.WriteInt8(0); + chunk.WriteInt8(0); } - writer.Skip(2); - writer.WriteInt16((short) _xHotspot); - writer.WriteInt16((short) _yHotspot); - writer.WriteInt16((short) _actionX); - writer.WriteInt16((short) _actionY); - writer.WriteBytes(_transparent); - writer.Skip(1); - - writer.WriteBytes(rawImg); - - - - - + chunk.Skip(2); + chunk.WriteInt16((short) _xHotspot); + chunk.WriteInt16((short) _yHotspot); + chunk.WriteInt16((short) _actionX); + chunk.WriteInt16((short) _actionY); + chunk.WriteBytes(_transparent); + chunk.WriteBytes(rawImg); + chunk.WriteBytes(rawAlpha); + + writer.WriteInt32(Handle); + chunk.Seek(0); + MemoryStream ms = (MemoryStream) chunk.BaseStream; + writer.WriteBytes(ms.GetBuffer()); } - - - - public ImageItem(ByteIO reader) : base(reader) + public ImageItem(ByteReader reader) : base(reader) { } diff --git a/NetMFAPatcher/mmfparser/chunkloaders/banks/MusicBank.cs b/NetMFAPatcher/mmfparser/chunkloaders/banks/MusicBank.cs index 58fdbc6..299ccce 100644 --- a/NetMFAPatcher/mmfparser/chunkloaders/banks/MusicBank.cs +++ b/NetMFAPatcher/mmfparser/chunkloaders/banks/MusicBank.cs @@ -34,7 +34,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Banks } } - public MusicBank(ByteIO reader) : base(reader) + public MusicBank(ByteReader reader) : base(reader) { } @@ -62,7 +62,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Banks { } - public MusicFile(ByteIO reader) : base(reader) + public MusicFile(ByteReader reader) : base(reader) { } diff --git a/NetMFAPatcher/mmfparser/chunkloaders/banks/SoundBank.cs b/NetMFAPatcher/mmfparser/chunkloaders/banks/SoundBank.cs index 041429b..c1f0bf2 100644 --- a/NetMFAPatcher/mmfparser/chunkloaders/banks/SoundBank.cs +++ b/NetMFAPatcher/mmfparser/chunkloaders/banks/SoundBank.cs @@ -62,7 +62,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Banks } } - public SoundBank(ByteIO reader) : base(reader) + public SoundBank(ByteReader reader) : base(reader) { } @@ -90,7 +90,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Banks { } - public SoundBase(ByteIO reader) : base(reader) + public SoundBase(ByteReader reader) : base(reader) { } @@ -118,15 +118,15 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Banks Flags = (int)Reader.ReadUInt32(); //flags var reserved = Reader.ReadInt32(); var nameLenght = Reader.ReadInt32(); - ByteIO soundData; + ByteReader soundData; if (IsCompressed) //compressed { var size = Reader.ReadInt32(); - soundData = new ByteIO(Decompressor.decompress_block(Reader, size, decompressedSize)); + soundData = new ByteReader(Decompressor.decompress_block(Reader, size, decompressedSize)); } else { - soundData = new ByteIO(Reader.ReadBytes(decompressedSize)); + soundData = new ByteReader(Reader.ReadBytes(decompressedSize)); } if (IsCompressed) { @@ -171,7 +171,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders.Banks } - public SoundItem(ByteIO reader) : base(reader) + public SoundItem(ByteReader reader) : base(reader) { } diff --git a/NetMFAPatcher/mmfparser/chunkloaders/yves.cs b/NetMFAPatcher/mmfparser/chunkloaders/yves.cs index 0b1875c..165c982 100644 --- a/NetMFAPatcher/mmfparser/chunkloaders/yves.cs +++ b/NetMFAPatcher/mmfparser/chunkloaders/yves.cs @@ -18,7 +18,7 @@ namespace NetMFAPatcher.MMFParser.ChunkLoaders List _points; - public AppIcon(ByteIO reader) : base(reader) + public AppIcon(ByteReader reader) : base(reader) { } diff --git a/NetMFAPatcher/mmfparser/mfaloaders/ChunkList.cs b/NetMFAPatcher/mmfparser/mfaloaders/ChunkList.cs index 46522f1..ca134b6 100644 --- a/NetMFAPatcher/mmfparser/mfaloaders/ChunkList.cs +++ b/NetMFAPatcher/mmfparser/mfaloaders/ChunkList.cs @@ -30,6 +30,6 @@ namespace NetMFAPatcher.MMFParser.MFALoaders } - public ChunkList(ByteIO reader) : base(reader) { } + public ChunkList(ByteReader reader) : base(reader) { } } } diff --git a/NetMFAPatcher/mmfparser/mfaloaders/Controls.cs b/NetMFAPatcher/mmfparser/mfaloaders/Controls.cs index b4b9c0c..8d608bb 100644 --- a/NetMFAPatcher/mmfparser/mfaloaders/Controls.cs +++ b/NetMFAPatcher/mmfparser/mfaloaders/Controls.cs @@ -10,7 +10,7 @@ namespace NetMFAPatcher.MMFParser.MFALoaders { public List Items; - public Controls(ByteIO reader) : base(reader) + public Controls(ByteReader reader) : base(reader) { } @@ -57,7 +57,7 @@ namespace NetMFAPatcher.MMFParser.MFALoaders public int Button4; - public PlayerControl(ByteIO reader) : base(reader) + public PlayerControl(ByteReader reader) : base(reader) { } diff --git a/NetMFAPatcher/mmfparser/mfaloaders/Frame.cs b/NetMFAPatcher/mmfparser/mfaloaders/Frame.cs index 9638313..0599867 100644 --- a/NetMFAPatcher/mmfparser/mfaloaders/Frame.cs +++ b/NetMFAPatcher/mmfparser/mfaloaders/Frame.cs @@ -14,7 +14,7 @@ namespace NetMFAPatcher.MMFParser.MFALoaders public Color Background; public int MaxObjects; - public Frame(ByteIO reader) : base(reader) + public Frame(ByteReader reader) : base(reader) { } diff --git a/NetMFAPatcher/mmfparser/mfaloaders/FrameItem.cs b/NetMFAPatcher/mmfparser/mfaloaders/FrameItem.cs index 3ece3a3..c3d7c67 100644 --- a/NetMFAPatcher/mmfparser/mfaloaders/FrameItem.cs +++ b/NetMFAPatcher/mmfparser/mfaloaders/FrameItem.cs @@ -63,7 +63,7 @@ namespace NetMFAPatcher.MMFParser.MFALoaders } - public FrameItem(ByteIO reader):base(reader) + public FrameItem(ByteReader reader):base(reader) { } } } diff --git a/NetMFAPatcher/mmfparser/mfaloaders/ImageBank.cs b/NetMFAPatcher/mmfparser/mfaloaders/ImageBank.cs index d52c923..28f6282 100644 --- a/NetMFAPatcher/mmfparser/mfaloaders/ImageBank.cs +++ b/NetMFAPatcher/mmfparser/mfaloaders/ImageBank.cs @@ -71,7 +71,7 @@ namespace NetMFAPatcher.MMFParser.MFALoaders Items[key].Write(writer); } } - public AgmiBank(ByteIO reader) : base(reader) + public AgmiBank(ByteReader reader) : base(reader) { } diff --git a/NetMFAPatcher/mmfparser/mfaloaders/Layer.cs b/NetMFAPatcher/mmfparser/mfaloaders/Layer.cs index 53e7a2b..22fb061 100644 --- a/NetMFAPatcher/mmfparser/mfaloaders/Layer.cs +++ b/NetMFAPatcher/mmfparser/mfaloaders/Layer.cs @@ -27,7 +27,7 @@ namespace NetMFAPatcher.MMFParser.MFALoaders } - public Layer(ByteIO reader):base(reader) + public Layer(ByteReader reader):base(reader) { } } diff --git a/NetMFAPatcher/mmfparser/mfaloaders/ValueList.cs b/NetMFAPatcher/mmfparser/mfaloaders/ValueList.cs index 208f73f..2eae8d4 100644 --- a/NetMFAPatcher/mmfparser/mfaloaders/ValueList.cs +++ b/NetMFAPatcher/mmfparser/mfaloaders/ValueList.cs @@ -8,7 +8,7 @@ namespace NetMFAPatcher.MMFParser.MFALoaders public class ValueList : DataLoader { public List Items = new List(); - public ValueList(ByteIO reader) : base(reader) + public ValueList(ByteReader reader) : base(reader) { } @@ -44,7 +44,7 @@ namespace NetMFAPatcher.MMFParser.MFALoaders public object Value; public string Name; - public ValueItem(ByteIO reader) : base(reader) + public ValueItem(ByteReader reader) : base(reader) { } diff --git a/NetMFAPatcher/mmfparser/mfaloaders/mfachunks/Active.cs b/NetMFAPatcher/mmfparser/mfaloaders/mfachunks/Active.cs index d56cccb..f7ad233 100644 --- a/NetMFAPatcher/mmfparser/mfaloaders/mfachunks/Active.cs +++ b/NetMFAPatcher/mmfparser/mfaloaders/mfachunks/Active.cs @@ -14,6 +14,6 @@ namespace NetMFAPatcher.MMFParser.MFALoaders.mfachunks { base.Read(); } - public Active(ByteIO reader) : base(reader) { } + public Active(ByteReader reader) : base(reader) { } } } diff --git a/NetMFAPatcher/mmfparser/mfaloaders/mfachunks/AnimationObject.cs b/NetMFAPatcher/mmfparser/mfaloaders/mfachunks/AnimationObject.cs index 063e5ff..65484dc 100644 --- a/NetMFAPatcher/mmfparser/mfaloaders/mfachunks/AnimationObject.cs +++ b/NetMFAPatcher/mmfparser/mfaloaders/mfachunks/AnimationObject.cs @@ -24,7 +24,7 @@ namespace NetMFAPatcher.MMFParser.MFALoaders.mfachunks } - public AnimationObject(ByteIO reader) : base(reader) { } + public AnimationObject(ByteReader reader) : base(reader) { } } class Animation : DataLoader { @@ -49,7 +49,7 @@ namespace NetMFAPatcher.MMFParser.MFALoaders.mfachunks } - public Animation(ByteIO reader) : base(reader) { } + public Animation(ByteReader reader) : base(reader) { } } class AnimationDirection : DataLoader { @@ -69,7 +69,7 @@ namespace NetMFAPatcher.MMFParser.MFALoaders.mfachunks var frames = new List(); } - public AnimationDirection(ByteIO reader) : base(reader) { } + public AnimationDirection(ByteReader reader) : base(reader) { } } } diff --git a/NetMFAPatcher/mmfparser/mfaloaders/mfachunks/Behaviours.cs b/NetMFAPatcher/mmfparser/mfaloaders/mfachunks/Behaviours.cs index cd3fa35..033c00a 100644 --- a/NetMFAPatcher/mmfparser/mfaloaders/mfachunks/Behaviours.cs +++ b/NetMFAPatcher/mmfparser/mfaloaders/mfachunks/Behaviours.cs @@ -23,12 +23,12 @@ namespace NetMFAPatcher.MMFParser.MFALoaders.mfachunks _items.Add(item); } } - public Behaviours(ByteIO reader) : base(reader) { } + public Behaviours(ByteReader reader) : base(reader) { } } class Behaviour : DataLoader { public string Name = "ERROR"; - public ByteIO Data; + public ByteReader Data; public override void Print() { throw new NotImplementedException(); @@ -37,9 +37,9 @@ namespace NetMFAPatcher.MMFParser.MFALoaders.mfachunks public override void Read() { Name = Reader.ReadAscii(Reader.ReadInt32()); - Data = new ByteIO(Reader.ReadBytes(Reader.ReadInt32())); + Data = new ByteReader(Reader.ReadBytes(Reader.ReadInt32())); } - public Behaviour(ByteIO reader) : base(reader) { } + public Behaviour(ByteReader reader) : base(reader) { } } } diff --git a/NetMFAPatcher/mmfparser/mfaloaders/mfachunks/Movements.cs b/NetMFAPatcher/mmfparser/mfaloaders/mfachunks/Movements.cs index 5d8e286..cc4230c 100644 --- a/NetMFAPatcher/mmfparser/mfaloaders/mfachunks/Movements.cs +++ b/NetMFAPatcher/mmfparser/mfaloaders/mfachunks/Movements.cs @@ -26,7 +26,7 @@ namespace NetMFAPatcher.MMFParser.MFALoaders.mfachunks } - public Movements(ByteIO reader) : base(reader) { } + public Movements(ByteReader reader) : base(reader) { } } class Movement : DataLoader { @@ -45,7 +45,7 @@ namespace NetMFAPatcher.MMFParser.MFALoaders.mfachunks var dataSize = Reader.ReadInt32(); if(extension.Length>0) { - var newReader = new ByteIO(Reader.ReadBytes(dataSize)); + var newReader = new ByteReader(Reader.ReadBytes(dataSize)); } @@ -60,6 +60,6 @@ namespace NetMFAPatcher.MMFParser.MFALoaders.mfachunks } } - public Movement(ByteIO reader) : base(reader) { } + public Movement(ByteReader reader) : base(reader) { } } } diff --git a/NetMFAPatcher/mmfparser/mfaloaders/mfachunks/ObjectLoader.cs b/NetMFAPatcher/mmfparser/mfaloaders/mfachunks/ObjectLoader.cs index c6e1e91..9b581fd 100644 --- a/NetMFAPatcher/mmfparser/mfaloaders/mfachunks/ObjectLoader.cs +++ b/NetMFAPatcher/mmfparser/mfaloaders/mfachunks/ObjectLoader.cs @@ -68,6 +68,6 @@ namespace NetMFAPatcher.MMFParser.MFALoaders.mfachunks } - public ObjectLoader(ByteIO reader) : base(reader) { } + public ObjectLoader(ByteReader reader) : base(reader) { } } }