From b5384c2e18c40562798effaa2ff59f2863828cb9 Mon Sep 17 00:00:00 2001 From: Skarn Date: Mon, 7 Mar 2022 00:23:57 +0300 Subject: [PATCH] Update MapTile.cpp | fix #13. Exporting alphamaps by texture should now also include base textures --- src/noggit/MapTile.cpp | 32 +++++++++++++++++++++----------- 1 file changed, 21 insertions(+), 11 deletions(-) diff --git a/src/noggit/MapTile.cpp b/src/noggit/MapTile.cpp index dacc32fd..e8f2c90f 100644 --- a/src/noggit/MapTile.cpp +++ b/src/noggit/MapTile.cpp @@ -1172,19 +1172,29 @@ QImage MapTile::getAlphamapImage(std::string const& filename) } if (!layer) - continue; - - chunk->texture_set->apply_alpha_changes(); - auto alphamaps = chunk->texture_set->getAlphamaps(); - - auto alpha_layer = alphamaps->at(layer - 1).value(); - - for (int k = 0; k < 64; ++k) { - for (int l = 0; l < 64; ++l) + for (int k = 0; k < 64; ++k) { - int value = alpha_layer.getAlpha(64 * l + k); - image.setPixelColor((i * 64) + k, (j * 64) + l, QColor(value, value, value, 255)); + for (int l = 0; l < 64; ++l) + { + image.setPixelColor((i * 64) + k, (j * 64) + l, QColor(255, 255, 255, 255)); + } + } + } + else + { + chunk->texture_set->apply_alpha_changes(); + auto alphamaps = chunk->texture_set->getAlphamaps(); + + auto alpha_layer = alphamaps->at(layer - 1).value(); + + for (int k = 0; k < 64; ++k) + { + for (int l = 0; l < 64; ++l) + { + int value = alpha_layer.getAlpha(64 * l + k); + image.setPixelColor((i * 64) + k, (j * 64) + l, QColor(value, value, value, 255)); + } } } }