void PalManipulate()
{
if (_palManipCounter == 0 || _palManipPalette == null || _palManipIntermediatePal == null)
return;
for (var i = _palManipStart; i < _palManipEnd; ++i)
{
var target = _palManipPalette.Colors[i];
var between = _palManipIntermediatePal.Colors[i];
_palManipIntermediatePal.Colors[i] = Color.FromRgb(
between.R + ((target.R << 8) - between.R) / _palManipCounter,
between.G + ((target.G << 8) - between.G) / _palManipCounter,
between.B + ((target.B << 8) - between.B) / _palManipCounter);
_currentPalette.Colors[i] = Color.FromRgb(between.R >> 8, between.G >> 8, between.B >> 8);
}
SetDirtyColors(_palManipStart, _palManipEnd);
_palManipCounter--;
}
}