/// <inheritdoc /> public IModMetadata SetWarning(ModWarning warning) { this.Warnings |= warning; return(this); }
/// <summary>Get whether the mod has a given warning and it hasn't been suppressed in the <see cref="DataRecord"/>.</summary> /// <param name="warning">The warning to check.</param> public bool HasUnsuppressWarning(ModWarning warning) { return (this.Warnings.HasFlag(warning) && (this.DataRecord?.DataRecord == null || !this.DataRecord.DataRecord.SuppressWarnings.HasFlag(warning))); }
/// <summary>Write a mod warning group to the console and log.</summary> /// <param name="mods">The mods to search.</param> /// <param name="warning">The mod warning to match.</param> /// <param name="level">The log level for the logged messages.</param> /// <param name="heading">A brief heading label for the group.</param> /// <param name="blurb">A detailed explanation of the warning, split into lines.</param> private void LogModWarningGroup(IModMetadata[] mods, ModWarning warning, LogLevel level, string heading, params string[] blurb) { this.LogModWarningGroup(mods, mod => mod.HasUnsuppressedWarnings(warning), level, heading, blurb); }
/// <inheritdoc /> public bool HasWarnings(params ModWarning[] warnings) { ModWarning curWarnings = this.Warnings; return(warnings.Any(warning => curWarnings.HasFlag(warning))); }