mirror of
https://github.com/kwsch/PKHeX
synced 2024-09-22 15:21:55 +00:00
reduce animation fragility
#2072 no idea if this works since I can't repro on my end
This commit is contained in:
parent
f89d9ca323
commit
dfdcc28789
1 changed files with 9 additions and 5 deletions
|
@ -14,7 +14,8 @@ namespace PKHeX.WinForms.Controls
|
|||
Elapsed += TimerElapsed;
|
||||
}
|
||||
|
||||
private Image GlowBase;
|
||||
private int imgWidth;
|
||||
private int imgHeight;
|
||||
private byte[] GlowData;
|
||||
private readonly Image ExtraLayer;
|
||||
private Image[] GlowCache;
|
||||
|
@ -50,9 +51,12 @@ namespace PKHeX.WinForms.Controls
|
|||
|
||||
public void Start(PictureBox pbox, Image baseImage, byte[] glowData, Image original)
|
||||
{
|
||||
GlowBase = baseImage;
|
||||
Enabled = false;
|
||||
imgWidth = baseImage.Width;
|
||||
imgHeight = baseImage.Height;
|
||||
GlowData = glowData;
|
||||
pb = pbox;
|
||||
GlowCounter = 0;
|
||||
OriginalBackground = original;
|
||||
GlowCache = new Image[GlowFps];
|
||||
GlowInterval = 1000 / GlowFps;
|
||||
|
@ -85,10 +89,10 @@ namespace PKHeX.WinForms.Controls
|
|||
var frameData = (byte[])GlowData.Clone();
|
||||
ImageUtil.ChangeAllColorTo(frameData, frameColor);
|
||||
|
||||
frame = ImageUtil.GetBitmap(frameData, GlowBase.Width, GlowBase.Height);
|
||||
frame = (Image)ImageUtil.GetBitmap(frameData, imgWidth, imgHeight).Clone();
|
||||
if (ExtraLayer != null)
|
||||
frame = ImageUtil.LayerImage(frame, ExtraLayer, 0, 0, 1);
|
||||
frame = ImageUtil.LayerImage(OriginalBackground, frame, 0, 0, 1);
|
||||
frame = ImageUtil.LayerImage(frame, ExtraLayer, 0, 0);
|
||||
frame = ImageUtil.LayerImage(OriginalBackground, frame, 0, 0);
|
||||
return GlowCache[frameIndex] = frame;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue