public void DeleteFiles(ISourcePortData sourcePort, FileType fileTypeID) { throw new NotImplementedException(); }
public void DeleteStats(ISourcePortData sourcePort) { throw new NotImplementedException(); }
public static List <IGameFile> GetAdditionalFiles(IDataSourceAdapter adapter, ISourcePortData sourcePort) { return(GetAdditionalFiles(adapter, sourcePort.SettingsFiles)); }
public void SetDataSource(ISourcePortData sourcePort) { sourcePortEdit1.SetDataSource(sourcePort); ctrlFiles.SetDataSource(Util.GetAdditionalFiles(m_adapter, sourcePort)); }
public string GetLaunchParameters(LauncherPath gameFileDirectory, LauncherPath tempDirectory, IGameFile gameFile, ISourcePortData sourcePortData, bool isGameFileIwad) { ISourcePort sourcePort = SourcePortUtil.CreateSourcePort(sourcePortData); StringBuilder sb = new StringBuilder(); List <IGameFile> loadFiles = AdditionalFiles.ToList(); if (isGameFileIwad) { loadFiles.Remove(gameFile); } else if (!loadFiles.Contains(gameFile)) { loadFiles.Add(gameFile); } if (IWad != null) { if (!AssertFile(gameFileDirectory.GetFullPath(), gameFile.FileName, "game file")) { return(null); } if (!HandleGameFileIWad(IWad, sourcePort, sb, gameFileDirectory, tempDirectory)) { return(null); } } List <string> launchFiles = new List <string>(); foreach (IGameFile loadFile in loadFiles) { if (!AssertFile(gameFileDirectory.GetFullPath(), loadFile.FileName, "game file")) { return(null); } if (!HandleGameFile(loadFile, launchFiles, gameFileDirectory, tempDirectory, sourcePortData, true)) { return(null); } } string[] extensions = sourcePortData.SupportedExtensions.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); launchFiles = SortParameters(launchFiles, extensions).ToList(); BuildLaunchString(sb, sourcePort, launchFiles); if (Map != null) { sb.Append(sourcePort.WarpParameter(new SpData(Map))); if (Skill != null) { sb.Append(sourcePort.SkillParameter(new SpData(Skill))); } } if (Record) { RecordedFileName = Path.Combine(tempDirectory.GetFullPath(), Guid.NewGuid().ToString()); sb.Append(sourcePort.RecordParameter(new SpData(RecordedFileName))); } if (PlayDemo && PlayDemoFile != null) { if (!AssertFile(PlayDemoFile, "", "demo file")) { return(null); } sb.Append(sourcePort.PlayDemoParameter(new SpData(PlayDemoFile))); } if (ExtraParameters != null) { sb.Append(" " + ExtraParameters); } if (!string.IsNullOrEmpty(sourcePortData.ExtraParameters)) { sb.Append(" " + sourcePortData.ExtraParameters); } IStatisticsReader statsReader = sourcePort.CreateStatisticsReader(gameFile, new IStatsData[] { }); if (SaveStatistics && statsReader != null && !string.IsNullOrEmpty(statsReader.LaunchParameter)) { sb.Append(" " + statsReader.LaunchParameter); } return(sb.ToString()); }
public void DeleteFiles(ISourcePortData sourcePort, FileType fileTypeID) { DataAccess.ExecuteNonQuery(string.Format("delete from Files where SourcePortID = {0} and FileTypeID = {1}", sourcePort.SourcePortID, (int)fileTypeID)); }
public CrispyDoomSourcePort(ISourcePortData sourcePortData) : base(sourcePortData) { }
private void ShowLaunchParameters(GameFilePlayAdapter playAdapter, IGameFile gameFile, ISourcePortData sourcePort) { TextBoxForm form = new TextBoxForm { Text = "Launch Parameters", StartPosition = FormStartPosition.CenterParent }; string launchParameters = playAdapter.GetLaunchParameters(AppConfiguration.GameFileDirectory, AppConfiguration.TempDirectory, gameFile, sourcePort, IsGameFileIwad(gameFile)); if (launchParameters != null) { launchParameters = launchParameters.Replace(@" -", string.Concat(Environment.NewLine, " -")); launchParameters = launchParameters.Replace("\" \"", string.Concat("\"", Environment.NewLine, " \"")); if (launchParameters.StartsWith(Environment.NewLine)) { launchParameters = launchParameters.Substring(Environment.NewLine.Length); } string individualFiles = string.Empty; if (m_currentPlayForm.SpecificFiles != null && m_currentPlayForm.SpecificFiles.Length > 0) { individualFiles = Environment.NewLine + string.Format("Selected Files: {0}", string.Join(", ", m_currentPlayForm.SpecificFiles)); } string sourcePortParams = string.Empty; if (!string.IsNullOrEmpty(sourcePort.ExtraParameters)) { sourcePortParams = string.Concat(Environment.NewLine, Environment.NewLine, "Paramters from source port: ", sourcePort.ExtraParameters); } form.DisplayText = string.Concat(launchParameters, Environment.NewLine, Environment.NewLine, string.Format("Supported Extensions: {0}", sourcePort.SupportedExtensions), individualFiles, sourcePortParams, Environment.NewLine, Environment.NewLine, "*** If files appear to be missing check the 'Select Individual Files' option and supported extensions options in the Source Port form of the selected source port."); } else { form.DisplayText = "Failed to generate launch parameters"; } form.SelectDisplayText(0, 0); form.ShowDialog(this); }
public static List <IFileData> CreateFileAssociation(IWin32Window parent, IDataSourceAdapter adapter, LauncherPath directory, FileType type, IGameFile gameFile, ISourcePortData sourcePort) { List <IFileData> fileDataList = new List <IFileData>(); OpenFileDialog dialog = new OpenFileDialog(); if (dialog.ShowDialog(parent) == DialogResult.OK) { FileDetailsEditForm detailsForm = new FileDetailsEditForm(); detailsForm.Initialize(adapter); detailsForm.StartPosition = FormStartPosition.CenterParent; foreach (string file in dialog.FileNames) { detailsForm.Description = Path.GetFileName(file); if (sourcePort != null) { detailsForm.SourcePort = sourcePort; } if (detailsForm.ShowDialog(parent) == DialogResult.OK && detailsForm.SourcePort != null) { FileInfo fi = new FileInfo(file); IFileData fileData = CreateNewFileDataSource(detailsForm, fi, type, gameFile); fi.CopyTo(Path.Combine(directory.GetFullPath(), fileData.FileName)); adapter.InsertFile(fileData); var fileSearch = adapter.GetFiles(gameFile, FileType.Demo).FirstOrDefault(x => x.FileName == fileData.FileName); if (fileSearch != null) { fileData = fileSearch; } fileDataList.Add(fileData); } else if (detailsForm.SourcePort == null) { MessageBox.Show(parent, "A source port must be selected.", "Error", MessageBoxButtons.OK); } } } return(fileDataList); }
public FdwlSourcePort(ISourcePortData sourcePortData) : base(sourcePortData) { }
public EternitySourcePort(ISourcePortData sourcePortData) : base(sourcePortData) { }
private bool SaveStatisticsSupported(ISourcePortData sourcePort) { return(SourcePortUtil.CreateSourcePort(sourcePort).StatisticsSupported()); }
public void UpdateDataSource(ISourcePortData sourcePort) { sourcePortEdit1.UpdateDataSource(sourcePort); sourcePort.SettingsFiles = ctrlFiles.GetAdditionalFilesString(); }
private static ISaveGameReader CreateSaveGameReader(ISourcePortData sourcePort, FileInfo fi) { return(SourcePortUtil.CreateSourcePort(sourcePort).CreateSaveGameReader(fi)); }
public WoofSourcePort(ISourcePortData sourcePortData) : base(sourcePortData) { }
public ZDoomSourcePort(ISourcePortData sourcePortData) : base(sourcePortData) { }
public ChocolateDoomSourcePort(ISourcePortData sourcePortData) : base(sourcePortData) { }
public GenericSourcePort(ISourcePortData sourcePortData) { m_sourcePortData = sourcePortData; }
public DoomsdaySourcePort(ISourcePortData sourcePortData) : base(sourcePortData) { }
public UtilityHandler(IWin32Window parent, AppConfiguration config, ISourcePortData utility) { m_parent = parent; m_config = config; m_utility = utility; }
private List <IGameFile> GetAdditionalFiles(AddFilesType type, IGameFile gameIwad, ISourcePortData sourcePort) { switch (type) { case AddFilesType.IWAD: if (gameIwad != null) { var ret = Util.GetAdditionalFiles(m_adapter, gameIwad).Except(Util.GetSourcePortAdditionalFiles(m_adapter, gameIwad)).ToList(); ret.Remove(gameIwad); return(ret); } break; case AddFilesType.SourcePort: if (sourcePort != null) { return(Util.GetAdditionalFiles(m_adapter, sourcePort)); } break; } return(new List <IGameFile>()); }
public void DeleteStats(ISourcePortData sourcePort) { DataAccess.ExecuteNonQuery(string.Format("delete from Stats where SourcePortID = {0}", sourcePort.SourcePortID)); }
public void UpdateSourcePort(ISourcePortData sourcePort) { throw new NotImplementedException(); }
private List <IGameFile> GetAdditionalFiles(AddFilesType type, IGameFile gameIwad, ISourcePortData sourcePort) { switch (type) { case AddFilesType.IWAD: if (gameIwad != null) { return(Util.GetAdditionalFiles(m_adapter, (GameFile)gameIwad)); } break; case AddFilesType.SourcePort: if (sourcePort != null) { return(Util.GetAdditionalFiles(m_adapter, sourcePort)); } break; } return(new List <IGameFile>()); }
private bool LoadLatestSaveSupported(ISourcePortData sourcePort) { return(SourcePortUtil.CreateSourcePort(sourcePort).LoadSaveGameSupported()); }