Beispiel #1
0
        public ModInfo Create(string baseRomPath, string name = "", string version = "", string author = "")
        {
            var modInfo = new ModInfo
            {
                FolderPath   = GetNewModDirectory(),
                Name         = name,
                Version      = version,
                Author       = author,
                RLModVersion = CurrentModVersion
            };

            Directory.CreateDirectory(modInfo.FolderPath);

            using (var nds = _ndsFactory(baseRomPath))
            {
                nds.ExtractCopyOfDirectory(Constants.DataFolderPath, modInfo.FolderPath);
            }

            var msgPath = Path.Combine(modInfo.FolderPath, Constants.MsgRomPath);

            _msgService.ExtractFromMsgDat(msgPath, Path.Combine(modInfo.FolderPath, Constants.MsgFolderPath));
            File.Delete(msgPath);

            Update(modInfo);
            return(modInfo);
        }