--- a/QTfrontend/hwmap.cpp Thu Dec 09 22:50:16 2010 +0100
+++ b/QTfrontend/hwmap.cpp Thu Dec 09 22:51:07 2010 +0100
@@ -27,12 +27,13 @@
{
}
-void HWMap::getImage(std::string seed, int filter, MapGenerator mapgen, int maze_size)
+void HWMap::getImage(std::string seed, int filter, MapGenerator mapgen, int maze_size, const QByteArray & drawMapData)
{
m_seed = seed;
templateFilter = filter;
m_mapgen = mapgen;
m_maze_size = maze_size;
+ m_drawMapData = drawMapData;
Start();
}
@@ -62,6 +63,27 @@
SendIPC(QString("eseed %1").arg(m_seed.c_str()).toLatin1());
SendIPC(QString("e$template_filter %1").arg(templateFilter).toLatin1());
SendIPC(QString("e$mapgen %1").arg(m_mapgen).toLatin1());
- SendIPC(QString("e$maze_size %1").arg(m_maze_size).toLatin1());
+
+ switch (m_mapgen)
+ {
+ case MAPGEN_MAZE:
+ SendIPC(QString("e$maze_size %1").arg(m_maze_size).toLatin1());
+ break;
+
+ case MAPGEN_DRAWN:
+ {
+ QByteArray data = m_drawMapData;
+ while(data.size() > 0)
+ {
+ QByteArray tmp = data;
+ tmp.truncate(200);
+ SendIPC("edraw " + tmp);
+ data.remove(0, 200);
+ }
+ break;
+ }
+ default: ;
+ }
+
SendIPC("!");
}