You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
2.0 KiB
C#
62 lines
2.0 KiB
C#
using NetMFAPatcher.chunkloaders;
|
|
using NetMFAPatcher.mmfparser;
|
|
using NetMFAPatcher.Utils;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using static NetMFAPatcher.mmfparser.Constants;
|
|
|
|
namespace NetMFAPatcher.MMFParser.Data
|
|
{
|
|
public class GameData
|
|
{
|
|
public int runtime_version;
|
|
public int runtime_subversion;
|
|
public int product_build;
|
|
public int product_version;
|
|
public Products build;
|
|
public ChunkList gameChunks;
|
|
public void Read(ByteIO exeReader)
|
|
{
|
|
string magic = exeReader.ReadAscii(4);
|
|
|
|
|
|
if (magic == Constants.UNICODE_GAME_HEADER) Constants.isUnicode = true;
|
|
else if (magic == Constants.GAME_HEADER) Constants.isUnicode = false;
|
|
else
|
|
{
|
|
Logger.Log("Header Fucked Up", true, ConsoleColor.Red);
|
|
}
|
|
|
|
runtime_version = exeReader.ReadUInt16();
|
|
runtime_subversion = exeReader.ReadUInt16();
|
|
product_version = exeReader.ReadInt32();
|
|
product_build = exeReader.ReadInt32();
|
|
build = (Products)runtime_version;
|
|
|
|
|
|
Print();
|
|
Logger.Log("Press any key to continue",true,ConsoleColor.Magenta);
|
|
//Console.ReadKey();
|
|
|
|
gameChunks = new ChunkList();
|
|
gameChunks.Read(exeReader);
|
|
|
|
}
|
|
public void Print()
|
|
{
|
|
Logger.Log("GameData Info:", true, ConsoleColor.DarkGreen);
|
|
Logger.Log($" Runtime Version: {runtime_version}", true, ConsoleColor.DarkGreen);
|
|
Logger.Log($" Runtime Subversion: { runtime_subversion}", true, ConsoleColor.DarkGreen);
|
|
Logger.Log($" Product Version: { product_version}", true, ConsoleColor.DarkGreen);
|
|
Logger.Log($" Product Build: {product_build}", true, ConsoleColor.DarkGreen);
|
|
Logger.Log($" {(isUnicode ? "Unicode" : "NonUnicode")} Game", true, ConsoleColor.DarkGreen);
|
|
|
|
}
|
|
|
|
|
|
}
|
|
}
|