using Dalamud.Configuration; using Dalamud.Plugin; using System; using System.Collections.Generic; namespace NoSoliciting { [Serializable] public class PluginConfiguration : IPluginConfiguration { [NonSerialized] private DalamudPluginInterface pi; public int Version { get; set; } = 1; public bool FilterChat { get; set; } = true; public bool FilterPartyFinder { get; set; } = true; public bool AdvancedMode { get; set; } = false; public bool CustomChatFilter { get; set; } = false; public List ChatSubstrings { get; } = new List(); public List ChatRegexes { get; } = new List(); public bool CustomPFFilter { get; set; } = false; public List PFSubstrings { get; } = new List(); public List PFRegexes { get; } = new List(); public void Initialise(DalamudPluginInterface pi) { this.pi = pi ?? throw new ArgumentNullException(nameof(pi), "DalamudPluginInterface cannot be null"); } public void Save() { this.pi.SavePluginConfig(this); } } }