diff --git a/CTFAK/GUI/MainForm.cs b/CTFAK/GUI/MainForm.cs index d791e21..9e132f4 100644 --- a/CTFAK/GUI/MainForm.cs +++ b/CTFAK/GUI/MainForm.cs @@ -938,7 +938,7 @@ namespace CTFAK.GUI { var node = (ChunkNode) objTreeView.SelectedNode; var path = - $"{Settings.ImagePath}\\{Helper.GetTreePath(objTreeView, (ChunkNode) objTreeView.SelectedNode)}"; + $"{Settings.ImagePath}\\{objTreeView.SelectedNode.FullPath}"; if (node == null) return; ImageDumper.SaveFromNode(node); } @@ -972,7 +972,7 @@ namespace CTFAK.GUI Logger.Log("Dumping"); var node = (ChunkNode) LastSelected; var path = - $"{Settings.ImagePath}\\{Helper.GetTreePath(objTreeView, (ChunkNode) objTreeView.SelectedNode)}"; + $"{Settings.ImagePath}\\{objTreeView.SelectedNode.FullPath}"; if (node == null) return; ImageDumper.SaveFromNode(node); } diff --git a/CTFAK/MMFParser/EXE/Loaders/Objects/Counters.cs b/CTFAK/MMFParser/EXE/Loaders/Objects/Counters.cs index 95d4d19..7a7d091 100644 --- a/CTFAK/MMFParser/EXE/Loaders/Objects/Counters.cs +++ b/CTFAK/MMFParser/EXE/Loaders/Objects/Counters.cs @@ -104,6 +104,7 @@ namespace CTFAK.MMFParser.EXE.Loaders.Objects } else if (DisplayType == 2 || DisplayType == 3 || DisplayType == 5) { + Frames=new List(){0}; Shape = new Shape(Reader); Shape.Read(); } diff --git a/CTFAK/MMFParser/EXE/Loaders/Objects/ObjectCommon.cs b/CTFAK/MMFParser/EXE/Loaders/Objects/ObjectCommon.cs index 73a36d2..58eead2 100644 --- a/CTFAK/MMFParser/EXE/Loaders/Objects/ObjectCommon.cs +++ b/CTFAK/MMFParser/EXE/Loaders/Objects/ObjectCommon.cs @@ -153,13 +153,14 @@ namespace CTFAK.MMFParser.EXE.Loaders.Objects _extensionOffset = Reader.ReadUInt16(); _counterOffset = Reader.ReadUInt16(); Flags.flag = Reader.ReadUInt16(); - Reader.Skip(2); var end = Reader.Tell()+(8+1)*2; - for (int i = 0; i < 8; i++) + Reader.Skip(2); + for (int i = 0; i < 9; i++) { var value = Reader.ReadInt16(); - _qualifiers[i]=value; + // _qualifiers[i]=value; } + Reader.Seek(end); _systemObjectOffset = Reader.ReadUInt16(); diff --git a/CTFAK/MMFParser/MFA/Loaders/mfachunks/ObjectLoader.cs b/CTFAK/MMFParser/MFA/Loaders/mfachunks/ObjectLoader.cs index 67e835c..c086bf3 100644 --- a/CTFAK/MMFParser/MFA/Loaders/mfachunks/ObjectLoader.cs +++ b/CTFAK/MMFParser/MFA/Loaders/mfachunks/ObjectLoader.cs @@ -68,13 +68,13 @@ namespace CTFAK.MMFParser.MFA.Loaders.mfachunks NewObjectFlags = Reader.ReadInt32(); BackgroundColor = Reader.ReadColor(); var end = Reader.Tell() + 2 * (8+1); - for (int i = 0; i < 8+1; i++) + for (int i = 0; i < 8; i++) { var value = Reader.ReadInt16(); - if(value==-1) - { - break; - } + // if(value==-1) + // { + // break; + // } Qualifiers[i]=value; } Reader.Seek(end); diff --git a/CTFAK/MMFParser/Translation/PAME2MFA.cs b/CTFAK/MMFParser/Translation/PAME2MFA.cs index 3be3834..1f78d25 100644 --- a/CTFAK/MMFParser/Translation/PAME2MFA.cs +++ b/CTFAK/MMFParser/Translation/PAME2MFA.cs @@ -593,16 +593,7 @@ namespace CTFAK.MMFParser.Translation newCount.Images = new List() {0}; var shape = counter?.Shape; - - - if (counter != null) - { - if(counter.DisplayType==2||counter.DisplayType==3) - { - counter = null; - shape = null; - } - } + if(counter==null) throw new NullReferenceException(nameof(counter)); if (counter == null) { newCount.DisplayType = 0; @@ -613,7 +604,6 @@ namespace CTFAK.MMFParser.Translation } else { - newCount.DisplayType = counter.DisplayType; newCount.CountType = counter.Inverse ? 1 : 0; newCount.Width = (int) counter.Width; @@ -631,8 +621,8 @@ namespace CTFAK.MMFParser.Translation } else { - newCount.Color1 = Color.Green; - newCount.Color2 = Color.Red; + newCount.Color1 = shape.Color1; + newCount.Color2 = shape.Color2; newCount.VerticalGradient = (uint) shape.GradFlags; newCount.Flags = (uint) shape.FillType; diff --git a/CTFAK/Utils/Decompressor.cs b/CTFAK/Utils/Decompressor.cs index a9c2f6f..87305ea 100644 --- a/CTFAK/Utils/Decompressor.cs +++ b/CTFAK/Utils/Decompressor.cs @@ -24,7 +24,6 @@ namespace CTFAK.Utils public static ByteReader DecompressAsReader(ByteReader exeReader, out int decompressed) { - return new ByteReader(Decompress(exeReader, out decompressed)); } diff --git a/CTFAK/Utils/Helper.cs b/CTFAK/Utils/Helper.cs index ca85ac4..6e3cd17 100644 --- a/CTFAK/Utils/Helper.cs +++ b/CTFAK/Utils/Helper.cs @@ -36,39 +36,6 @@ namespace CTFAK.Utils var date = DateTime.Now; return $"[{date.Hour,2}:{date.Minute,2}:{date.Second,2}:{date.Millisecond,3}]"; } - - public static string GetTreePath(TreeView tree, ChunkNode node) - { - string CombinedPath=node.FullPath; - - - return CombinedPath; - } - - public static string Log(this byte[] bytes, bool log = true, string format = "") - { - string temp = String.Empty; - for (int i = 0; i < bytes.Length; i++) - { - var item = bytes[i]; - if (i > 0) - { - temp += " " + item.ToString(format); - } - else - { - temp += item.ToString(format); - } - } - - if (log) - { - Console.WriteLine(temp); - } - - return temp; - } - public static string FirstCharToUpper(this string input) { switch (input)