Skip to content

Commit f2a3e8a

Browse files
committed
Project: Implemented tileset optimization on export as source file
1 parent 10a672c commit f2a3e8a

1 file changed

Lines changed: 19 additions & 1 deletion

File tree

project.cpp

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,9 +171,27 @@ int Project::ExportToSourceFile(QString fname, int export_flags)
171171
QList<Tile> out_map= QList<Tile>();
172172
if (editor_canvas) out_map= editor_canvas->tiles;
173173

174+
//Optimize data if necessary
175+
if (export_flags&Project::ExportOptimize)
176+
{
177+
switch ((export_flags>>Project::ExportFormat)&0b11)
178+
{
179+
case Project::ExportGBA4bpp>>Project::ExportFormat:
180+
out_tileset.tiles= out_tileset.Optimized(&out_map, Tileset::OptimizeWithFlip|Tileset::OptimizeWithPalette);
181+
break;
182+
case Project::ExportGBA8bpp>>Project::ExportFormat:
183+
out_tileset.tiles= out_tileset.Optimized(&out_map, Tileset::OptimizeWithFlip);
184+
break;
185+
case Project::ExportGBAAffine>>Project::ExportFormat:
186+
out_tileset.tiles= out_tileset.Optimized(&out_map, Tileset::OptimizeNone);
187+
break;
188+
default:
189+
break;
190+
}
191+
}
192+
174193
switch ((export_flags>>Project::ExportFormat)&0b11)
175194
{
176-
//This may be redundant, but I'm keeping it in case I want to add more formats in the future
177195
//NOTE: Assuming export_word_sz is 1 (byte) before normalization (that happens later)
178196
case Project::ExportGBA4bpp>>Project::ExportFormat:
179197
tiles_sz= out_tileset.tiles.count()/2;

0 commit comments

Comments
 (0)