mirror of
https://github.com/aseprite/aseprite.git
synced 2025-04-18 11:42:47 +00:00
Fix tilemap layers empty after converting color profile (fix #3052)
Before this fix, tilemap layers disappeared after converting the Sprite's Color Profile in the Sprite Properties dialog.
This commit is contained in:
parent
04fb75a330
commit
b5a787a20f
@ -1,5 +1,5 @@
|
|||||||
// Aseprite
|
// Aseprite
|
||||||
// Copyright (C) 2018-2020 Igara Studio S.A.
|
// Copyright (C) 2018-2021 Igara Studio S.A.
|
||||||
//
|
//
|
||||||
// This program is distributed under the terms of
|
// This program is distributed under the terms of
|
||||||
// the End-User License Agreement for Aseprite.
|
// the End-User License Agreement for Aseprite.
|
||||||
@ -88,12 +88,14 @@ void convert_color_profile(doc::Sprite* sprite,
|
|||||||
if (sprite->pixelFormat() != doc::IMAGE_INDEXED) {
|
if (sprite->pixelFormat() != doc::IMAGE_INDEXED) {
|
||||||
for (Cel* cel : sprite->uniqueCels()) {
|
for (Cel* cel : sprite->uniqueCels()) {
|
||||||
ImageRef old_image = cel->imageRef();
|
ImageRef old_image = cel->imageRef();
|
||||||
|
if (old_image.get()->pixelFormat() != IMAGE_TILEMAP) {
|
||||||
ImageRef new_image = convert_image_color_space(
|
ImageRef new_image = convert_image_color_space(
|
||||||
old_image.get(), newCS, conversion.get());
|
old_image.get(), newCS, conversion.get());
|
||||||
|
|
||||||
sprite->replaceImage(old_image->id(), new_image);
|
sprite->replaceImage(old_image->id(), new_image);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (conversion) {
|
if (conversion) {
|
||||||
// Convert palette
|
// Convert palette
|
||||||
@ -181,12 +183,14 @@ ConvertColorProfile::ConvertColorProfile(doc::Sprite* sprite, const gfx::ColorSp
|
|||||||
if (sprite->pixelFormat() != doc::IMAGE_INDEXED) {
|
if (sprite->pixelFormat() != doc::IMAGE_INDEXED) {
|
||||||
for (Cel* cel : sprite->uniqueCels()) {
|
for (Cel* cel : sprite->uniqueCels()) {
|
||||||
ImageRef old_image = cel->imageRef();
|
ImageRef old_image = cel->imageRef();
|
||||||
|
if (old_image.get()->pixelFormat() != IMAGE_TILEMAP) {
|
||||||
ImageRef new_image = convert_image_color_space(
|
ImageRef new_image = convert_image_color_space(
|
||||||
old_image.get(), newCS, conversion.get());
|
old_image.get(), newCS, conversion.get());
|
||||||
|
|
||||||
m_seq.add(new cmd::ReplaceImage(sprite, old_image, new_image));
|
m_seq.add(new cmd::ReplaceImage(sprite, old_image, new_image));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (conversion) {
|
if (conversion) {
|
||||||
// Convert palette
|
// Convert palette
|
||||||
|
Loading…
x
Reference in New Issue
Block a user