using System; using Newtonsoft.Json; namespace StardewModdingAPI { /// A manifest which describes a mod for SMAPI. public class Manifest { /********* ** Accessors *********/ /// Whether the manifest defined the deprecated field. [JsonIgnore] internal bool UsedAuthourField { get; private set; } /// The mod name. public virtual string Name { get; set; } = ""; /// The mod author's name. public virtual string Author { get; set; } = ""; /// Obsolete. [Obsolete("Use 'Author'.")] public virtual string Authour { get { return this.Author; } set { this.UsedAuthourField = true; this.Author = value; } } /// The mod version. public virtual Version Version { get; set; } = new Version(0, 0, 0, ""); /// A brief description of the mod. public virtual string Description { get; set; } = ""; /// The unique mod ID. public virtual string UniqueID { get; set; } = Guid.NewGuid().ToString(); /// Whether the mod uses per-save config files. public virtual bool PerSaveConfigs { get; set; } /// The name of the DLL in the directory that has the method. public virtual string EntryDll { get; set; } = ""; } }