Esempio n. 1
0
        public NdsSyncSettings(
            IMainFormForConfig mainForm,
            MelonDS.MelonSyncSettings syncSettings)
        {
            _mainForm     = mainForm;
            _syncSettings = syncSettings;

            InitializeComponent();
        }
Esempio n. 2
0
        protected override void RunImport()
        {
            Result.Movie.HeaderEntries[HeaderKeys.Platform] = "NDS";

            var syncSettings = new MelonDS.MelonSyncSettings();

            using var sr = SourceFile.OpenText();
            string line;

            while ((line = sr.ReadLine()) != null)
            {
                if (string.IsNullOrWhiteSpace(line))
                {
                    continue;
                }

                if (line[0] == '|')
                {
                    ImportInputFrame(line);
                }
                else if (line.StartsWith("rerecordCount"))
                {
                    int.TryParse(ParseHeader(line, "rerecordCount"), out var rerecordCount);
                    Result.Movie.Rerecords = (ulong)rerecordCount;
                }
                else if (line.StartsWith("firmNickname"))
                {
                    syncSettings.Nickname = ParseHeader(line, "firmNickname");
                }
                else if (line.StartsWith("firmFavColour"))
                {
                    syncSettings.FavoriteColor = byte.Parse(ParseHeader(line, "firmFavColour"));
                }
                else if (line.StartsWith("firmBirthDay"))
                {
                    syncSettings.BirthdayDay = byte.Parse(ParseHeader(line, "firmBirthDay"));
                }
                else if (line.StartsWith("firmBirthMonth"))
                {
                    syncSettings.BirthdayMonth = byte.Parse(ParseHeader(line, "firmBirthMonth"));
                }
                else if (line.StartsWith("rtcStartNew"))
                {
                    //TODO: what is this format?? 2010-JAN-01 00:00:00:000
                    //var time = DateTime.Parse(ParseHeader(line, "rtcStartNew"));
                    //syncSettings.TimeAtBoot = (uint)new DateTimeOffset(time.ToLocalTime()).ToUnixTimeSeconds();
                }
                else if (line.StartsWith("comment author"))
                {
                    Result.Movie.HeaderEntries[HeaderKeys.Author] = ParseHeader(line, "comment author");
                }
                else if (line.StartsWith("comment"))
                {
                    Result.Movie.Comments.Add(ParseHeader(line, "comment"));
                }
                else if (line.ToLower().StartsWith("guid"))
                {
                    // We no longer care to keep this info
                }
                else
                {
                    Result.Movie.Comments.Add(line);                     // Everything not explicitly defined is treated as a comment.
                }

                Result.Movie.SyncSettingsJson = ConfigService.SaveWithType(syncSettings);
            }
        }