Write Color Theme for Quality - Mhburg/AwsomeInventory GitHub Wiki
Modders can create their own color theme for displaying colored text and colored frame around thing icon.
One only needs to implement the QualityColor class.
And don't forget to add the [StaticConstructorOnStartup]
attribute to the class and Register the newly implementation to Awesome Inventory's service provider. For example,
[StaticConstructorOnStartup]
public class QualityColorDefault : QualityColor
{
static QualityColorDefault()
{
Register(new QualityColorDefault());
}
}
A full example is below,
/// <summary>
/// Color Coded Mood Bar theme for quality color.
/// </summary>
[StaticConstructorOnStartup]
public class QualityColorCCMB : QualityColor
{
static QualityColorCCMB()
{
Register(new QualityColorCCMB());
}
/// <inheritdoc/>
public override Color Aweful => AwesomeInventoryTex.CCMB_Red;
/// <inheritdoc/>
public override Color Poor => AwesomeInventoryTex.CCMB_Orange;
/// <inheritdoc/>
public override Color Normal => AwesomeInventoryTex.CCMB_Yellow;
/// <inheritdoc/>
public override Color Good => AwesomeInventoryTex.CCMB_NeutralColor;
/// <inheritdoc/>
public override Color Excellent => AwesomeInventoryTex.CCMB_Cyan;
/// <inheritdoc/>
public override Color Masterwork => AwesomeInventoryTex.CCMB_HappyColor;
/// <inheritdoc/>
public override Color Legendary => ColorLibrary.BrightPurple;
/// <inheritdoc/>
public override Color Generic => Color.white;
/// <inheritdoc/>
public override int ID { get; } = AwesomeInventoryServiceProvider.GetNextAvailablePluginID();
/// <inheritdoc/>
public override string DisplayName => "Color Coded Mood Bar";
}