diff --git a/Memory.xml b/Memory.xml
index 50f141d7f..2f704aa10 100644
--- a/Memory.xml
+++ b/Memory.xml
@@ -2148,6 +2148,10 @@
+
+
+
+
.-"""-.
' \
diff --git a/library/VersionInfoFactory.cpp b/library/VersionInfoFactory.cpp
index 9a242153a..ad6dcbf1f 100644
--- a/library/VersionInfoFactory.cpp
+++ b/library/VersionInfoFactory.cpp
@@ -572,9 +572,9 @@ void VersionInfoFactory::EvalVersion(string base, VersionInfo * mem)
v_descr & desc = knownVersions[base];
if (!desc.second)
{
- VersionInfo * newmem = new VersionInfo();
- ParseVersion(desc.first, newmem);
- desc.second = newmem;
+ VersionInfo * basemem = new VersionInfo();
+ ParseVersion(desc.first, basemem);
+ desc.second = basemem;
}
mem->copy(desc.second);
}
diff --git a/tools/supported/liquids.cpp b/tools/supported/liquids.cpp
index 714573f4c..d1878eabc 100644
--- a/tools/supported/liquids.cpp
+++ b/tools/supported/liquids.cpp
@@ -264,7 +264,7 @@ int main (int argc, char** argv)
z_levels = command == "" ? z_levels : atoi (command.c_str());
if(z_levels < 1) z_levels = 1;
delete brush;
- if(width == height == z_levels == 1)
+ if(width == 1 && height == 1 && z_levels == 1)
{
brushname="point";
}
@@ -348,16 +348,18 @@ int main (int argc, char** argv)
}
cout << "cursor coords: " << x << "/" << y << "/" << z << endl;
MapCache mcache(Maps);
- cout << "getting tiles from brush" << endl;
DFHack::DFCoord cursor(x,y,z);
coord_vec all_tiles = brush->points(mcache,cursor);
- cout << "doing things" << endl;
+ cout << "working..." << endl;
if(mode == "obsidian")
{
coord_vec::iterator iter = all_tiles.begin();
while (iter != all_tiles.end())
{
mcache.setTiletypeAt(*iter, 331);
+ DFHack::t_designation des = mcache.designationAt(*iter);
+ des.bits.liquid_type = DFHack::liquid_magma;
+ mcache.setDesignationAt(*iter, des);
iter ++;
}
}
@@ -411,12 +413,6 @@ int main (int argc, char** argv)
continue;
}
// if we are setting the levels to 0 or changing magma into water
- if(amount == 0 || des.bits.liquid_type == DFHack::liquid_magma && mode == "water")
- {
- // reset temperature to sane default
- mcache.setTemp1At(current,10015);
- mcache.setTemp2At(current,10015);
- }
if(setmode == "s.")
{
flow.flow_size = amount;
@@ -431,10 +427,24 @@ int main (int argc, char** argv)
if (flow.flow_size > amount)
flow.flow_size = amount;
}
- if(mode == "magma")
+ if(amount != 0 && mode == "magma")
+ {
flow.liquid_type = DFHack::liquid_magma;
- else if(mode == "water")
+ mcache.setTemp1At(current,12000);
+ mcache.setTemp2At(current,12000);
+ }
+ else if(amount != 0 && mode == "water")
+ {
flow.liquid_type = DFHack::liquid_water;
+ mcache.setTemp1At(current,10015);
+ mcache.setTemp2At(current,10015);
+ }
+ else if(amount == 0 && (mode == "water" || mode == "magma"))
+ {
+ // reset temperature to sane default
+ mcache.setTemp1At(current,10015);
+ mcache.setTemp2At(current,10015);
+ }
mcache.setDesignationAt(current,des);
}
seen_blocks.insert(mcache.BlockAt((*iter) / 16));
diff --git a/tools/supported/reveal.cpp b/tools/supported/reveal.cpp
index b2bb508c6..38c431ab0 100644
--- a/tools/supported/reveal.cpp
+++ b/tools/supported/reveal.cpp
@@ -112,7 +112,7 @@ int main (void)
cout << "Map revealed. The game has been paused for you." << endl;
cout << "Unpausing can unleash the forces of hell!" << endl << endl;
cout << "Press any key to unreveal." << endl;
- cout << "Close to keep the map revealed." << endl;
+ cout << "Close to keep the map revealed !!FOREVER!!" << endl;
cin.ignore();
cout << "Unrevealing... please wait." << endl;
// FIXME: do some consistency checks here!