Fix suggestions by Dacap

This commit is contained in:
Gaspar Capello 2024-07-03 10:12:14 -03:00
parent 40d3fc131a
commit 86f1961f81
3 changed files with 14 additions and 12 deletions

View File

@ -153,17 +153,15 @@ void destroy_doc(Context* ctx, Doc* doc)
}
}
void insertLayersToSelectedLayers(Layer* layer, SelectedLayers* selectedLayers)
void insert_layers_to_selected_layers(Layer* layer, SelectedLayers& selectedLayers)
{
if (layer->isGroup()) {
auto childs = static_cast<const LayerGroup*>(layer)->layers();
if (childs.size() == 0)
return;
for (auto child : childs)
insertLayersToSelectedLayers(child, selectedLayers);
auto children = static_cast<LayerGroup*>(layer)->layers();
for (auto child : children)
insert_layers_to_selected_layers(child, selectedLayers);
}
else
selectedLayers->insert(const_cast<Layer*>(layer));
selectedLayers.insert(layer);
}
Doc* generate_sprite_sheet_from_params(
@ -222,12 +220,16 @@ Doc* generate_sprite_sheet_from_params(
SelectedLayers selLayers;
if (layerName != kSelectedLayers) {
// TODO add a getLayerByName
int i = sprite->allLayersCount();
for (Layer* layer : sprite->allLayers()) {
if (get_layer_path(layer) == layerName ) {
i--;
if (get_layer_path(layer) == layerName &&
(layerIndex == -1 || layerIndex == i)) {
if (layer->isGroup())
insertLayersToSelectedLayers(layer, &selLayers);
insert_layers_to_selected_layers(layer, selLayers);
else
selLayers.insert(const_cast<Layer*>(layer));
selLayers.insert(layer);
break;
}
}

View File

@ -100,12 +100,12 @@ do -- ExportSpriteSheet
0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,
})
local s = Sprite{ fromFile="sprites/groups4.aseprite" }
local s = Sprite{ fromFile="sprites/groups3abc.aseprite" }
local c = app.pixelColor.rgba(75, 105, 47)
app.command.ExportSpriteSheet {
type=SpriteSheetType.ROWS,
textureFilename="_test_export_spritesheet4.png",
layer="G1/G2/G3/b",
layer="b/b",
trim=true,
}
local i = Image{ fromFile="_test_export_spritesheet4.png" }

Binary file not shown.