public async Task <TouhouLauncherError?> SaveAsync()
        {
            if (GameTitle.Length == 0 || GameLocation.Length == 0)
            {
                return(new FanGameInfoMissingError());
            }

            if (TargetFanGame == null)
            {
                TargetFanGame = new(
                    title : GameTitle,
                    imageLocation : CoverImageLocation,
                    audioLocation : null,
                    releaseYear : YearOfRelease,
                    fileLocation : GameLocation,
                    includeInRandomGame : IncludeInRandomGame
                    );

                _settingsAndGamesManager.FanGames.Add(TargetFanGame);
            }
            else
            {
                TargetFanGame.Title               = GameTitle;
                TargetFanGame.ImageLocation       = CoverImageLocation;
                TargetFanGame.AudioLocation       = null;
                TargetFanGame.ReleaseYear         = YearOfRelease;
                TargetFanGame.FileLocation        = GameLocation;
                TargetFanGame.IncludeInRandomGame = IncludeInRandomGame;
            }

            return(await _settingsAndGamesManager.SaveAsync());
        }
        public async Task <TouhouLauncherError?> SaveAsync()
        {
            if (TargetGame == null)
            {
                return(new TargetGameNotSetError());
            }

            TargetGame.FileLocation        = GameLocation;
            TargetGame.IncludeInRandomGame = IncludeInRandomGame;

            return(await _settingsAndGamesManager.SaveAsync());
        }