PKHeX/PKHeX.WinForms/Settings/SpriteSettings.cs
Kurt 20905cbe67
Add a search interface for visually filtering all slots (#4712)
* Add slot search to box editor
Alt-Click: Clears the current search.
Shift-Click: Jump to the next box with a result.
2026-02-09 22:03:18 -06:00

56 lines
2.8 KiB
C#

using PKHeX.Core;
using PKHeX.Drawing.PokeSprite;
namespace PKHeX.WinForms;
public sealed class SpriteSettings : ISpriteSettings
{
[LocalizedDescription("Choice for which sprite building mode to use.")]
public SpriteBuilderPreference SpritePreference { get; set; } = SpriteBuilderPreference.UseSuggested;
[LocalizedDescription("Show fan-made shiny sprites when the PKM is shiny.")]
public bool ShinySprites { get; set; } = true;
[LocalizedDescription("Show an Egg Sprite As Held Item rather than hiding the PKM")]
public bool ShowEggSpriteAsHeldItem { get; set; } = true;
[LocalizedDescription("Show the required ball for an Encounter Template")]
public bool ShowEncounterBall { get; set; } = true;
[LocalizedDescription("Show a background to differentiate an Encounter Template's type")]
public SpriteBackgroundType ShowEncounterColor { get; set; } = SpriteBackgroundType.FullBackground;
[LocalizedDescription("Show a background to differentiate the recognized Encounter Template type for PKM slots")]
public SpriteBackgroundType ShowEncounterColorPKM { get; set; }
[LocalizedDescription("Opacity for the Encounter Type background layer.")]
public byte ShowEncounterOpacityBackground { get; set; } = 0x3F; // kinda low
[LocalizedDescription("Opacity for the Encounter Type stripe layer.")]
public byte ShowEncounterOpacityStripe { get; set; } = 0x5F; // 0xFF opaque
[LocalizedDescription("Amount of pixels thick to show when displaying the encounter type color stripe.")]
public int ShowEncounterThicknessStripe { get; set; } = 4; // pixels
[LocalizedDescription("Show a thin stripe to indicate the percent of level-up progress")]
public bool ShowExperiencePercent { get; set; }
[LocalizedDescription("Show a background to differentiate the Tera Type for PKM slots")]
public SpriteBackgroundType ShowTeraType { get; set; } = SpriteBackgroundType.BottomStripe;
[LocalizedDescription("Amount of pixels thick to show when displaying the Tera Type color stripe.")]
public int ShowTeraThicknessStripe { get; set; } = 4; // pixels
[LocalizedDescription("Opacity for the Tera Type background layer.")]
public byte ShowTeraOpacityBackground { get; set; } = 0xFF; // 0xFF opaque
[LocalizedDescription("Opacity for the Tera Type stripe layer.")]
public byte ShowTeraOpacityStripe { get; set; } = 0xAF; // 0xFF opaque
[LocalizedDescription("Opacity of an entity that does not match a filter.")]
public float FilterMismatchOpacity { get; set; } = 0.40f; // 1.0f opaque; Mostly transparent
[LocalizedDescription("Grayscale amount to apply to an entity that does not match a filter (0.0 = no grayscale, 1.0 = fully grayscale).")]
public float FilterMismatchGrayscale { get; set; } = 0.70f; // 1.0f fully grayscale; Mostly grayscale
}