using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; namespace MediaBrowser.Controller.Entities { public class Game : BaseItem, IHasSoundtracks { public List SoundtrackIds { get; set; } public Game() { MultiPartGameFiles = new List(); SoundtrackIds = new List(); } /// /// Gets the type of the media. /// /// The type of the media. public override string MediaType { get { return Model.Entities.MediaType.Game; } } /// /// Gets or sets the players supported. /// /// The players supported. public int? PlayersSupported { get; set; } /// /// Gets or sets a value indicating whether this instance is installed on client. /// /// true if this instance is installed on client; otherwise, false. public bool IsInstalledOnClient { get; set; } /// /// Gets or sets the game system. /// /// The game system. public string GameSystem { get; set; } /// /// /// public override string MetaLocation { get { return System.IO.Path.GetDirectoryName(Path); } } /// /// Gets or sets a value indicating whether this instance is multi part. /// /// true if this instance is multi part; otherwise, false. public bool IsMultiPart { get; set; } /// /// Holds the paths to the game files in the event this is a multipart game /// public List MultiPartGameFiles { get; set; } /// /// /// protected override bool UseParentPathToCreateResolveArgs { get { return !IsInMixedFolder; } } public override string GetUserDataKey() { var id = this.GetProviderId(MetadataProviders.Gamesdb); if (!string.IsNullOrEmpty(id)) { return "Game-Gamesdb-" + id; } return base.GetUserDataKey(); } } }