mirror of
https://github.com/AquariaOSE/Aquaria.git
synced 2024-11-15 22:19:07 +00:00
SceneEditor: Add support for grid map dumping (in TGA format).
This allows reconstructing the map templates, which were never shipped with the game.
This commit is contained in:
parent
5c1169727c
commit
1ee532f39e
2 changed files with 30 additions and 0 deletions
|
@ -501,6 +501,7 @@ public:
|
||||||
|
|
||||||
void checkForRebuild();
|
void checkForRebuild();
|
||||||
void createAquarian();
|
void createAquarian();
|
||||||
|
void dumpObs();
|
||||||
|
|
||||||
DebugButton *btnMenu;
|
DebugButton *btnMenu;
|
||||||
protected:
|
protected:
|
||||||
|
|
|
@ -707,6 +707,8 @@ void SceneEditor::init()
|
||||||
|
|
||||||
addAction(MakeFunctionEvent(SceneEditor, createAquarian), KEY_F, 0);
|
addAction(MakeFunctionEvent(SceneEditor, createAquarian), KEY_F, 0);
|
||||||
|
|
||||||
|
addAction(MakeFunctionEvent(SceneEditor, dumpObs), KEY_F8, 0);
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
// OLD CRAP
|
// OLD CRAP
|
||||||
|
@ -3908,5 +3910,32 @@ void SceneEditor::prevEntityType()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void SceneEditor::dumpObs()
|
||||||
|
{
|
||||||
|
TileVector tv;
|
||||||
|
const uint32 A = 0xFF000000;
|
||||||
|
#define COL(c) (((0x ## c)) | A)
|
||||||
|
const uint32 coltab[5] =
|
||||||
|
{
|
||||||
|
COL(FFFFFF),
|
||||||
|
COL(FFFFFF),
|
||||||
|
COL(000000),
|
||||||
|
COL(FFFFFF),
|
||||||
|
COL(FFFFFF),
|
||||||
|
};
|
||||||
|
unsigned char *data = new unsigned char[MAX_GRID * MAX_GRID * sizeof(uint32)];
|
||||||
|
uint32 *ptr = (uint32*)data;
|
||||||
|
for(tv.y = MAX_GRID - 1; ; --tv.y)
|
||||||
|
{
|
||||||
|
for(tv.x = 0; tv.x < MAX_GRID; ++tv.x)
|
||||||
|
*ptr++ = coltab[game->getGrid(tv)];
|
||||||
|
if(tv.y == 0)
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
std::string outfn = dsq->getUserDataFolder() + "/griddump-" + game->sceneName + ".tga";
|
||||||
|
core->tgaSave(outfn.c_str(), MAX_GRID, MAX_GRID, 32, data);
|
||||||
|
dsq->screenMessage("Saved grid image to " + outfn);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#endif // AQUARIA_BUILD_SCENEEDITOR
|
#endif // AQUARIA_BUILD_SCENEEDITOR
|
||||||
|
|
Loading…
Reference in a new issue